Skip to content

sdd-attempt closes a change after task decomposition and blocks apply #2173

Description

@NicolasAgustinIbarra

Pre-flight Checklist

  • I have searched existing issues and this is not a duplicate
  • I understand that PRs will be rejected if the linked issue does not have status:approved

📝 Bug Description

An sdd-attempt ledger completed an SDD change after its task-decomposition attempt settled. Acquiring the first planned implementation work unit then returned state: complete, which prevented implementation from starting.

🔄 Steps to Reproduce

  1. Acquire an SDD attempt for task decomposition with max-attempts 1.
  2. Settle that attempt as passed.
  3. Acquire a distinct implementation work unit for the same SDD change.
  4. Observe state: complete rather than an acquired attempt.

✅ Expected Behavior

Each approved work unit of an SDD change can acquire its own attempt within its configured budget. Settling task decomposition must not exhaust the implementation lifecycle.

❌ Actual Behavior

The task-decomposition acquisition used max_attempts: 1 and settled successfully. The subsequent status reported complete: true and next_action: complete. Acquiring the next planned implementation work unit returned state: complete.

Gentle AI Version

Gentle AI Version: 2.2.0

Operating System

Linux (Ubuntu/Debian)

AI Agent / Client

OpenCode

📋 Affected Area

CLI (commands, flags)

💡 Logs / Error Output

``text
sdd-attempt status
complete: true
next_action: complete

sdd-attempt acquire <implementation-work-unit>
state: complete

Additional Context

  • One bounded task-decomposition attempt passed; the next implementation-work-unit acquisition returned complete.
  • No application source code was modified. Planning artifacts were created and consumer state remained preserved.
  • The planned next work unit was blocked before implementation could begin.
  • Opaque evidence identifiers:
    • Task objective: sha256:3ff85d3677252b6a6adadd7b554a1236dd341d10d32d4cddb6c74658c9ac7cb4
    • Task evidence revision: sha256:e3b1d430c389bcda080db3607535b1196109828fcfa96da96bfe045a3c891254
  • Private change, project, path, username, host, and credential identifiers have been removed or replaced with placeholders.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions