Skip to content

CK-07R1: correct lifecycle preparation scale - #394

Open
douglasmonsky wants to merge 2 commits into
mainfrom
feature/ck-07r1-lifecycle-scale
Open

CK-07R1: correct lifecycle preparation scale#394
douglasmonsky wants to merge 2 commits into
mainfrom
feature/ck-07r1-lifecycle-scale

Conversation

@douglasmonsky

Copy link
Copy Markdown
Owner

Summary

  • linearize lifecycle folding by grouping new transitions once per entity
  • add publication-valid standard and production synthetic scale qualification
  • bind frozen CK-08R0 budgets, producer digests, writer receipts, and database postconditions

Validation

  • focused lifecycle, documentation authority, and scope tests: 29 passed
  • five-sample replay: standard max 42.980 ms; production max 20,666.089 ms
  • ordinary packet suite: 1,353 passed
  • invariant performance lane: 13 passed; allowance_read_p95_ms 592.888 ms recorded as invariants_only noise
  • Pyright: 0 errors, 0 warnings
  • release safety and dist checks passed
  • wheel 373,870 bytes; sdist 819,975 bytes

Review

One comprehensive read-only reviewer completed. All three accepted findings were remediated: exact publication workload receipts, complete lifecycle-fold identity checks and mutation resistance, and preservation of the frozen preparation digest.

Scope

CK-07R1 lifecycle preparation only. PublicationWriter, recovery, schema, query, evidence service, and shared authority paths are unchanged.

@douglasmonsky

Copy link
Copy Markdown
Owner Author

CK-07R1 bounded blocker closeout: hosted CI run 30685780055 failed only in Python 3.14 job 91331138768. The exact failure is the pre-declared timing-sensitive Candidate A mandatory workload ordinary.2000_call_tail; the job otherwise completed 1,387 passing tests. Python 3.10 isolation and Focused Evidence Console passed. Per the packet stop condition, this PR remains open and unmerged; no gate, lifecycle invariant, publication invariant, or frozen budget was weakened, and no successor was created.

douglasmonsky added a commit that referenced this pull request Aug 1, 2026
## Summary

- bound Candidate A model-call tail inserts by the runtime SQLite variable limit
- preserve canonical call identities while avoiding per-row JSON encoding in the timed tail
- add Python 3.10 portability coverage and endpoint identity assertions for the 2,000-call tail

## Root cause

The hosted `ordinary.2000_call_tail` path built one 36,000-variable SQLite INSERT. Python 3.10's SQLite binding limit rejected that statement with `sqlite3.OperationalError: too many SQL variables`, while the prior implementation did not inspect the runtime limit.

## Validation

- exact-base Python 3.10 baseline reproduces the `too many SQL variables` failure; corrected Python 3.10 and 3.14 focused suites pass
- 73-test Candidate A lifecycle/publication/performance/recovery profile passes on Python 3.10 and 3.14
- `just v` passes
- `just vc` passes, including distribution build and release verification
- all five frozen budgets and first-sample semantics remain unchanged

This PR is the CK-07R1A corrective prerequisite. It does not modify held PR #394 or shared roadmap authority.
douglasmonsky added a commit that referenced this pull request Aug 2, 2026
Authority transition accepted: CK-07R1 becomes Conditional Ready only after this merge and exact-main verification; PR #394 remains stale failed read-only.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant