AI Agents SDE Task Viewer
      • Pr description
  1. Home
  2. AgentSDE
  3. agent-core
  4. gh-242
  5. changes
  6. pr_description.md
pr_description.md(1.3 KB)· Apr 2, 2026· 1 min read
  • Problem
  • Task / Link
  • Changes
  • Notes
  • Testing

feat(#242): set status=gated on BLOCKED:PERSISTENT instead of status=blocked#

Problem#

handlePersistentBlock was setting status: 'blocked' (an error-path status) instead of status: 'gated' (a quality-gate status), causing dashboard misclassification of PERSISTENT blocks.

Task / Link#

Closes #242

Changes#

  • task-state.types.ts: add 'gated' to TaskStatus union type
  • internal-adapter.service.ts: handlePersistentBlock now sets status: 'gated' and passes 'gated' to onPhaseBlocked
  • phase-hooks.service.ts: extend onPhaseBlocked category type to include 'gated'; early-return guard suppresses label/comment for category === 'gated' on refine/review phases
  • internal-adapter.service.spec.ts: updated persistent-block test expectations to assert 'gated' status and hook arg
  • phase-hooks.service.spec.ts: added two tests verifying gated category is suppressed on refine and review phases

Notes#

No migration script for existing blocked rows sourced from BLOCKED:PERSISTENT signals — those can be corrected manually via the control API status-override endpoint or a follow-up issue. Genuine error-path blocked rows (transient exhaustion, retry-limit) are unaffected.

Testing#

  • npm run test — 672 tests pass (all suites green)
PrdAgent-runner