ArchSig Manual

Run the smallest useful ArchSig path first.

The first useful ArchSig session scans a fixture, validates the Sig0 output, scans the repository, and checks whether unmeasured axes are being preserved instead of silently treated as zero.

Fixture scan

Begin with the minimal fixture so the output shape is known before running against an active repository.

Fixture scan
cargo run --manifest-path tools/archsig/Cargo.toml -- \
  --root tools/archsig/tests/fixtures/minimal \
  --policy tools/archsig/tests/fixtures/minimal/policy_measured_zero.json \
  --runtime-edges tools/archsig/tests/fixtures/minimal/runtime_edges.json \
  --out .lake/sig0-fixture.json

Validate Sig0

Validation checks the component list, dependency edge closure, external targets, and policy metric status in an existing Sig0 JSON file. It does not rescan source files.

Validation report
cargo run --manifest-path tools/archsig/Cargo.toml -- validate \
  --input .lake/sig0-fixture.json \
  --out .lake/sig0-fixture-validation.json \
  --universe-mode local-only

Repository scan

A repository scan writes Sig0 for the current checkout. Keep policy and runtime evidence explicit when those axes matter; omitted inputs can leave placeholder values with unmeasured status.

Current repository
cargo run --manifest-path tools/archsig/Cargo.toml -- \
  --root . \
  --out .lake/sig0.json

Python scan

Python mode extracts import and from ... import ... edges with the standard AST parser. Dynamic import, plugin loading, and framework conventions remain boundary items.

Python repository
cargo run --manifest-path tools/archsig/Cargo.toml -- \
  --language python \
  --root path/to/repository \
  --source-root src \
  --package-root src \
  --out .lake/python-sig0.json

First reading

Do not read the numeric signature alone. Read metricStatus, unmeasuredAxes, validation status, and non-conclusions before deciding whether an axis is a measured zero, measured nonzero, unmeasured, or out of scope.

A placeholder value of zero is not evidence that the risk is zero unless the corresponding metric status says it was measured.

After the first run

Getting started deliberately stops at the Core surface. Move to Review only after Sig0 and validation output are readable; move to SFT forecasting only when the input artifact and bounded horizon are explicit; move to Operational feedback only when outcome records and privacy boundaries are available.

  • Review surface Use AIR, theorem precondition checks, Feature Extension Report, policy decision, and PR comment output for PR review cues.
  • SFT surface Use sft-forecast for bounded report projection, not point prediction or causal proof.
  • Operational surface Use datasets and B10 artifacts for calibration and feedback, not theorem promotion.