Skip to content

feat(gates): T-036 phases 4-6 — effective-required, derived GateMode,…#73

Merged
beyondnetPeru merged 1 commit into
mainfrom
feat/t-036-4-effective-required
Jul 8, 2026
Merged

feat(gates): T-036 phases 4-6 — effective-required, derived GateMode,…#73
beyondnetPeru merged 1 commit into
mainfrom
feat/t-036-4-effective-required

Conversation

@beyondnetPeru

Copy link
Copy Markdown
Contributor

… Core-source seam

Completes the artifact-driven gate parametrization plan (ADR T-036 §6).

Phase 4 — Effective-required model (§2/§3): required evidence is the projection of the phase's Core artifacts with effectiveRequired = coreRequired OR tenantRequired. Core-required artifacts are locked; the tenant may raise a Core-optional one. Save persists the full effective set, falling back to raw tenant overrides when the Core profile is empty.

Phase 5 — Derived GateMode (§2.1): the SIMPLE/COMPLEX toggle is removed. Mode is now computed from the effective policy (required evidence, a blocking criterion, a multi-approver or multi-stage chain, or a required Core verdict → COMPLEX) and shown read-only; the derived value is sent in the Core payload.

Phase 6 — Core-source contract (§5, GAP-004): introduce IPhaseArtifactProfileSource as the seam for where the phase-artifact catalog comes from. Today the only implementation is the provisional StandInPhaseArtifactProfileSource (stamped core-standin); swap the single DI registration for a Core-sync source once Core publishes the catalog. Provenance is surfaced on the DTO and flagged in the editor.

Verified: tsc + eslint clean; dotnet build 0/0; 496/496 tests pass.

… Core-source seam

Completes the artifact-driven gate parametrization plan (ADR T-036 §6).

Phase 4 — Effective-required model (§2/§3): required evidence is the
projection of the phase's Core artifacts with effectiveRequired =
coreRequired OR tenantRequired. Core-required artifacts are locked; the
tenant may raise a Core-optional one. Save persists the full effective
set, falling back to raw tenant overrides when the Core profile is empty.

Phase 5 — Derived GateMode (§2.1): the SIMPLE/COMPLEX toggle is removed.
Mode is now computed from the effective policy (required evidence, a
blocking criterion, a multi-approver or multi-stage chain, or a required
Core verdict → COMPLEX) and shown read-only; the derived value is sent in
the Core payload.

Phase 6 — Core-source contract (§5, GAP-004): introduce
IPhaseArtifactProfileSource as the seam for where the phase-artifact
catalog comes from. Today the only implementation is the provisional
StandInPhaseArtifactProfileSource (stamped `core-standin`); swap the
single DI registration for a Core-sync source once Core publishes the
catalog. Provenance is surfaced on the DTO and flagged in the editor.

Verified: tsc + eslint clean; dotnet build 0/0; 496/496 tests pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@beyondnetPeru beyondnetPeru merged commit e23fbd6 into main Jul 8, 2026
3 checks passed
@beyondnetPeru beyondnetPeru deleted the feat/t-036-4-effective-required branch July 9, 2026 16:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant