forge-contract: raw_state presence is not a signal, and §2.2 does not say so #357
Labels
No labels
component:adapters
component:lifecycle
component:qa
component:setup
component:shared
component:worktrees
phase/accepted
phase/backlog
phase/deployed
phase/developing
phase/integrating
phase/planning
phase/qa
phase/requirements
phase/uat
priority:critical
priority:critical
priority:high
priority:high
priority:low
priority:low
priority:medium
priority:medium
type:bug
type:chore
type:docs
type:feature
type:infra
type:tech-debt
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
jbr870/devwork-skills#357
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Spawned from finding
F-PO-47-3-3on issue #47 during decision D-PO-47-3-3.Original scope note: Nothing in the contract states it out loud, so a future adapter author or a future test could reasonably read presence as meaningful.
Disposition rationale: Recommended disposition. local-fs emits raw_state only when the record declares one; glab-cli emits it on every answer. Both satisfy §2.2, whose rule (present whenever state is unknown) is a floor rather than a ceiling — so a caller must read its VALUE, and only when state is unknown, never its presence. This surfaced as a real test bug during #47's hardening pass: an assertion requiring absence passed on one adapter and failed on the other, with neither adapter at fault. A one-line contract clarification, which is meta-lane work rather than feature work. Resolved autonomously under the operator's standing instruction to resolve PO-47-3 as recommended.
This issue was deferred out of the parent feature's scope; it carries no PREQ yet. Run
/dev:requirements --issue={new-number}to flesh it out before planning.