**Procedure:**
1. Identify the observable behavior to change and the existing contracts to preserve
2. Inspect the contract owner and every existing test that imports, invokes, or directly references that owner. Do not exclude a test by its filename or claimed purpose. Map every assertion to an observable contract, and use test-related criteria supplied by the task to decide the disposition of assertions that cannot be mapped. When such criteria are available, do not proceed until every assertion has either a contract mapping or an update or deletion disposition allowed by those criteria. When no such criteria are available, record assertions whose preservation, update, or deletion cannot be decided from observable contracts as unresolved
3. Choose the smallest inputs or states that distinguish the intended behavior from plausible near-miss implementations. Do not invent persistence, lifecycle, integration, or concurrency axes outside the contract
4. Create the smallest tests that observe the contract directly. Choose an integration test only when a real primary path crosses a unit boundary
5. In this test-first step, run the tests and confirm they fail because the production behavior is not implemented, distinguishing that failure from defects in test setup, fixtures, or assertions. Record the post-implementation condition that the intended behavior must pass while the selected near-misses fail for the intended reason. Run mutation checks only after implementation through an existing isolated runner on a disposable copy, never in this step
6. Before completion, inspect the owning test set again. When applicable test-related criteria are available, confirm that every assertion has a contract mapping or a disposition authorized by those criteria; otherwise identify unresolved assertions. Record the input or state and assertion that rejects each near-miss, any uncovered reason, and the execution result
