Skip to content

Ingest artifacts ​

Scan output is versioned under each scanId on disk:

text
scans/{scanId}/

Layout (summary) ​

text
{scanId}/
  manifest.json
  reports/
    technical-graph.json      # merged graph (query source of truth)
    feature-resolution.json
    fe-be-bridge.jsonl
  repos/{repoKey}/
    files.jsonl
    technical-graph-partial.json
    …
  ai/
    feature-display-titles.json
    feature-insights/{featureId}.json
    endpoint-qa/{endpointId}.json
    …

Scan pipeline ​

text
AST per repo → merge → optional helix-agent AI → scans/<scanId>/

Per-repo AST output is stored as repos/{repoKey}/merge-input.json. The merge step runs over all merge inputs for that scanId: deduplication, FE↔BE bridge resolution, CALLS_REMOTE chains, optional feature YAML binding, then reports/technical-graph.json.

Merge scope ​

The merged graph includes only the --roots / --repo-path directories you pass. Cross-repo CALLS_REMOTE edges need both sides in the same scan — add related FE/BE paths explicitly. See NPM client — multi-repo local scans.

Version fields ​

manifest.json and technical-graph.json carry:

FieldUse
ingestPipelineVersionAST / merge software version (independent of @igentify/helix-flowgraph npm semver)
scanIdPin queries and comparisons to one materialized snapshot
parentScanIdPresent on incremental runs that built on a previous scan

Incremental scans ​

Per-file fingerprints allow re-parsing only changed paths on new commits. Shared barrel or parser version bumps may still require full repo rescans.

CLI ​

bash
npm run ingest -- --roots ~/code/igentify/ng-access-service ...

See repo docs/Ingest-artifacts.md for the full contract (manifest version, JSONL record types).

Flowgraph