Plan U3 remainder (R8/KTD13): admission_leases (v21) with atomic accounting under an advisory lock; runtime.execBudget* settings (zero=off preserves behavior); conversation turns and both subagent kinds share the pool; parents yield around synchronous children and HITL waits (no parent-child deadlock at saturated budgets); queue-full rejects 429 before writing. Server gains the ProjectAction matrix (read/edit/approve/execute/admin, default-deny, legacy EXT-8 read fallback, action-aware authoritative + fail-closed). Docs: runbook section 9 (documents PR #64). Evidence: full suite green on SQLite and real PostgreSQL 18.6 + Redis.
Plan U3 remainder (R8/KTD13): admission_leases (v21) with atomic accounting under an advisory lock; runtime.execBudget* settings (zero=off preserves behavior); conversation turns and both subagent kinds share the pool; parents yield around synchronous children and HITL waits (no parent-child deadlock at saturated budgets); queue-full rejects 429 before writing. Server gains the ProjectAction matrix (read/edit/approve/execute/admin, default-deny, legacy EXT-8 read fallback, action-aware authoritative + fail-closed). Docs: runbook section 9 (documents PR #64). Evidence: full suite green on SQLite and real PostgreSQL 18.6 + Redis.
Why: plan U3 remainder (R8/KTD13) - execution admission must be bounded and shared (leases in the database, parents yield while waiting so budgets cannot deadlock parent-child), and project authorization must distinguish read/edit/approve/execute/admin with default-deny for unconfigured actions.
Evidence: full suite green on SQLite and against real PostgreSQL 18.6 + Redis (isolated instance); new tests - admission_pg_test (enforcement, per-user, concurrent no-oversell), runmgr admission tests (saturated-budget sync spawn progresses, background children share the budget, bounded queue 429), server action-matrix tests (default deny, legacy adapter read-only, action-aware authoritative + fail-closed).
Impact: admission_leases (v21) with atomic lease accounting under an advisory lock; runtime.execBudgetGlobal/PerUser/execQueueMax settings (all zero = off, historical behavior preserved); conversation turns, background and sync subagents share the pool, parents yield around synchronous children and HITL waits; queue-full rejects 429 before writing; server gains ProjectAction matrix + SetProjectActionAuthorizer with legacy EXT-8 read fallback.
Refs: proposals/2026-10-11-collaboration-storage-and-distribution.md U3 R8/KTD13; docs/guides/team-storage.md section 9.
weichen
merged commit 05c3447ebb into main2026-10-11 05:18:20 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Plan U3 remainder (R8/KTD13): admission_leases (v21) with atomic accounting under an advisory lock; runtime.execBudget* settings (zero=off preserves behavior); conversation turns and both subagent kinds share the pool; parents yield around synchronous children and HITL waits (no parent-child deadlock at saturated budgets); queue-full rejects 429 before writing. Server gains the ProjectAction matrix (read/edit/approve/execute/admin, default-deny, legacy EXT-8 read fallback, action-aware authoritative + fail-closed). Docs: runbook section 9 (documents PR #64). Evidence: full suite green on SQLite and real PostgreSQL 18.6 + Redis.