PRD 0039: smolmachines capability-block remediation #142

Merged
didericis merged 3 commits from prd-0039-smolmachines-capability-remediation into main 2026-06-02 11:15:38 -04:00
Collaborator

Closes #136.

PRD: https://gitea.dideric.is/didericis/bot-bottle/src/branch/prd-0039-smolmachines-capability-remediation/docs/prds/0039-smolmachines-capability-remediation.md

Summary

  • Route capability-block approval through backend-specific code rather than Docker-only teardown/apply
  • For smolmachines: implement remediation or add a clean unsupported path that prevents partial Docker teardown
  • Suppress the capability-block tool for smolmachines agents if the unsupported path is chosen

Changes (1 commit)

  • docs/prds/0039-smolmachines-capability-remediation.md — add PRD 0039 (Draft)
Closes #136. PRD: https://gitea.dideric.is/didericis/bot-bottle/src/branch/prd-0039-smolmachines-capability-remediation/docs/prds/0039-smolmachines-capability-remediation.md ## Summary - Route capability-block approval through backend-specific code rather than Docker-only teardown/apply - For smolmachines: implement remediation or add a clean unsupported path that prevents partial Docker teardown - Suppress the capability-block tool for smolmachines agents if the unsupported path is chosen ## Changes (1 commit) - `docs/prds/0039-smolmachines-capability-remediation.md` — add PRD 0039 (Draft)
didericis approved these changes 2026-06-02 11:15:02 -04:00
didericis added 3 commits 2026-06-02 11:15:31 -04:00
apply_capability_change is Docker-only teardown/apply code. Before this
change it was called regardless of backend, so approving a capability-block
proposal from a smolmachines agent would run Docker commands against a
slug that has no Docker container.

After this change approve() reads the bottle's metadata: if compose_project
is empty (the smolmachines indicator) it raises CapabilityApplyError with
a clear operator message before any teardown runs. Docker bottles (non-empty
compose_project) and unknown bottles (no metadata) fall through to the
existing Docker path unchanged.

Closes #136
docs: mark PRD 0039 Active
test / unit (pull_request) Successful in 33s
test / integration (pull_request) Successful in 43s
test / unit (push) Successful in 30s
test / integration (push) Successful in 41s
b9108339e7
didericis force-pushed prd-0039-smolmachines-capability-remediation from 0f968b2683 to b9108339e7 2026-06-02 11:15:31 -04:00 Compare
didericis merged commit b9108339e7 into main 2026-06-02 11:15:38 -04:00
didericis deleted branch prd-0039-smolmachines-capability-remediation 2026-06-02 11:15:38 -04:00
Sign in to join this conversation.