Skip to content

I0204 — Apply one derived limit for real and prove it changes what happens

Implement the first adapter: one limit, derived from the profile through the resolver, applied where a provider can honestly apply it, with a behavioural case that fails if the limit stops being applied.

BLOCKED wave 3 · p1 · debugging profile · runs alone

Part of runtime-adapters — Profiles become runtime constraints rather than advice.

Blocked. This issue cannot start until I0203 is done. The status is derived from that, not declared.

Objective

Implement the first adapter: one limit, derived from the profile through the resolver, applied where a provider can honestly apply it, with a behavioural case that fails if the limit stops being applied.

Why

The milestone's whole distinction is between a limit that is printed and a limit that is applied. One limit that genuinely bites is worth more than a full set that is advisory, and it is the only thing that makes the claim publishable.

Current state

The mapping exists, the resolver prints the numbers, and the opt-in exists. Nothing anywhere applies a value to anything.

Desired state

With enforcement on, one provider's execution is constrained by a value derived from the active profile, and turning the profile from one value to another changes the observed outcome.

Scope

  • lib
  • share
  • test/cases

Out of scope

  • A second provider; one honest adapter first
  • Any provider knob whose effect cannot be observed from a test in this repository

Dependencies

What waits on this

Acceptance criteria

  • The applied value comes from the resolver, and no constant appears in the adapter
  • A case changes only the profile and observes a different outcome
  • A case with enforcement off observes the unconstrained outcome
  • Removing the application makes a case fail rather than a document go stale

Validation

  • bash test/run.sh

Evidence required

  • suite
  • profile_changes_outcome

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Risk

The only honest adapters are for knobs a provider exposes and documents; if the chosen knob turns out to be advisory on the provider's side, the issue closes as no_match rather than shipping a clamp that does not clamp.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I0204.yaml. Read it back with majordomus plan show I0204.

Searches the titles and descriptions of every page this site publishes.