Review remaining ceiling work and record contract blockers
All checks were successful
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Successful in 2s

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e76a-f84c-7fb2-8309-fdbddf620a43
This commit is contained in:
codex 2026-09-28 11:51:44 +02:00
parent fe280e83da
commit 0ddf012f48
4 changed files with 47 additions and 10 deletions

View file

@ -16,9 +16,9 @@
| workplan | ADAPTIVE-WP-0007 | finished | — | workplans/ADAPTIVE-WP-0007-provider-abstraction-and-stripe-publication.md |
| workplan | ADAPTIVE-WP-0008 | finished | — | workplans/ADAPTIVE-WP-0008-governance-and-recommendation-workflows.md |
| workplan | ADAPTIVE-WP-0009 | finished | — | workplans/ADAPTIVE-WP-0009-tenancy-posture-alignment.md |
| workplan | ADAPTIVE-WP-0010 | proposed | — | workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md |
| workplan | ADHOC-2026-07-02 | finished | — | workplans/ADHOC-2026-07-02.md |
| workplan | ADHOC-2026-07-03 | finished | — | workplans/ADHOC-2026-07-03.md |
| workplan | ADAPTIVE-WP-0010 | blocked | — | workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md |
| workplan | ADAPTIVE-WP-ADHOC-2026-07-02 | finished | — | workplans/ADHOC-2026-07-02.md |
| workplan | ADAPTIVE-WP-ADHOC-2026-07-03 | finished | — | workplans/ADHOC-2026-07-03.md |
| task | ADAPTIVE-WP-0001-T01 | done | — | workplans/ADAPTIVE-WP-0001-statehub-bootstrap.md |
| task | ADAPTIVE-WP-0001-T02 | done | — | workplans/ADAPTIVE-WP-0001-statehub-bootstrap.md |
| task | ADAPTIVE-WP-0001-T03 | done | — | workplans/ADAPTIVE-WP-0001-statehub-bootstrap.md |
@ -58,10 +58,10 @@
| task | ADAPTIVE-WP-0009-T04 | done | — | workplans/ADAPTIVE-WP-0009-tenancy-posture-alignment.md |
| task | ADAPTIVE-WP-0009-T05 | done | — | workplans/ADAPTIVE-WP-0009-tenancy-posture-alignment.md |
| task | ADAPTIVE-WP-0009-T06 | done | — | workplans/ADAPTIVE-WP-0009-tenancy-posture-alignment.md |
| task | ADAPTIVE-WP-0010-T01 | todo | — | workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md |
| task | ADAPTIVE-WP-0010-T01 | wait | — | workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md |
| task | ADAPTIVE-WP-0010-T02 | wait | — | workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md |
| task | ADAPTIVE-WP-0010-T03 | wait | — | workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md |
| task | ADAPTIVE-WP-0010-T04 | wait | — | workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md |
| task | ADHOC-2026-07-02-T01 | done | — | workplans/ADHOC-2026-07-02.md |
| task | ADHOC-2026-07-02-T02 | done | — | workplans/ADHOC-2026-07-02.md |
| task | ADHOC-2026-07-03-T01 | done | — | workplans/ADHOC-2026-07-03.md |
| task | ADAPTIVE-WP-ADHOC-2026-07-02-T01 | done | — | workplans/ADHOC-2026-07-02.md |
| task | ADAPTIVE-WP-ADHOC-2026-07-02-T02 | done | — | workplans/ADHOC-2026-07-02.md |
| task | ADAPTIVE-WP-ADHOC-2026-07-03-T01 | done | — | workplans/ADHOC-2026-07-03.md |

View file

@ -4,12 +4,12 @@ type: workplan
title: "Plan-derived guardrail spend ceilings"
domain: financials
repo: adaptive-pricing
status: proposed
status: blocked
flavor: planning
owner: codex
topic_slug: helix-forge
created: "2026-08-18"
updated: "2026-08-18"
updated: "2026-09-28"
state_hub_workstream_id: "543e6398-d2cb-5105-977e-b90461adac3e"
---
@ -67,7 +67,7 @@ T01 produces a shape both repos accept.
```task
id: ADAPTIVE-WP-0010-T01
status: todo
status: wait
priority: high
state_hub_task_id: "7533431c-a0de-5ac8-a811-14e4604ad651"
```
@ -89,6 +89,41 @@ Open questions to settle, not to assume:
Record the outcome as a decision, since it binds two repos.
### 2026-09-28 interface review
Reviewed tenant-engine at commit
`4ce89969c0cc0ab4ba111f1b4009aa137c94a68b`, specifically
`docs/tenant-guardrail-policy.md`, `src/tenant_engine/guardrail/resolution.py`,
`src/tenant_engine/guardrail/model.py`, and the guardrail read in
`src/tenant_engine/app.py`. The existing consumer establishes these facts:
| Surface | Verified behavior |
| --- | --- |
| Resolver input | Optional `plan_limits: Mapping[str, LimitValue]`, already resolved for the tenant; no transport or plan lookup is defined here. |
| Monthly spend | Key `spend.monthly`; spend values carry integer minor units, currency and period. |
| Precedence | Per key: override, plan, grouping/reserved profile, fail-closed floor; lifecycle clamping follows resolution. |
| Missing plan value | Falls through to grouping; the resolver cannot distinguish a deliberately silent tier from an unavailable feed. |
| Unlimited | Explicit sentinel, never inferred from absence or parsing failure; assignment requires auditing. |
| Currency | Highest-precedence value wins; tenant-engine performs no exchange-rate conversion. |
| HTTP integration | The read endpoint calls `resolve_limits` without `plan_limits`; the documented feed remains unwired. |
This completes the local interface investigation, not the joint agreement.
T01 remains `wait`: the following proposal needs acceptance by tenant-engine
and commercial decisions by Bernd Worsch before T02 can define schema terms.
| Decision needed | Proposed basis for agreement (not adopted) |
| --- | --- |
| Representation and authority | Optional typed guardrail terms separate from charge components on the canonical tier; adaptive-pricing owns terms and revision, tenant-engine owns assignment. |
| Silent versus unavailable | Preserve grouping fallback for deliberately unmigrated tiers, with visible provenance. For migrated tiers, distinguish missing/stale/invalid terms from silence and return an explicit unavailable result rather than silently increasing the ceiling. Agree freshness and failure handling before wiring the feed. |
| Effective time | Carry an explicit approved effective time and revision. Bernd Worsch must choose immediate versus renewal application, including mid-period reductions and already-consumed spend. Do not infer this from an assignment timestamp. |
| Consumer handoff | Agree a versioned artifact or API and validation of plan identity, revision, amount, currency, period and freshness before converting to `LimitValue`; preserve overrides and lifecycle clamping. |
| Coherence basis | Define expected monthly spend in the same currency and period as the guardrail, with an evidence reference. Current charge prices alone do not establish expected spend or capacity. |
Unblock evidence is a recorded joint contract with those decisions resolved;
then implement T02, T03 and T04 under their existing task IDs. No new workplan
or task is required. No ceiling values, customer terms, or resolver behavior
were changed by this review.
## Extend The Pricing Schema With Ceiling Terms
```task

View file

@ -9,6 +9,7 @@ owner: codex
topic_slug: helix-forge
created: "2026-07-02"
updated: "2026-07-02"
state_hub_workstream_id: "e7b3e090-f9a7-5a54-8108-406c71df78ac"
---
# Ad hoc repo maintenance - 2026-07-02

View file

@ -9,6 +9,7 @@ owner: codex
topic_slug: helix-forge
created: "2026-07-03"
updated: "2026-07-03"
state_hub_workstream_id: "be24f99d-2047-5256-a7f8-1c4868094e45"
---
# Ad hoc repo maintenance - 2026-07-03