Quickstart
🟡 Partial — The e2e arc runs on the repository's fixtures (Python+DVC); the resulting Annex IV is still partial.
This quickstart runs the loan example bundled in the repository: a high-risk credit classifier with a fairness control (disparate impact) whose first version fails the gate and whose treatment — promoted as a commit — closes it. The arc materialises the ISO 23894 §6.4–§6.5 risk treatment loop with signed evidence (ECDSA-P256+DSSE+in-toto).
Requirements
Section titled “Requirements”seibuilt (Installation).uv(Python ≥ 3.11) anddvc ≥ 3installed and on the PATH.- The monorepo cloned locally.
Fastest path: run the integration test
Section titled “Fastest path: run the integration test”The loan project files live in crates/seigarrena-cli/tests/resources/loan/. The integration harness (crates/seigarrena-cli/tests/scenarios.rs) sets up the project in a temporary directory, initialises the uv environment, and runs the full arc:
cargo test -p seigarrena-cli --test scenarios loan -- --nocaptureThe test verifies all arc steps (red gate → treatment → green gate → conformance → cycle reconstruction) and fails if any invariant is not met. This is the canonical way to confirm that the installation works.
The arc step by step
Section titled “The arc step by step”The following steps are exactly what the test above runs; you can reproduce them manually on the crates/seigarrena-cli/tests/resources/loan/ directory in a temporary copy.
-
Compile the risk program to OSCAL
Terminal sei compileConverts the risk program — the
risk:section ofsei.yaml(5 risks, 16 measures, Art. 9) — into the OSCAL assessment plan (10 ex-ante controls). Writes the file declared in theoscal.assessment_planfield ofsei.yaml. -
Run V1 — red gate
Terminal sei runsei runinvokesdvc repro(pipelinefeaturize → evaluate), measures the 10 ex-ante controls withventuralitica-sdk, and applies the risk gate. Produces.sei/bundle.json(signed) andsei.lock.The blocking control
unfair-credit-exclusionfails: the gender disparate impact measures above the 0.03 threshold (EU AI Act Art. 10; DORA Art. 6).sei runexits with a non-zero code. The bundle is still signed and anchored. -
Explore the treatment candidate (without committing)
Terminal cp train_mitigated.py train.pydvc exp rundvc exp showdvc exp runexecutes V2 (ExponentiatedGradient + DemographicParity mitigation) as a DVC experiment without committing.dvc exp showcompares the candidate metric against the V1 baseline and confirms that the disparate impact would close the gate. -
Commit the treatment (V2)
Terminal git add train.pygit commit -m "T1: treatment — promote V2 (mitigated train.py, candidate that closes the gate)"The commit is the ISO 23894 §6.5 treatment: a versioned change to which
sei reconstructcan attribute the FAIL→PASS arc. Onlytrain.pychanges;featurize.py, the data and the classification are reused (type-B drift, Art. 15). -
Run V2 — green gate
Terminal sei rundvc reprodetects thattrain.py(a dependency of theevaluatestage) changed, recomputes only that stage, and produces the newmetrics.jsonanddvc.lock. Theunfair-credit-exclusioncontrol passes (disparate impact ≈ 0.015 < 0.03).sei runexits 0. -
Project conformance onto the applicable standards
Terminal sei conformanceThe same signed bundle is projected onto the clause catalogues of prEN 18228 (priority) and ISO 23894 and emits one report per standard (COVERED / PARTIAL / GAP per clause).
-
Record management approval
Terminal sei approve --by "Jane Roe <jane@org>"Creates an empty git commit with a
Sei-Approved-by:trailer. The act is timestamped and attributed;sei reconstructpicks it up as ISO 42001 §6.1.3 approval. -
Reconstruct the treatment cycle
Terminal sei reconstruct --outDeterministic replay of the bundle’s git history. Produces
.sei/reconstruct.json(signed): the complete per-risk cycle (①identification → ②analysis → ③evaluation → ④treatment → ⑤residual). -
Commit the signed evidence
Terminal git add .sei/git commit -m "evidence: cycle T1 (signed bundle + conformance + reconstruction)"Depositing the signed evidence in the repository is the act the cloud plane reads to assemble and render the Annex IV (Art. 11). The engine does not emit the Annex IV: the cloud builds it from the signed
bundle.json.
Artifacts produced
Section titled “Artifacts produced”| Artifact | Produced by | Contents |
|---|---|---|
.sei/bundle.json + .sig | sei run | Signed evidence (controls, treatments, risk analysis, dvc.lock) |
sei.lock | sei run | Freshness anchor (pipeline phase hashes) |
.sei/conformance/*.json + .sig | sei conformance --out | Per-standard conformance reports (prEN 18228, ISO 23894) |
.sei/reconstruct.json + .sig | sei reconstruct --out | ISO 23894 treatment cycle reconstructed per risk |
The Annex IV (Art. 11) is not an engine artifact: the cloud plane assembles and renders it from the signed bundle.json. See View the Annex IV.