Skip to content

fix(deep-interview): retire per-round tiered continuation asks for active interviews - #4590

Merged
probepark merged 3 commits into
devfrom
fix/issue-4589-deep-interview-continuation
Aug 18, 2026
Merged

fix(deep-interview): retire per-round tiered continuation asks for active interviews#4590
probepark merged 3 commits into
devfrom
fix/issue-4589-deep-interview-continuation

Conversation

@Yeachan-Heo

@Yeachan-Heo Yeachan-Heo commented Aug 15, 2026

Copy link
Copy Markdown
Owner

Fixes #4589

Scope

Removes the retired per-round continuation prompt from bundled Deep Interview instructions. Ordinary answered rounds score, persist, and ask the next weakest-dimension question. The scope deliberately preserves distinct exits: stop / cancel / abort hard-cancel immediately at every round; enough / let's go / build it use the existing pre-round-3 targeted-clarification guard and early-exit path after round 3.

Rebased exact-head evidence

  • Base: 6696988b6dd757f898ab7b33984ba830b6344109 (origin/dev)
  • Head: e17c982945348ebf6ae3bc124a733864a79d269d
  • Canonical binary diff digest: sha256:26f7697a7b1bb46f3eaf1255b1f029317852461cc6c834551d0d1738e100cf3b
  • bun test packages/coding-agent/test/deep-interview-skill-contract.test.ts — 20 pass
  • bun test packages/coding-agent/test/agent-session-deep-interview-continuation.test.ts — 23 pass
  • bun --cwd=packages/coding-agent run check:types — pass
  • git diff --check origin/dev...HEAD — pass

probepark has been requested for a fresh, non-author exact-head review. The prior approval was bound to superseded head 9ded3effb491de7473a3ae37fce566b0bc221f69 and is not relied upon.

GJC verdict

gajae.pr-review-verdict.v1 merge-approved sha256:26f7697a7b1bb46f3eaf1255b1f029317852461cc6c834551d0d1738e100cf3b reviewer:human reviewer-id:probepark evidence:independent-architect-review-skill-md-prompt-contract-regression-fails-on-old-tiered-continuation-cancellation-early-proceed-resume-safety-cap-preserved-issue-4589

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

PR body integrity correction (repository-visible blocker, repaired).

The previous PR body was catastrophically contaminated with a stale, unrelated Windows SDK session-index lock PR description (Fixes #4544, Windows index.jsonl lock diagnostics, PowerShell/Telegram material, stale heads c20a6725e7/0e34526865, stale digest sha256:71b9fa…, stale reviewer history). It did not describe this PR's actual delta and caused the PR contract bootstrap job to fail on run 31897570999.

Corrected via REST PATCH /pulls/4590: the body is now bound to the exact head/base a8138dc9e03911d359dc5d28f280996f67e8166c / d332b7890ed95ff71d1a80e00bd4d31809558e69, documents the #4589 reproduction (base Step 2f tiered cadence, rounds 4–15/16+ asks), the parity-port root cause (instruction, not runtime emitter), the exact 3-file scope, all preserved contracts (DIPP-9, Phase 0.5 invocation-only resume gate, explicit exit, threshold transparency, bounded continuation, Round 100 cap), the focused regression coverage, local verification from issue comment 5303330015, and exactly one fresh machine-readable verdict line with a newly computed canonical digest (sha256:c4772ea6…c1982, computed over head+base+3-file scope+diff-sha f2e4d678…9e6f9+CI evidence). No stale digest reused.

Post-edit REST verification: body contains Fixes #4589 (1), contains none of Fixes #4544 / index.jsonl / PowerShell / Telegram / c20a6725 / 71b9fa (0 each), exactly 1 verdict line, head unchanged.

Code head untouched — no amend, no push; a8138dc9e0 remains the exact PR head.

CI: the body edit triggered replacement run 31898171653 on the same head (now authoritative); being tracked. Run 31897570999 product evidence (13/13 product jobs pass: gjc-state-gates all shards, Affected path validation plan/native-build/both focused deep-interview tests/ts-build/evidence producer, Virtual integration validation) remains valid for the identical delta.

@probepark — requesting your fresh independent review of exact head a8138dc9e03911d359dc5d28f280996f67e8166c (base d332b7890e). @HaD0Yun — backup reviewer. One APPROVED review on that exact head flips the verdict to merge-approved; any earlier review on any other head is superseded and does not count.


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

@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

Verdict digest correction (bootstrap-contract canonical form).

Inspecting the PR contract bootstrap job of run 31898171653 revealed two facts:

  1. needs-human intentionally blocks mergeVerdict ${verdict} intentionally blocks merge. — this is the designed merge gate: the line must read merge-approved with an effective exact-head non-author APPROVED review before merge. needs-human is the correct current state while the review is pending; it is not product red.
  2. The digest must equal sha256(git diff --binary --full-index --no-ext-diff base...head) — my first corrected body carried a digest computed over a plain-text diff. Fixed: the verdict line now carries the canonical digest sha256:8cf9ae3be9f9fcf3e5f8773d1ec1a621ba6a7ff1ed91713459ccf90c7e94bcdd (verified reproducible locally with the exact bootstrap flags on d332b7890…a8138dc9).

REST-verified after the edit: Fixes #4589 (1), exactly one verdict line, canonical digest present, stale digests (c4772ea6…, 71b9fa…) absent, zero contamination tokens, head unchanged a8138dc9e03911d359dc5d28f280996f67e8166c / base d332b7890ed95ff71d1a80e00bd4d31809558e69. Code head untouched — no amend, no push.

Replacement CI run 31898774685 triggered by this body edit on the same head is now authoritative and tracked to terminal. Product evidence remains green on this head across runs 31897570999 / 31898171653: both focused deep-interview tests, ts-build, gjc-state-gates (all shards), Affected path validation, Virtual integration validation.

@probepark (primary) / @HaD0Yun (backup): when your APPROVED review lands on exactly a8138dc9e03911d359dc5d28f280996f67e8166c, the verdict line flips to merge-approved with the same canonical digest and the bootstrap job goes green.


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

@Yeachan-Heo
Yeachan-Heo force-pushed the fix/issue-4589-deep-interview-continuation branch from a8138dc to d7851b9 Compare August 15, 2026 20:16
@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

Rebased the single PR commit onto current dev and force-pushed exact head d7851b9c28487f53ac212f0755bda11a4a670d09 (base 91a35114d1263dd8422afa1c3e5a3b65d60ff724).

Validation on that rebased head: bun test packages/coding-agent/test/deep-interview-skill-contract.test.ts (20 pass); bun test packages/coding-agent/test/agent-session-deep-interview-continuation.test.ts (23 pass, after building the repository-native addon); bun --cwd=packages/coding-agent run check:types; git diff --check origin/dev...HEAD. The canonical binary diff digest remains sha256:8cf9ae3be9f9fcf3e5f8773d1ec1a621ba6a7ff1ed91713459ccf90c7e94bcdd.

The PR body now has exactly one gajae.pr-review-verdict.v1 needs-human line bound to this exact head/base. Fresh CI and an effective non-author approval remain required before merge readiness.


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

@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

Exact-head product CI is complete for d7851b9c28487f53ac212f0755bda11a4a670d09: replacement Dev CI run 31906276552 has every product job green; its sole failure is the deliberate needs-human bootstrap gate. The cancelled run 31906257962 is superseded and excluded from evidence.

probepark and HaD0Yun are requested reviewers and both have repository write permission. An effective exact-head APPROVED review from either non-author reviewer is the remaining merge gate. The body has one valid needs-human verdict, bound to exact head/base and digest sha256:8cf9ae3be9f9fcf3e5f8773d1ec1a621ba6a7ff1ed91713459ccf90c7e94bcdd; it will change to merge-approved only after that approval exists.


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

@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

Resolved the terminal critic finding and pushed exact head 9ded3effb491de7473a3ae37fce566b0bc221f69. Step 2f now keeps intent classes separate: stop/cancel/abort hard-cancel immediately at every round; only enough/let's go/build it follow the pre-round-3 targeted-clarification guard. The focused skill-contract regression now asserts both classes and their distinct behavior.\n\nValidated: bun test packages/coding-agent/test/deep-interview-skill-contract.test.ts (20 pass); bun test packages/coding-agent/test/agent-session-deep-interview-continuation.test.ts (23 pass); git diff --check origin/dev...HEAD. The sole PR-body verdict is needs-human, exact-head/base bound, with canonical digest sha256:26f7697a7b1bb46f3eaf1255b1f029317852461cc6c834551d0d1738e100cf3b. Fresh CI and exact-head non-author approval are required again.\n\n—\n*[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.

Approve at 9ded3effb

fix(deep-interview): retire per-round tiered continuation, head commit "distinguish cancellation
from early proceed". 3 files, +127.

Differential

# base 91a35114d, with this head test files applied
 42 pass  1 fail

# head 9ded3effb
 43 pass  0 fail

The distinction is worth making

Cancellation and early-proceed produce the same observable "the round ended before it was supposed
to", and collapsing them is how an interview that the user abandoned gets treated as one that
completed with partial answers. The first should discard, the second should carry forward what was
gathered. A workflow that cannot tell them apart either loses good input or fabricates consent.

Retiring per-round tiering in the same change is consistent - tiering was the mechanism that made
the two look alike, since a tier boundary and a cancellation both truncated the round.

merge-approved.

Reviewed by @probepark - method: fresh-worktree run at the exact head, clean base worktree with the head test files to prove the differential.

Yeachan Heo added 2 commits August 17, 2026 21:26
…tive interviews

The ouroboros ooo-interview parity port (squash-imported in 10144d5)
added a Step 2f 'Tiered Confirmation Cadence' that instructed the agent to
ask 'Continue, or proceed with current clarity ({score}%)?' after every
ordinary answered round 4-15 (and 16+ with a warning). That converted the
ambiguity gate into per-answer consent friction — the exact regression
reported in #4589 — and contradicted DIPP-9, the Phase 2 loop contract,
Step 2d next-target reporting, and the runtime stop-gate reminder.

Replace the cadence with an explicit Continuation Contract: an ordinary
answered round NEVER asks for generic continuation approval; the interview
scores, persists, reports progress, and continues to the next
weakest-dimension question until one of four legitimate terminal
conditions (threshold + closure gates, explicit user exit,
invocation/resume suitability ambiguity only, bounded safety recovery).
Explicit exit controls, the Phase 0.5 resume gate, threshold transparency,
DIPP-9 execution approval, and the Round 100 hard cap are preserved.

Lore-id: 4589-di-continue
Constraint: do not remove explicit user exit controls or the resume gate
Constraint: preserve DIPP-9 execution approval and threshold transparency
Rejected: keep cadence but only for rounds 16+ | still converts the gate into consent friction
Rejected: runtime-side suppression of continue? asks | the instruction itself is the defect; runtime already auto-continues
Confidence: high
Scope-risk: narrow
Reversibility: trivial
Tested: bun test deep-interview contract/session/gate suites (144+43+105+127 pass)
Not-tested: live interactive TUI interview (contract-level regression pinned instead)
Closes: #4589
Hard cancellation must stop an interview immediately at every round.\nEarly-proceed wording retains the pre-round-three clarification guard.\n\nLore-id: 4590-exit-semantics\nConstraint: retain explicit exits without reintroducing per-round continuation asks\nConfidence: high\nScope-risk: narrow\nTested: deep-interview skill contract and continuation tests
@Yeachan-Heo
Yeachan-Heo force-pushed the fix/issue-4589-deep-interview-continuation branch from 9ded3ef to e17c982 Compare August 17, 2026 21:29
@Yeachan-Heo
Yeachan-Heo requested a review from probepark August 17, 2026 21:29
@Yeachan-Heo

Copy link
Copy Markdown
Owner Author

Signed refreshed-head evidence

The authoritative product gates completed green: state-gate shards and aggregate, native build, both focused Deep Interview tests, coding-agent TypeScript build, affected-path evidence/aggregate, and virtual integration. The only red job is PR contract bootstrap, correctly fail-closed because the sole verdict remains needs-human.

Bounded review blocker

probepark review 4945359691 is not accepted as refreshed-head approval: although the API currently reports commit_id e17c982…, its immutable review body says Approve at 9ded3effb and references the superseded diff/test evidence. A fresh authenticated non-author APPROVED review explicitly tied to the refreshed head/diff remains required. The PR verdict remains needs-human; no self-approval is asserted.

[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.

Independent maintainer review at exact head 914c70a. independent-architect-review-skill-md-prompt-contract-regression-fails-on-old-tiered-continuation-cancellation-early-proceed-resume-safety-cap-preserved-issue-4589

@probepark
probepark merged commit 9af5c7a into dev Aug 18, 2026
22 of 40 checks passed
pull Bot pushed a commit to nenyatech-mirror/gajae-code that referenced this pull request Aug 18, 2026
…tive interviews (Yeachan-Heo#4590)

* fix(deep-interview): retire per-round tiered continuation asks for active interviews

The ouroboros ooo-interview parity port (squash-imported in 10144d5)
added a Step 2f 'Tiered Confirmation Cadence' that instructed the agent to
ask 'Continue, or proceed with current clarity ({score}%)?' after every
ordinary answered round 4-15 (and 16+ with a warning). That converted the
ambiguity gate into per-answer consent friction — the exact regression
reported in Yeachan-Heo#4589 — and contradicted DIPP-9, the Phase 2 loop contract,
Step 2d next-target reporting, and the runtime stop-gate reminder.

Replace the cadence with an explicit Continuation Contract: an ordinary
answered round NEVER asks for generic continuation approval; the interview
scores, persists, reports progress, and continues to the next
weakest-dimension question until one of four legitimate terminal
conditions (threshold + closure gates, explicit user exit,
invocation/resume suitability ambiguity only, bounded safety recovery).
Explicit exit controls, the Phase 0.5 resume gate, threshold transparency,
DIPP-9 execution approval, and the Round 100 hard cap are preserved.

Lore-id: 4589-di-continue
Constraint: do not remove explicit user exit controls or the resume gate
Constraint: preserve DIPP-9 execution approval and threshold transparency
Rejected: keep cadence but only for rounds 16+ | still converts the gate into consent friction
Rejected: runtime-side suppression of continue? asks | the instruction itself is the defect; runtime already auto-continues
Confidence: high
Scope-risk: narrow
Reversibility: trivial
Tested: bun test deep-interview contract/session/gate suites (144+43+105+127 pass)
Not-tested: live interactive TUI interview (contract-level regression pinned instead)
Closes: Yeachan-Heo#4589

* fix(deep-interview): distinguish cancellation from early proceed

Hard cancellation must stop an interview immediately at every round.\nEarly-proceed wording retains the pre-round-three clarification guard.\n\nLore-id: 4590-exit-semantics\nConstraint: retain explicit exits without reintroducing per-round continuation asks\nConfidence: high\nScope-risk: narrow\nTested: deep-interview skill contract and continuation tests

---------

Co-authored-by: Yeachan Heo <yeachan.heo@gmail.com>
Co-authored-by: probe <re2rar@gmail.com>
(cherry picked from commit 9af5c7a)
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