Skip to content

[Bug]: 3.17.0: check <ref> reports [FAIL] signatures for every symbol in files added since <ref> #2665

Description

@carlos-alm

Description

check <ref> reports [FAIL] signatures for symbols that live in files added since <ref>. A brand-new file has no previous signature to compare against, so every exported function in it is flagged as a signature break. On a branch that adds files this makes the diff-predicate mode of check fail unconditionally, which defeats its use as a CI gate.

Steps to Reproduce

On optave/core-orchestrator-svc at commit ca32aee92 (branch claude/opus-sonnet-orchestration-94be94, which adds 33 files relative to origin/main):

npx -y @optave/codegraph@3.17.0 build --no-incremental
npx -y @optave/codegraph@3.17.0 check                 # manifesto rules only: 0 FAIL, 345 WARN (complexity thresholds), fine
npx -y @optave/codegraph@3.17.0 check origin/main     # diff predicates vs the base branch
git diff --name-status origin/main...HEAD | grep '^A'  # the added files

Minimal shape: any repo, create a branch, add one new file exporting a function, codegraph build, codegraph check <base>.

Expected Behavior

signatures compares the signature of symbols that exist on both sides and reports only real changes. Symbols in files with git status A (added) have no baseline and should be skipped, or reported under an "added" heading that is not a failure.

Actual Behavior

check origin/main prints [FAIL] signatures listing 21 symbols. Cross-checking each symbol's file against git diff --name-status origin/main...HEAD shows all 21 are in files marked A; none is a modified signature in a pre-existing file. check with no ref (manifesto rules only) passes on the same tree.

Codegraph Version

3.17.0 (npx -y @optave/codegraph@3.17.0)

Node.js Version

v22.18.0

Operating System

Windows 11 Pro 10.0.26200 (x64), Git Bash shell

Parser Engine

native (Active engine : native (v3.17.0))

Additional Context

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingciContinuous integration / builddogfoodFound during dogfooding

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions