- A Move package move-flow cannot build no longer aborts the whole analyze:
it is skipped with a persistent warning naming the package and the first
compiler diagnostic (GITNEXUS_MOVE_STRICT=1 restores the fatal behavior).
Previously one broken test fixture among aptos-core's 479 packages killed
the entire run at 60%.
- "_" placeholder named addresses in Move.toml are caught pre-flight with an
actionable message instead of a guaranteed compile-and-fail (move-flow has
no dev-mode build).
- After every facts ingestion the package build status is probed: builds with
compiler errors emit a degraded-fidelity warning, because move-flow
silently omits acquiresInferred from erroring builds while returning
otherwise complete facts (aptos-labs/aptos-ai#18 #19; tracking #2659).
- Warnings ride a new language-neutral ingestWarnings channel
(StandaloneIngestOutput -> PipelineResult -> AnalyzeResult -> CLI summary),
mirroring the persistent FTS warning so they survive the progress bar.
- README: "Analyzing real-world Move repositories" section documenting the
new behavior, GITNEXUS_MOVE_STRICT, .gitnexusignore scoping, and the
GITNEXUS_MOVE_FLOW_TIMEOUT_MS knob for cold git-dependency builds.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Avoid repeated install attempts and prove compiler-backed indexes remain intact when move-flow disappears. Align docs and CI metadata with managed runtime behavior.
Co-authored-by: Cursor <cursoragent@cursor.com>
Verify managed installs against release checksums, serialize them with
a cross-process lock, and record the compiler identity that produced
the Move graph so a compiler change forces a full rebuild. Fail closed
when the existing Move graph needs a compiler that is unavailable.
Replace the npm-postinstall installer (scripts/install-move-flow.cjs)
with analyze-time provisioning: resolve $MOVE_FLOW, then a verified
user cache under ~/.gitnexus/tools/move-flow, then $PATH, then a
one-time download of the pinned release verified against SHA256SUMS.
Installs are serialized across processes via a lease/heartbeat lock
and staged into place atomically.
- Gate the client probe on the pinned release major (prerelease
suffixes accepted); drop the legacy vendor/move-flow bundled path.
- Honor GITNEXUS_SKIP_MOVE_FLOW and GITNEXUS_SKIP_OPTIONAL_GRAMMARS;
do not retry a failed install within the same process.
- Consolidate node-table DDL, CSV headers, row encoding, and COPY
column lists into lbug/node-table-layout.ts (replaces
move-columns.ts); align boolean CSV encoding with the incremental
CREATE path.
- CI: cache ~/.gitnexus/tools/move-flow keyed to the pinned version;
require provisioning on the shard that owns the live Move suite.
- Docker: install unzip for on-demand extraction; the image no longer
ships a move-flow binary.