Skip to content

[Work model] Add Task, Epic and Spike across card edit, review and portability #2946

Description

@Chris0Jeky

Parent: #2087. ADR-0060 already accepts Task, Epic and Spike, with existing cards defaulting to Task. True archive/restore prerequisite #2920 shipped in #2932. Current main 19dc823 has no work-item type.

Deliver one useful card-type vertical before editable hierarchy:

  • Add WorkItemType with exactly Task/Epic/Spike, additive migration and tested down path. Existing card IDs, placement, labels, block/archive state and history remain intact; omitted old-client/import fields mean Task on create and unchanged on update.
  • Expose authorized direct-human create/edit and a proposal-only automation change with explicit preview, approve/apply, old/new audit and receipt presentation. Invalid enum values fail with stable 400; stale edits, readonly board/card state and denied writers fail without mutation. Proposal preview and apply share validation.
  • Preserve type in board JSON import/export (including archived cards), buffered/streamed account export, API/MCP reads and realtime-driven refetch. Imported cards keep the existing fresh-ID policy. No new identity/authority transport.
  • Provide a shared accessible type selector/read presentation for Paper and Legacy card details, with errors and stale-write recovery. Existing automation operations lacking type retain their previous meaning.
  • Prove domain/application/API, migration/rollback/portability, proposal/MCP authorization, frontend and one real-API browser round trip with synthetic data; typecheck/build/lint and architecture/docs gates.

Non-goals: parent fields/commands, graph validators or dormant hierarchy scaffolding; subtree cascade; assignments/estimates/relations; inference from capture action/decision/question. Those are separate axes. #2087 remains open for its complete parent vertical, including three-links/four-levels, default child detach and reviewed graph drift protection.

Implementation may use existing create/update contracts or a narrow explicit type operation after source inspection; it must not permit direct agent writes. Canonical strategy is unchanged. PR #2937 leases PaperBoardView.vue, and #2931 leases TESTING_GUIDE/package/lockfile; avoid those paths.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority IIIValuable but unscheduled: residuals, tech-debt, performance, depth work.backendPrimary implementation impact in .NET API/domain/application/infrastructure.featureUser-facing functionality delivery slices (new capabilities or clear product-surface enhancements).frontendPrimary implementation impact in Vue/TypeScript UI and client runtime.

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions