Skip to content

Add mcp add project#1

Open
MicroProofs wants to merge 7 commits intomainfrom
add-mcp-add-project
Open

Add mcp add project#1
MicroProofs wants to merge 7 commits intomainfrom
add-mcp-add-project

Conversation

@MicroProofs
Copy link
Collaborator

No description provided.

- Add project and epic_id columns to todo entity
- Add ProjectFilter enum for list filtering (Any/Equals/IsNull)
- Implement project inheritance from epic with validation
- Block deletion of epics that have children
- Add self-reference check for epic_id
- Add CLI flags: --project/--epic for add, --project/--no-project for list
- Add TUI detail view fields for project and epic with error feedback
- Add 13 unit tests for project/epic logic
- Add scroll_offsets to CursorState and BacklogCursor for column scrolling
- Add ensure_visible() to auto-scroll keeping cursor in viewport
- Clamp scroll offsets in sync_after_refresh to prevent stale state after deletes
- Add bounds check in CursorState::ensure_visible to prevent panics
- Improve detail view error handling with specific messages for title/date/notes
- Clone UiMode to fix borrow checker issues with mutable draw methods
Defensive hardening for extreme terminal sizes where visible_rows
could be 0, preventing potential issues in scroll calculations.
- Add TodoError typed errors with is_client_error() for MCP error classification
- Introduce McpTool trait (ATPIT) to eliminate repetitive handler dispatch
- Support epic_id linking with project inheritance from parent epics
- Block deletion of epics with children, prevent self-referencing
- Add project/noProject/epicId filtering to list operations
@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Dec 18, 2025

Deploying mach with  Cloudflare Pages  Cloudflare Pages

Latest commit: 88ff0f8
Status: ✅  Deploy successful!
Preview URL: https://af4a4f9a.mach-76x.pages.dev
Branch Preview URL: https://add-mcp-add-project.mach-76x.pages.dev

View logs

Replace nullable union types with simple types per MCP 2025-11-25 spec. Optionality is expressed via the required array, not type unions. This fixes potential client compatibility issues with Cursor, Gemini, and MCP Inspector.
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