Declare the tenancy posture vector (AUDIT-WP-0008-T01).
Written against draft-7, which landed after the task was drafted and moved the target. Decision 5.4 fixes the location at tenancy.yaml in the repo root rather than docs/, and fixes the schema: current, target, reviewed, gap, placement_exceptions, service_class, per-path detail, provider block. Declares I1 A2 E1 P1 R1. E is quoted at 1 although T04 put the E2 mechanism on both paths, because §13.2 states a passing CI run is not E2 evidence -- the artifact is adversarial, compares separate tenant contexts and carries a review date. Our cross-tenant tests are mechanical, so under §13.1 the level is not claimable until T05. The mechanism is recorded in paths.E and the reason in gap.E. Claiming E2 off unit tests would be the overclaim §6 prohibits, and refusing that reasoning is what found the read-path defect. R stays at 1: R2 needs backupRetentionDays in rapp-postgres's consumer file, requested in T02 and not ours to declare. Two additions draft-7 forced. A credentials gap under Decision 9.2 -- our own finding, adopted as a rule, and it binds us: ingest credentials are static long-lived bearer tokens, declared as a stated gap rather than a silent exclusion. And a provides block under Decision 5.5, declaring what a sender can reach through this service: E2 now, E3 pending ADR-0003, E4 and R4 unreachable. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
e1402b3033
commit
a2d84bdd9b
5 changed files with 205 additions and 15 deletions
|
|
@ -90,6 +90,16 @@ consumer_needs:
|
|||
requested_extensions:
|
||||
- data.archive sink if events must survive past the 30-day backup window
|
||||
feedback: []
|
||||
tenancy_posture:
|
||||
declared_at: tenancy.yaml
|
||||
framework: net-kingdom/canon/standards/tenancy-posture_v0.1.md (draft-7)
|
||||
current: I1 A2 E1 P1 R1
|
||||
target: I1 A2 E3 P1 R2
|
||||
provides_reachable:
|
||||
E2: now
|
||||
E3: not yet — needs rapp-postgres ADR-0003 GUC contract; target 2027-03-31
|
||||
E4: unreachable — one database, one runtime credential, no per-tenant substrate
|
||||
R4: unreachable by design — see Decision 4.5.3 and docs/erasure-and-audit.md
|
||||
known_deviations:
|
||||
- no data.archive sink
|
||||
- tamper_evidence is a hash chain plus external head, not WORM
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue