Context
Camp workitems under workflow/<type>/<dir>/ should follow workflow-style status semantics. They should not require an explicit active/ status directory just to be considered active.
This came out of auditing campaign design workitems: directories directly under workflow/design/ are the natural active work surface, while dungeon/status subtrees remain explicit lifecycle locations.
Request
Update camp workitem status handling so a workitem directory directly inside workflow/<type>/ is assumed to be active by location.
Desired behavior
workflow/design/foo/, workflow/explore/bar/, and custom workflow/<type>/baz/ workitem directories are treated as active workitems by default.
- Camp should not require or expect
workflow/<type>/active/<dir>/ for these workflow workitems.
- Dungeon/status subtrees remain explicit lifecycle locations and should keep their existing semantics.
- Commands and JSON output that expose lifecycle stage should reflect the implicit active status consistently.
- Validation/repair logic for workitems should preserve this rule and should not instruct agents to create an
active/ directory for normal workflow workitems.
Acceptance criteria
- A proper
.workitem directory at workflow/design/example/ is reported as active without needing workflow/design/active/example/.
camp workitem --json exposes this lifecycle consistently for workflow workitems.
camp workitem validate / future repair flows do not flag top-level workflow workitem directories as missing an active status directory.
- Tests cover design, explore, custom workflow types, and dungeon/status exclusions.
Campaign intent mirror: .campaign/intents/inbox/treat-workflow-workitem-directories-as-20260616-210558.md
Context
Camp workitems under
workflow/<type>/<dir>/should follow workflow-style status semantics. They should not require an explicitactive/status directory just to be considered active.This came out of auditing campaign design workitems: directories directly under
workflow/design/are the natural active work surface, while dungeon/status subtrees remain explicit lifecycle locations.Request
Update camp workitem status handling so a workitem directory directly inside
workflow/<type>/is assumed to be active by location.Desired behavior
workflow/design/foo/,workflow/explore/bar/, and customworkflow/<type>/baz/workitem directories are treated as active workitems by default.workflow/<type>/active/<dir>/for these workflow workitems.active/directory for normal workflow workitems.Acceptance criteria
.workitemdirectory atworkflow/design/example/is reported as active without needingworkflow/design/active/example/.camp workitem --jsonexposes this lifecycle consistently for workflow workitems.camp workitem validate/ future repair flows do not flag top-level workflow workitem directories as missing an active status directory.Campaign intent mirror:
.campaign/intents/inbox/treat-workflow-workitem-directories-as-20260616-210558.md