Skip to content

feat(modules): add Document module#17

Merged
arthur2jolly merged 1 commit intomainfrom
feature/module-document
Mar 22, 2026
Merged

feat(modules): add Document module#17
arthur2jolly merged 1 commit intomainfrom
feature/module-document

Conversation

@arthur2jolly
Copy link
Owner

Summary

  • New Document module attachable per project for LLM-consumable reference documents
  • 7 MCP tools: document_create, document_list, document_read, document_update, document_append, document_replace, document_delete
  • Content built incrementally via append, paginated in 2000-char chunks on read to respect LLM context limits
  • Summary capped at 2000 chars for lightweight listing
  • Artifact identifiers (PROJ-N) for cross-referencing in stories
  • Metadata: type (spec/note/research/reference/other), status (draft/published/archived), free-form tags

Test plan

  • 19 feature tests covering all 7 tools
  • Module activation enforcement tested
  • Role-based access control (viewer cannot create)
  • Content pagination verified (multi-page read)
  • Edge cases: empty content, long summary rejection, invalid type/status
  • PHPStan level 8 clean
  • Pint PSR-12 clean
  • Full suite: 434 tests passing

Attachable reference documents per project with LLM-optimized design:
- Summary field capped at 2000 chars for listing without context overflow
- Content built via append, paginated in 2000-char chunks on read
- Artifact identifiers (PROJ-N) for cross-referencing in stories
- 7 MCP tools: create, list, read, update, append, replace, delete
- Metadata: type (spec/note/research/reference/other), status, tags
- Module activatable per project via modules JSON column
@arthur2jolly arthur2jolly merged commit d41ed9b into main Mar 22, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant