docs(schema): EPIC-03 work items schema, API contract, and ADR-012#96
Merged
Conversation
Add migration 0002_create_work_items.sql with 6 tables: - work_items: core entity with status, dates, scheduling constraints - tags: user-defined labels for organizing work items - work_item_tags: many-to-many junction table - work_item_notes: free-form notes attributed to users - work_item_subtasks: ordered checklist items - work_item_dependencies: predecessor/successor relationships with 4 dependency types GitHub Wiki updated with: - Schema page: full EPIC-03 table documentation with rationale - API Contract: 19 endpoint specifications for work items, tags, notes, subtasks, dependencies - Architecture: pagination, filtering, and sorting conventions - ADR-012: Pagination, Filtering, and Sorting Conventions Fixes #87 Co-Authored-By: Claude product-architect (Opus 4.6) <noreply@anthropic.com>
Contributor
|
🎉 This PR is included in version 1.7.0-beta.21 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Contributor
|
🎉 This PR is included in version 1.8.0-beta.1 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
17 tasks
Contributor
|
🎉 This PR is included in version 1.8.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Designs the complete database schema, API contract, shared type specifications, and pagination conventions for EPIC-03 (Work Items Core CRUD & Properties). This is the architecture-only deliverable that all 8 implementation stories (#87-#94) build against.
Artifacts Produced
Source tree:
server/src/db/migrations/0002_create_work_items.sql-- 6 new tables with indexes and constraintsGitHub Wiki (already pushed):
work_items,tags,work_item_tags,work_item_notes,work_item_subtasks,work_item_dependenciesKey Design Decisions
prioritycolumn: Requirements specify Tags for custom organization. Users can create priority tags ("High Priority", "Critical") rather than being forced into a fixed enum.not_started,in_progress,completed,blocked. "Cancelled" omitted (delete achieves this). "On hold" mapped to "blocked" (better fit for construction).work_item_tagsorwork_item_dependencies.created_byon work_items: Tracks who created each item. Uses SET NULL on delete to preserve work items when users are removed.predecessor_id/successor_idas composite PK: Delete endpoint uses/:id/dependencies/:predecessorId.CIRCULAR_DEPENDENCYandDUPLICATE_DEPENDENCYadded to the ErrorCode union.Stories Supported
All 8 EPIC-03 stories can now be implemented against these contracts:
Test plan
npm run lintpassesnpm run format:checkpassesnpm run typecheckpassesnpm run buildsucceedsnpm test-- 614 tests pass🤖 Generated with Claude Code