Skip to content

revert: #6349 durable task owner manager (breaks dev shard-8 + edit benchmark) - #6351

Merged
Yeachan-Heo merged 2 commits into
devfrom
revert/6349-durable-owner-manager
Oct 5, 2026
Merged

Yeachan-Heo merged 2 commits into
devfrom
revert/6349-durable-owner-manager

Conversation

@Yeachan-Heo

Copy link
Copy Markdown
Owner

Reverts #6349 (merge bb00f4c8), which I merged last round. It breaks dev in suites its CI didn't run:

  • coding-agent:shard-8-of-8: SessionManager session ids (5 tests, e.g. forks managed artifacts above the recovery-state size cap, rejects a byte-identical whole-root fork artifact replacement, fails closed when retained artifact capture rejects a substituted tree). Passed on 4f1c2add, fails on bb00f4c8.
  • typescript-edit-benchmark: writeConversationDump > writes benchmark conversations as session dumps and copies artifacts throws task_artifact_owner_session_manager_closed. Passed on 4f1c2add, fails on bb00f4c8.
  • Locally on test/session-manager/session-id.test.ts: 4f1c2add 15 pass / 5 fail (host baseline), bb00f4c8 6 pass / 14 fail.

This is a fallback: if snowykr fix-forwards first, I'll close it. The 3 sdk-broker failures (#6339) are separate and tracked in #6347.

—
[repo owner's gaebal-gajae (clawdbot) 🦞]

…uction-installed-f4b3"

This reverts commit bb00f4c, reversing
changes made to 4f1c2ad.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-05T05:41:19.065931Z f639b94 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f639b94893

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines 2820 to +2822
const keys = Object.keys(record.patch);
if (
!keys.every(
key =>
key === "cwd" ||
key === "title" ||
key === "titleSource" ||
key === "starred" ||
key === "taskArtifactOwner",
)
)
return false;
const { cwd, title, titleSource, starred, taskArtifactOwner } = record.patch;
try {
parseTaskArtifactOwnerLocator(taskArtifactOwner);
} catch {
return false;
}
if (!keys.every(key => key === "cwd" || key === "title" || key === "titleSource" || key === "starred")) return false;
const { cwd, title, titleSource, starred } = record.patch;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Preserve owner locators written by the reverted release

When a managed session was persisted by the immediate predecessor bb00f4c8, its durable artifact owner was recorded in a header_patch containing taskArtifactOwner. This whitelist now rejects that patch, and buildFileEntriesFromRecords silently skips it; after restart, the session instead derives a transcript-basename artifact store, so existing artifact:// and agent:// references into .task-artifact-owners stop resolving and subsequent output is split into a new store. Keep read-side parsing and restoration for already-written owner locators even if provisioning new durable owners is reverted.

Useful? React with 👍 / 👎.

@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

CI on bd36a2b: 38 passed, 3 failed. The only real failure is Windows dev:doctor + session-path regression (session-state-lock.test.ts: reclaims a base regular-file lock left by a dead owner instead of faulting, reclaims a malformed owner file only once it is stale, with owner_mismatch). The other 2 are the summary checks. This revert doesn't touch the lock code: it only changes sdk/session.ts, session-manager.ts, task/index.ts and 3 tests. I've re-run the failed jobs. @probepark @snowykr please review; this restores shard-8 and the edit benchmark on dev.

—
[repo owner's gaebal-gajae (clawdbot) 🦞]

@probepark probepark left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review (CI still running on bd36a2b; approval decision follows once CI finishes).

Review (head bd36a2b, gajae-reviewer on behalf of probepark)

CI: still running. 38 checks pass. The Windows dev:doctor + session-path regression rerun now passes. Affected path validation / evidence producer is pending, and the Affected path validation aggregate has not reported yet. Planned coverage includes check:@gajae-code/coding-agent plus the 3 touched test files (artifact-tree-authorization, move-to, no-session-output-refs).
Scope: +82 / -791, 6 files. Three are source files in packages/coding-agent (sdk/session.ts, session/session-manager.ts, task/index.ts), +43/-334 reviewable. The other 3 are tests.
Conventions: changelog fragment changelog.d/task-owner-durable-manager.md is kept. No generated files. No labels.

Revert fidelity: I checked this mechanically. git diff --stat bb00f4c8^1 bd36a2b is exactly 1 file, packages/coding-agent/changelog.d/task-owner-durable-manager.md (+3). The head tree is byte-identical to the pre-merge dev tip 4f1c2add everywhere except that fragment. The PR body says shard-8 and typescript-edit-benchmark passed on that tree. No hand-edited partial revert is hidden in the source.

Notable (non-blocking):

  • packages/coding-agent/src/session/session-manager.ts header-patch whitelist (codex P1, f639b94). This is correct mechanically: a session persisted by bb00f4c8 carries a header_patch with taskArtifactOwner, and after the revert that patch is skipped, so its .task-artifact-owners artifacts stop resolving. The exposure is narrow. bb00f4c8 landed on dev at 04:21Z today and is not on main or in any release (compare bb00f4c8...main ahead_by=0; latest tag v0.18.7 predates it). Only dev-tip sessions from the last ~2 h are affected. The fix-forward that relands #6349 restores the read side. I am not counting this as a merge blocker for an owner-directed dev revert.
  • changelog.d/task-owner-durable-manager.md still advertises "Persist managed task artifacts under a durable logical-session owner…". After this merge, that fix is not in the tree. If a release is cut before the reland, the notes will claim a fix that is not shipped. Before the release cut, either edit the fragment text (keep the file) to say it was reverted, or make sure the fix-forward lands first.

Blocking: none found in step 3.

Approval is held until Affected path validation finishes on this exact head.

@probepark

Copy link
Copy Markdown
Collaborator

Additional evidence for this revert from the bb00f4c8 Dev CI run (https://github.com/Yeachan-Heo/gajae-code/actions/runs/37263181896): #6349 also breaks coding-agent:shard-1-of-8. That is in addition to shard-8 and the edit benchmark listed above.

  • task-autorouting-preflight.test.ts: 3 tests (T1m, T2m, T3m) fail at :194 with managed parent artifact manager unavailable.
  • managed staged publication certainty: 5 tests fail with the same error.
  • multi-session session runner > runs the complete workload and compares reproducibly normalized evidence also fails.

None of these failed on 4f1c2add (https://github.com/Yeachan-Heo/gajae-code/actions/runs/37263170666). The range 4f1c2add..bb00f4c8 contains only #6349. The test blobs did not change (task-autorouting-preflight.test.ts 285e3bbaa976, session-id.test.ts 9f387c13a4b5, bench-multisession-runner.test.ts fd046fec21b3). The source blobs did: session-manager.ts 4b6da5e7c341 -> 0262d056c56e, task/index.ts d3358d82900a -> 3679a614714f, sdk/session.ts bffbf2e94ebd -> c39566a14f5e.

The 3 sdk-broker session.delete failures on shard-1 come from #6339 and are tracked in #6347, as noted above. A fix-forward for #6349 should also turn the shard-1 tests above green.

@probepark

Copy link
Copy Markdown
Collaborator

gajae-merge-routine 2026-10-05T06:44Z: dev is RED again at bb00f4c8 (https://github.com/Yeachan-Heo/gajae-code/actions/runs/37263181896). The failing jobs are a subset of the set already attributed to this issue, so no new PM judgement card was created. Our merges onto dev stay held until this is fixed upstream and a dev push goes GREEN.

@Yeachan-Heo
Yeachan-Heo requested a review from probepark October 5, 2026 06:52
@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

@probepark Affected path validation has finished on bd36a2b: CI passed 42/0, including the re-run Windows session-path job. Please review again.

—
[repo owner's gaebal-gajae (clawdbot) 🦞]

@probepark probepark left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review (head bd36a2b, gajae-reviewer on behalf of probepark)

The code review for this head is the earlier review #6351 (review), which found 0 blocking issues. CI has now finished, and I found no blocking issues.

CI: green. The approve gate returned ALLOW on bd36a2b with 0 pending and 0 failed, and check:@gajae-code/coding-agent was in the plan. This matches the owner's comment that 42/0 passed, including the re-run Windows session-path job. Only the merge-approval gate checks are still waiting.
Scope: +82 / -791, 6 files. This is a mechanical revert of #6349 (bb00f4c8). Apart from the kept changelog fragment, the head tree is byte-identical to bb00f4c8^1.
Conventions: the changelog fragment is kept, no generated files are touched, and there are no labels.
Notable (non-blocking, carried over from the code review): the session-manager header-patch whitelist only affects dev-tip sessions created after bb00f4c8. The text in changelog.d/task-owner-durable-manager.md must be fixed before the release cut, unless the reland of #6349 lands first.
Blocking: none.

Body verdict line count=0, not updated. Suggested verdict line: gajae.pr-review-verdict.v1 merge-approved sha256:e20099646a8dffac93cc0d0f4d3919209e4cd5736bef8962ae210ab2b9a21cfb reviewer:human reviewer-id:probepark evidence:ci-green;approve-gate-allow;mechanical-revert-of-bb00f4c8-verified

Verdict: gajae.pr-review-verdict.v1 merge-approved sha256:e20099646a8dffac93cc0d0f4d3919209e4cd5736bef8962ae210ab2b9a21cfb reviewer:human reviewer-id:probepark evidence:ci-green;approve-gate-allow;mechanical-revert-of-bb00f4c8-verified

@Yeachan-Heo
Yeachan-Heo merged commit a8ece16 into dev Oct 5, 2026
91 of 94 checks passed
@Yeachan-Heo
Yeachan-Heo deleted the revert/6349-durable-owner-manager branch October 5, 2026 07:21
@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

Merged into dev as a8ece169.

Note for 형님 before the next release cut: changelog.d/task-owner-durable-manager.md was kept, so it still describes the reverted #6349 fix. Either the reland lands first, or that fragment needs editing.

—
[repo owner's gaebal-gajae (clawdbot) 🦞]

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.

2 participants