Skip to content

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 16:45
· 17 commits to main since this release
c778994

1.1.0 — 2026-10-06

  • Preserve qualified symbol boundaries and import paths when resolving references; ambiguous candidates remain unresolved and inferred bindings retain RESOLVED evidence. Extraction cache v15 refreshes previously flattened targets.
  • Prefer exact implementation definitions for code-oriented queries, with scope and source metadata contributing to ranking.
  • Name communities from source modules and packages; reports separately orient production code, documentation, and tests/benchmarks/examples, with source links and explicit relationship evidence.
  • Propagate authoritative database decoding errors in analysis, clustering, hyperedge construction, and reports rather than silently discarding rows.
  • Add 24 reserved questions on pinned Requests and Commander sources, a bounded iterative search baseline, and separate retrieval/build cost and provenance records. The new corpus and methods have not been evaluated.
  • Simplify the README workflow and align architecture documentation with snapshot caching and reference evidence.
  • Speculative graph nodes no longer claim a source file. A stub or reference node exists precisely because no file defined the name, so it has no source locus; it previously borrowed whichever file referenced it first. That fabricated a file location for unresolved globals (a lone import rusqlite became health.rs -> <first file to mention rusqlite>), producing 743 phantom file-to-file dependencies on this repo, four file "cycles" that do not exist in the source, and a false File: line in explain. A whole-graph invariant pass clears stale loci on every run, so an incremental update heals graphs built by earlier versions. explain now reports (no source locus — unresolved name, no single owner) instead of naming a file that does not own the symbol.
  • Fewer false positives from test files. is_test_file did not recognise __tests__/, .test.ts, or .spec.ts, so JS/TS test helpers were scored as production code: on this repo a test-only assert() ranked as the #3 hub and test_hubs_skipped stayed 0. Hub detection, dead-code candidacy, and file-cycle inputs now use the same corrected matcher.
  • astria health --min-score <n> exits non-zero when the score is below n, so the command works as a CI gate; it previously always exited 0, which made the obvious threshold check silently never fire.
  • astria merge-gate checks the extraction ruleset (extraction-current) alongside age and HEAD coverage. A graph reused from an older extraction cache passes both of those while reporting facts the current build would extract differently; the gate now fails and points at astria update ..
  • Ranking surfaces ignore non-code nodes. Hub concentration, file_cycles, report "Key Files", "surprising connections", and the local embedding layer all exclude speculative nodes, so similarity between two unresolved bare names is no longer presented as structure.
  • Ground-truth note: measured on this repository, the fix removes 743 fabricated file dependencies, 4 false cycles, and 1,302 similar_to edges that joined two non-symbols; retrieval quality on the golden set is unchanged by these edits (MRR 0.5979 before and after, byte-identical), so this is a correctness and honesty change, not a ranking change.

What's Changed

  • chore(release): lockfile entry for win32-x64-msvc@1.0.12 by @erictong0602 in #116
  • fix(release): restore musl cdylib under rustc 1.99 (-crt-static) + homebrew 1.0.12 by @erictong0602 in #117
  • chore(release): 1.1.0 — graph-evidence honesty and CI gates by @erictong0602 in #118

Full Changelog: v1.0.12...v1.1.0