You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove unrestricted SessionStore.set and address-only delete. Routes and integration fixtures now publish a new lifetime, update a captured ref with named fields, or retire that ref. This completes the caller migration from #3116; field-ownership enforcement follows.
The concurrency harness retains each published lifetime through cleanup. Provider fixtures expose publishSession instead of an upsert. Scenario resets retire explicitly; redundant re-sets disappear. Eighty-eight files changed, including one production module. Stacked on #3152.
Validation
Validated a6fd685348: quick checks, 311 focused/provider tests across 78 files, and Fallow pass. Independent read-only review found no weakened assertions or lifetime errors.
pnpm check:affected --base refactor/session-fixture-lifetimes-core --run passes all selected runnable gates and 2,091 tests across 317 files.
A cumulative run passed 6,430 tests before an unchanged shared TMPDIR assertion failed; that separate gate then passed all 25 controls. The final full gate remains required. CI is pending; this layer adds no device route.
This PR is ready at a6fd685. The change only removes the unrestricted session upsert and delete methods, and the typecheck confirms no caller is left. All 14 checks pass, and there are no conflicts. Not blocking: the planted-violation strings in session-resource-ownership.test.ts still use sessionStore.set(name, {...}), which no longer exists. The scanner keys on resource field construction, so the test still passes. You can switch them to sessionStore.update(ref, {...}) or leave them. I did not read every test-file hunk, I did not run the tests locally, and I rely on the green checks. Merge #3152, the base of this stack, first, and then this PR can land.
Consolidated into #3152 as part of reducing #3116 to seven PRs. The composition preserves the complete pre-consolidation source tree, including tests and later review corrections. This PR is superseded; its review discussion and native evidence remain available. Outstanding findings transfer to the owning keeper in the implementation record.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ready-for-humanValid work that needs human implementation, judgment, or maintainer merge
1 participant
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Remove unrestricted
SessionStore.setand address-onlydelete. Routes and integration fixtures now publish a new lifetime, update a captured ref with named fields, or retire that ref. This completes the caller migration from #3116; field-ownership enforcement follows.The concurrency harness retains each published lifetime through cleanup. Provider fixtures expose
publishSessioninstead of an upsert. Scenario resets retire explicitly; redundant re-sets disappear. Eighty-eight files changed, including one production module. Stacked on #3152.Validation
Validated
a6fd685348: quick checks, 311 focused/provider tests across 78 files, and Fallow pass. Independent read-only review found no weakened assertions or lifetime errors.pnpm check:affected --base refactor/session-fixture-lifetimes-core --runpasses all selected runnable gates and 2,091 tests across 317 files.A cumulative run passed 6,430 tests before an unchanged shared TMPDIR assertion failed; that separate gate then passed all 25 controls. The final full gate remains required. CI is pending; this layer adds no device route.