Repository navigation
fix(dev): 解禁非安全门禁,保留真正安全底线 - #75
Merged
Merged
Conversation
avabbbb
added a commit
that referenced
this pull request
Oct 9, 2026
* fix(reset): cancel each live worker once during quiesce cancel_career_task already cancels a career task's live worker; the follow-up _cancel_task_objects cancelled it again. The second cancel could land inside the worker's final awaited DB commit, orphaning an open SQLite write transaction (RESERVED lock) so the reset's checkpoint hit 'database is locked' after the 30s busy timeout. Flaky on main too. Skip tasks that already have a pending cancellation; still await them. (cherry picked from commit b15017f56941cf75c7fcd4ccaea5a557fe4b20d7) * feat(resume): finalize a proposal when its last decision group is confirmed Confirming every resume decision group left the proposal 'in_review' with no accepted ResumeVersion. A confirmed decision-plan node now finalizes the proposal in the same review transaction once no change is pending: snapshot the workspace as a ResumeVersion and mark it accepted through mark_workspace_proposal_accepted, the helper now shared with create_resume_version_record (all-rejected closes it as 'rejected'). Idempotent, and a replayed final review finalizes a fully reviewed but unfinalized proposal. Direct workspace reviews keep the existing contract: the proposal stays open until the user saves a version. Drop the strict xfail on test_tailor_resume_fixture_runs_ask_plan_receipts_and_workspace_on_one_run. (cherry picked from commit 42203d951c84987cf42d2d4d2ccd61a31e969482) * test(career): pin automation-event lookups to the test's own target (shared DB order leak) (cherry picked from commit 5da56feb4e06495782e8662759ea0e11c40d1e0e)
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
背景
近期
main的 reviewability / CI / branch guard 把大量“信息不完整”或“开发环境不够整洁”的情况升级成 hard block,实际造成 Agent Run、审核卡和日常开发频繁死锁。本 PR 的原则:
产品审核解禁
降级为 warning,不再阻止确认
以下 review packet 缺项仍显示在卡片上,但
reviewability.status保持ready:前端会显示「信息提示,不影响确认」,批准 / 拒绝按钮继续可用。
docs/02-interaction-design.md同步加入 D-9:审阅质量缺项只能提示,不能制造无出口状态。Prepare 不再掉进无人执行的 AUTO 黑洞
L1 / prepare 默认投影为普通可确认 review。若显式 AUTO 没有执行器,也降级成可确认项而不是把 Run 永久停住。
仍然 hard block 的安全底线
以下没有放开:
开发 Guard 解禁
branch_guard.py:start / integrate / pr:落后 main、dirty worktree、命名分支超预算 → warningowner-test:最新 baseline + clean worktree 继续 hard failAGENTS.md同步更新规则。CI 解禁
普通 PR 改成快速通道:
main / tag / release 的严格发布门槛保持不变。
Tests
新增 / 更新:
backend/tests/test_agentic_interaction_policy.pybackend/tests/test_branch_guard.pyPlanReviewInbox.test.tsxdocs/02-interaction-design.md说明
本 PR 不处理 SQLite reset 锁、resume proposal 全部确认后仍停在
in_review等独立产品 bug;这些应继续单独修,避免把行为修复和门禁政策混在一起。未 merge,等待评审。