ADAPTIVE-WP-0009: correct stale completion note; answer inbound
T02-T04 were completed 2026-08-18; the draft-8 outcome section still said they were outstanding. Replies sent to railiance-platform (section 11 correction accepted; tier-P-floor trigger accepted as ours, narrowing our earlier blanket monitoring caveat) and tenant-engine (grouping unaffected, Q5 ownership agreed, plan-derived ceiling interface welcomed as new scope). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
4076700fad
commit
29223d39b7
1 changed files with 77 additions and 20 deletions
|
|
@ -4,23 +4,25 @@ type: workplan
|
||||||
title: "Tenancy Posture alignment — tier assurance claims"
|
title: "Tenancy Posture alignment — tier assurance claims"
|
||||||
domain: financials
|
domain: financials
|
||||||
repo: adaptive-pricing
|
repo: adaptive-pricing
|
||||||
status: active
|
status: finished
|
||||||
owner: codex
|
owner: codex
|
||||||
topic_slug: helix-forge
|
topic_slug: helix-forge
|
||||||
created: "2026-08-17"
|
created: "2026-08-17"
|
||||||
updated: "2026-08-17"
|
updated: "2026-08-18"
|
||||||
state_hub_workstream_id: "ac4f4540-75a1-4dbf-9cb7-57e5be97499f"
|
state_hub_workstream_id: "ac4f4540-75a1-4dbf-9cb7-57e5be97499f"
|
||||||
---
|
---
|
||||||
|
|
||||||
# Tenancy Posture alignment — tier assurance claims
|
# Tenancy Posture alignment — tier assurance claims
|
||||||
|
|
||||||
Align `adaptive-pricing` with **NetKingdom Tenancy Posture v0.1**
|
Align `adaptive-pricing` with **NetKingdom Tenancy Posture v0.1**
|
||||||
(`net-kingdom/canon/standards/tenancy-posture_v0.1.md`, proposed / draft-5),
|
(`net-kingdom/canon/standards/tenancy-posture_v0.1.md`, proposed / draft-8),
|
||||||
raised by `rapp-postgres` on 2026-08-17.
|
raised by `rapp-postgres` on 2026-08-17.
|
||||||
|
|
||||||
The framework names this repo in three places: publish a posture vector
|
The framework names this repo in three places: publish a posture vector
|
||||||
(§20.2), map plan tiers to minimum levels jointly with `tenant-engine` (§19 Q5),
|
(§20.2), map plan tiers to minimum levels jointly with `tenant-engine` (§19 Q5),
|
||||||
and co-sign placement policy ownership with `railiance-platform` (§8.2 / Q2).
|
and own the typed tier constraints that `railiance-platform` reconciles during
|
||||||
|
placement (§8.2). The earlier standing co-signature proposal was declined and
|
||||||
|
is no longer the policy.
|
||||||
|
|
||||||
## Position
|
## Position
|
||||||
|
|
||||||
|
|
@ -78,6 +80,29 @@ guarantee therefore depends on two declarations, not one — the provider's
|
||||||
reachability and the consuming service's own level. T02's constraint artifact
|
reachability and the consuming service's own level. T02's constraint artifact
|
||||||
must reference both or it will validate against half the picture.
|
must reference both or it will validate against half the picture.
|
||||||
|
|
||||||
|
## Draft-8 outcome (2026-08-17)
|
||||||
|
|
||||||
|
All six surviving findings were adopted, with one useful refinement to finding
|
||||||
|
4: no record is a copied derivative. The tier definition is authoritative for
|
||||||
|
its typed minimum and wording; the service declaration is authoritative for
|
||||||
|
current posture; the provider declaration is authoritative for available
|
||||||
|
infrastructure. Approval joins them and fails closed on stale or missing input.
|
||||||
|
|
||||||
|
The framework now has V0–V4 availability, sanctioned honest language for
|
||||||
|
E3/P2/R2/V1, an R-plus-P rule for retention promises, P2 or an enforceable
|
||||||
|
governor for performance-differentiated tiers, and downgrade propagation to
|
||||||
|
dependent tier owners. §8.2 records the declined co-signature and its typed
|
||||||
|
constraint replacement.
|
||||||
|
|
||||||
|
T01 is complete in root `tenancy.yaml`. It declares the local observatory at
|
||||||
|
I0/A0/E0 and P/R `n/a`, rather than using `n/a` to hide its unauthenticated
|
||||||
|
single-user HTTP surface. T06 is complete because the amendments are in
|
||||||
|
draft-8. T02–T04 were completed on 2026-08-18: the typed `assurance_claims`
|
||||||
|
block, the hard boundary constraint and the tier-definition approval gate are
|
||||||
|
all in place, with the suite green. No current model carries an assurance
|
||||||
|
claim, so the absence is a declared capability gap rather than a live
|
||||||
|
over-claim.
|
||||||
|
|
||||||
## Draft-6 update (2026-08-17)
|
## Draft-6 update (2026-08-17)
|
||||||
|
|
||||||
The framework moved to **draft-6** (`net-kingdom` commit `2744ce7`) after this
|
The framework moved to **draft-6** (`net-kingdom` commit `2744ce7`) after this
|
||||||
|
|
@ -160,7 +185,7 @@ Findings 6–7 are new, from draft-6 itself.
|
||||||
|
|
||||||
```task
|
```task
|
||||||
id: ADAPTIVE-WP-0009-T01
|
id: ADAPTIVE-WP-0009-T01
|
||||||
status: todo
|
status: done
|
||||||
priority: high
|
priority: high
|
||||||
state_hub_task_id: "870c32dc-89dd-415f-b45f-f9484dd5119b"
|
state_hub_task_id: "870c32dc-89dd-415f-b45f-f9484dd5119b"
|
||||||
```
|
```
|
||||||
|
|
@ -168,7 +193,7 @@ state_hub_task_id: "870c32dc-89dd-415f-b45f-f9484dd5119b"
|
||||||
Publish `adaptive-pricing`'s posture vector per §5 / §20.2, declared in-repo
|
Publish `adaptive-pricing`'s posture vector per §5 / §20.2, declared in-repo
|
||||||
(Decision 5.1).
|
(Decision 5.1).
|
||||||
|
|
||||||
The honest answer is that the five ladders do not fit: this repo is a
|
The honest answer is that the datastore ladders do not fit: this repo is a
|
||||||
design-time analysis and definition surface with **no runtime multi-tenant
|
design-time analysis and definition surface with **no runtime multi-tenant
|
||||||
datastore**. §3.3 scopes the P and R ladders to "a service's primary datastore";
|
datastore**. §3.3 scopes the P and R ladders to "a service's primary datastore";
|
||||||
adaptive-pricing has none. It does hold customer-attributable commercial data
|
adaptive-pricing has none. It does hold customer-attributable commercial data
|
||||||
|
|
@ -176,18 +201,17 @@ adaptive-pricing has none. It does hold customer-attributable commercial data
|
||||||
Coulomb proving ground — which is a data-handling fact worth stating, and not a
|
Coulomb proving ground — which is a data-handling fact worth stating, and not a
|
||||||
tenancy posture.
|
tenancy posture.
|
||||||
|
|
||||||
Declare `not-applicable` per axis with reasoning rather than forcing a row of
|
Completed in `tenancy.yaml`. P and R are `n/a` because there is no runtime
|
||||||
zeros. §20.2 invites exactly this: "if a repo cannot express itself in these five
|
datastore. I/A/E/V are zero with reasons because the local observatory HTTP
|
||||||
ladders, the ladders are wrong and this document changes, not the repo." Report
|
surface exists and has no authentication, authorization, tenant enforcement or
|
||||||
the finding as the framework asked to have it reported, and propose a
|
availability position. A repo-level row of `n/a` would have concealed that
|
||||||
`no-runtime-datastore` declaration form so other design-time repos are not
|
surface.
|
||||||
pushed into a misleading `P0 R0`.
|
|
||||||
|
|
||||||
## Extend The Canonical Schema With Assurance Claims
|
## Extend The Canonical Schema With Assurance Claims
|
||||||
|
|
||||||
```task
|
```task
|
||||||
id: ADAPTIVE-WP-0009-T02
|
id: ADAPTIVE-WP-0009-T02
|
||||||
status: todo
|
status: done
|
||||||
priority: high
|
priority: high
|
||||||
state_hub_task_id: "4420edb0-c9ea-4d2c-850e-2435cbd57f34"
|
state_hub_task_id: "4420edb0-c9ea-4d2c-850e-2435cbd57f34"
|
||||||
```
|
```
|
||||||
|
|
@ -197,7 +221,7 @@ Add an **optional** `assurance_claims` block to the canonical pricing schema
|
||||||
|
|
||||||
Shape: claim kind (`isolation` | `availability` | `retention` | `performance`),
|
Shape: claim kind (`isolation` | `availability` | `retention` | `performance`),
|
||||||
customer-facing wording, the minimum levels it requires
|
customer-facing wording, the minimum levels it requires
|
||||||
(`{I,A,E,P,R}` — plus availability once §11.3's vocabulary exists), the
|
(`{I,A,E,P,R,V}`), the
|
||||||
delivering service, and an evidence reference.
|
delivering service, and an evidence reference.
|
||||||
|
|
||||||
Constraints:
|
Constraints:
|
||||||
|
|
@ -209,11 +233,17 @@ Constraints:
|
||||||
- Do not extend `commitments` for this. A commitment is something the customer
|
- Do not extend `commitments` for this. A commitment is something the customer
|
||||||
owes; an assurance claim is something we owe them.
|
owes; an assurance claim is something we owe them.
|
||||||
|
|
||||||
|
Completed 2026-08-18. `PricingModel.assurance_claims` is optional and defaults
|
||||||
|
to an empty tuple, preserving every existing silent tier. The validator checks
|
||||||
|
claim identity, kind, customer wording, typed in-range axis minima, delivering
|
||||||
|
service, evidence, erasure horizon and mechanism. The canonical shape and its
|
||||||
|
definition-time semantics are documented in `docs/PricingModelSchema.md`.
|
||||||
|
|
||||||
## Add Boundary-Engine Validation For Claims
|
## Add Boundary-Engine Validation For Claims
|
||||||
|
|
||||||
```task
|
```task
|
||||||
id: ADAPTIVE-WP-0009-T03
|
id: ADAPTIVE-WP-0009-T03
|
||||||
status: todo
|
status: done
|
||||||
priority: high
|
priority: high
|
||||||
state_hub_task_id: "96c3340d-2429-4901-800c-2c7144ab14f4"
|
state_hub_task_id: "96c3340d-2429-4901-800c-2c7144ab14f4"
|
||||||
```
|
```
|
||||||
|
|
@ -234,11 +264,17 @@ Each failure must explain which axis and which framework section it answers to.
|
||||||
A validator that says "non-conformant" without naming the axis reproduces the
|
A validator that says "non-conformant" without naming the axis reproduces the
|
||||||
conflation §3 exists to end.
|
conflation §3 exists to end.
|
||||||
|
|
||||||
|
Completed 2026-08-18. The hard `assurance-claims` boundary constraint is silent
|
||||||
|
for tiers without claims and produces axis- and section-specific failures for
|
||||||
|
the E4/P3 coupling, shared-substrate erasure horizons, R4 wording,
|
||||||
|
key-destruction language, performance governors and availability failure scope.
|
||||||
|
Focused and full-suite regression coverage is green.
|
||||||
|
|
||||||
## Gate Claims At Tier Definition
|
## Gate Claims At Tier Definition
|
||||||
|
|
||||||
```task
|
```task
|
||||||
id: ADAPTIVE-WP-0009-T04
|
id: ADAPTIVE-WP-0009-T04
|
||||||
status: todo
|
status: done
|
||||||
priority: medium
|
priority: medium
|
||||||
state_hub_task_id: "9821bc6b-d8ec-41e2-b4ea-ebf1f2dc91a6"
|
state_hub_task_id: "9821bc6b-d8ec-41e2-b4ea-ebf1f2dc91a6"
|
||||||
```
|
```
|
||||||
|
|
@ -252,11 +288,18 @@ rule that customer-visible pricing changes are never autonomous.
|
||||||
Explicitly **not** per-campaign review. §11.3 says the review happens at tier
|
Explicitly **not** per-campaign review. §11.3 says the review happens at tier
|
||||||
definition; a gate that fires more often than that will be worked around.
|
definition; a gate that fires more often than that will be worked around.
|
||||||
|
|
||||||
|
Completed 2026-08-18. `assess_tier_definition_assurance()` compares the new
|
||||||
|
tier definition with its previously approved definition and emits blocking
|
||||||
|
approval requirements only for added, changed or removed claims. Each gate
|
||||||
|
carries the claim's evidence reference. An unchanged definition proceeds, and
|
||||||
|
the API explicitly warns publication/campaign callers not to turn it into a
|
||||||
|
recurring gate.
|
||||||
|
|
||||||
## Answer Q5 And Q2
|
## Answer Q5 And Q2
|
||||||
|
|
||||||
```task
|
```task
|
||||||
id: ADAPTIVE-WP-0009-T05
|
id: ADAPTIVE-WP-0009-T05
|
||||||
status: wait
|
status: done
|
||||||
priority: high
|
priority: high
|
||||||
state_hub_task_id: "3aa82ae3-4a79-4a18-a74e-668e94652ecd"
|
state_hub_task_id: "3aa82ae3-4a79-4a18-a74e-668e94652ecd"
|
||||||
```
|
```
|
||||||
|
|
@ -264,8 +307,8 @@ state_hub_task_id: "3aa82ae3-4a79-4a18-a74e-668e94652ecd"
|
||||||
Blocked on T02/T03 for Q5, and on Bernd's decision for Q2.
|
Blocked on T02/T03 for Q5, and on Bernd's decision for Q2.
|
||||||
|
|
||||||
**Q5 — tier → minimum level mapping,** jointly with `tenant-engine`. Answerable
|
**Q5 — tier → minimum level mapping,** jointly with `tenant-engine`. Answerable
|
||||||
for isolation and retention once T02/T03 land. **Not answerable for
|
for isolation, retention and availability once T02/T03 land. V now supplies the
|
||||||
availability** until finding 1 is resolved; say so rather than inventing a level.
|
availability vocabulary; the typed mapping still waits on implementation.
|
||||||
`tenant-engine` owns which plan a tenant holds; this repo owns the terms — state
|
`tenant-engine` owns which plan a tenant holds; this repo owns the terms — state
|
||||||
that split when replying so the seam is recorded.
|
that split when replying so the seam is recorded.
|
||||||
|
|
||||||
|
|
@ -294,11 +337,22 @@ a repo with no on-call. Propose it is railiance-platform's.
|
||||||
|
|
||||||
Reply on the State Hub to message `6d5293ca-4f69-46a6-a78e-b469e626b83d`.
|
Reply on the State Hub to message `6d5293ca-4f69-46a6-a78e-b469e626b83d`.
|
||||||
|
|
||||||
|
Completed 2026-08-18. Q5 is implemented as the typed `assurance_claims`
|
||||||
|
artifact: adaptive-pricing owns the authoritative tier wording and minima;
|
||||||
|
tenant-engine owns assignment of a tenant to the tier id and does not copy the
|
||||||
|
terms; railiance-platform joins current service/provider declarations during
|
||||||
|
placement reconciliation. The current three Coulomb tiers remain explicitly
|
||||||
|
silent and therefore define no minima. Q2 remains declined: placement has one
|
||||||
|
owner and a machine-enforced artifact boundary, not a nominal co-signature.
|
||||||
|
railiance-platform owns trigger monitoring because adaptive-pricing has no
|
||||||
|
runtime/on-call surface. The implementation answer was sent on State Hub after
|
||||||
|
the full suite passed (54 tests).
|
||||||
|
|
||||||
## Contribute Framework Amendments Back
|
## Contribute Framework Amendments Back
|
||||||
|
|
||||||
```task
|
```task
|
||||||
id: ADAPTIVE-WP-0009-T06
|
id: ADAPTIVE-WP-0009-T06
|
||||||
status: todo
|
status: done
|
||||||
priority: medium
|
priority: medium
|
||||||
state_hub_task_id: "489cffb7-9ec3-4335-a93c-0b276a843f8d"
|
state_hub_task_id: "489cffb7-9ec3-4335-a93c-0b276a843f8d"
|
||||||
```
|
```
|
||||||
|
|
@ -336,3 +390,6 @@ Proposed amendments:
|
||||||
|
|
||||||
Route via `policy-nexus` if it owns canon publication; otherwise direct to
|
Route via `policy-nexus` if it owns canon publication; otherwise direct to
|
||||||
`rapp-postgres` as the raising agent and `net-kingdom` as canon owner.
|
`rapp-postgres` as the raising agent and `net-kingdom` as canon owner.
|
||||||
|
|
||||||
|
Completed in NetKingdom draft-8. All surviving findings were incorporated;
|
||||||
|
finding 6 remains withdrawn as resolved by draft-7.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue