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
{{ message }}
Repository navigation
refactor: facade ObjectRepository and ScopedContext in engine.ts with the same codemod (about 700 lines), as the ObjectQL class already is #30052
Filing gate: the maintainer asked for this on PR #30012 at 2026-11-04T10:03Z (「我觉得文件还是太长,还有进一步的拆分优化空间吗」「可以后续立卡处理」「合并之后再继续」). The facades are merged: engine.ts as 237f513 (#30012) and protocol.ts as 48914fd (#29998). Estimates come from the #29986 / #29985 dev reports. ⛔ Not a claim. Triage sets the grade and the lane (devx or server).
Business reason: #30012 facaded only the ObjectQL class. ObjectRepository and ScopedContext (696 lines) still carry their bodies in engine.ts. The same codemod, extended to these two classes, moves them under the same proofs.
Reader who acts: the owner of scripts/codemod-split-engine.mjs.
What to do
Extend the codemod to the two classes, then regenerate and prove: byte-identity, determinism, public .d.ts EQUAL, and suites at base counts.
Claim: PM loop round 2
Session: session_01Utp6CbPxYq1wQmUNWvMZkC (seat) · dev = project card thread session_01Utp6Cbo4rDxRL3yugqM5c7
Account: os-bill
Branch: claude/project-thread-qq3rpa
Worktree: objectstack-issue-30052
Domain: domain:server
Seat: domain:server#3
File surface: scripts/codemod-split-engine.mjs, packages/objectql/src/engine.ts and its generated hand modules, the by-path readers the move breaks (federated READERS, core CALLERS, census register), the #30019 gate rows, one changeset; over 3000 changed lines ⇒ stop and report — stop on breach; explain in the report.
Container & model: M–L, mode:thread, model: default judgment tier (dispatch-gates --tier: no path-derived mandate; floor sonnet · default opus · ceiling fable), effort: high (M–L)
Clause-②: no — public .d.ts EQUAL is the proof the dev reports.
Metadata-protocol: none
Responsibility: n/a — not a defect card (maintainer-ruled refactor, PR #30012)
Thread-read: 6629930267
Premise: holds
Serial constraints cleared: #30053 #30054 #30055 #30020 (same facade files) held serial behind this card; #30051 closed; no other in-flight claim on engine.ts.
Activity
objectstack-fleet commentedon Nov 4, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: none
Triage: first-touch audit · p2 ·
domain:server·pm:queue· 2026-11-04T11:54Z⛔ Not a claim.
ObjectRepositoryandScopedContextinengine.tswith the same codemod (about 700 lines). A ruled refactor, so p2.as anysites in engine.ts's six erasure-pinned methods so the codemod can move them (about 550 lines) #30055 and refactor: move shared state out of the protocol.ts and engine.ts facades into state-owning facets, so the hot bodies left on the class can become delegations (ruling 6624345766) #30020. One PR per file at a time. Any PR over 3,000 lines takes a freeze window with the maintainer's approval.Generated by Claude Code
objectstack-fleet commentedon Nov 5, 2026
domain:server#3 · os-bill · session_01Utp6CbPxYq1wQmUNWvMZkC
Claim: PM loop round 2
Session:
session_01Utp6CbPxYq1wQmUNWvMZkC(seat) · dev = project card threadsession_01Utp6Cbo4rDxRL3yugqM5c7Account:
os-billBranch:
claude/project-thread-qq3rpaWorktree:
objectstack-issue-30052Domain:
domain:serverSeat:
domain:server#3File surface:
scripts/codemod-split-engine.mjs,packages/objectql/src/engine.tsand its generated hand modules, the by-path readers the move breaks (federated READERS, core CALLERS, census register), the #30019 gate rows, one changeset; over 3000 changed lines ⇒ stop and report — stop on breach; explain in the report.Container & model:
M–L,mode:thread,model: default judgment tier (dispatch-gates --tier: no path-derived mandate; floor sonnet · default opus · ceiling fable),effort: high (M–L)Clause-②: no — public
.d.tsEQUAL is the proof the dev reports.Metadata-protocol: none
Responsibility: n/a — not a defect card (maintainer-ruled refactor, PR #30012)
Thread-read: 6629930267
Premise: holds
Serial constraints cleared:
#30053 #30054 #30055 #30020 (same facade files) held serial behind this card; #30051 closed; no other in-flight claim on engine.ts.wip: facade gate registers the scoped classes (#30052)
wip: codemod header for the second pass, changeset (#30052)
objectstack-fleet commentedon Nov 5, 2026
domain:server#3 · os-bill · session_01Utp6CbPxYq1wQmUNWvMZkC
Landed · 2026-11-05T05:12Z
343ddb217e71ac6a87c85da882a9446bd75a309d(merged_at 2026-11-05T05:11Z).ObjectRepository(11/11) andScopedContext(9/13) inengine.tsare facades overengine-object-repository.ts/engine-scoped-context.ts, moved by the codemod's second pass; the four bodies left on the class are registered exceptions (refactor: move shared state out of the protocol.ts and engine.ts facades into state-owning facets, so the hot bodies left on the class can become delegations (ruling 6624345766) #30020, Facade codemods: retire the codemod-limit exception rows in the facade gate registry (protocol.ts, engine.ts, sql-driver.ts) #30147). Public.d.tsunchanged.pm:dispatchedremoved. refactor: move the private docblocks of the hand-series stubs into their hand modules — about 1,900 lines off engine.ts (86 stubs) and about 4,000 off protocol.ts (157 stubs) #30053, refactor: give the inferred-return-type public methods on the engine.ts and protocol.ts facades explicit return types (.d.ts unchanged), so the codemod can move their bodies #30054, refactor: sweep the #4918as anysites in engine.ts's six erasure-pinned methods so the codemod can move them (about 550 lines) #30055, refactor: move shared state out of the protocol.ts and engine.ts facades into state-owning facets, so the hot bodies left on the class can become delegations (ruling 6624345766) #30020 (same facade files) were held serial behind it and are now free.