Add computed driving flag to all relationship queries (list_relationships, get_predecessors, get_successors). A relationship is marked as driving when the predecessor's early end date plus lag determines the successor's early start date. Changes: - Add early_start_date and early_end_date columns to activities schema - Parse early dates from TASK table in XER files - Implement is_driving_relationship() helper with 24hr tolerance for calendar gaps - Update all relationship queries to compute and return driving flag - Add contract and unit tests for driving flag functionality - Update spec, contracts, and documentation
32 lines
775 B
Markdown
32 lines
775 B
Markdown
# xer-mcp Development Guidelines
|
|
|
|
Auto-generated from all feature plans. Last updated: 2026-01-06
|
|
|
|
## Active Technologies
|
|
- SQLite in-memory database (001-schedule-tools)
|
|
|
|
- Python 3.14 + mcp (MCP SDK), sqlite3 (stdlib) (001-schedule-tools)
|
|
|
|
## Project Structure
|
|
|
|
```text
|
|
src/
|
|
tests/
|
|
```
|
|
|
|
## Commands
|
|
|
|
cd src [ONLY COMMANDS FOR ACTIVE TECHNOLOGIES][ONLY COMMANDS FOR ACTIVE TECHNOLOGIES] pytest [ONLY COMMANDS FOR ACTIVE TECHNOLOGIES][ONLY COMMANDS FOR ACTIVE TECHNOLOGIES] ruff check .
|
|
|
|
## Code Style
|
|
|
|
Python 3.14: Follow standard conventions
|
|
|
|
## Recent Changes
|
|
- 001-schedule-tools: Added Python 3.14 + mcp (MCP SDK), sqlite3 (stdlib)
|
|
|
|
- 001-schedule-tools: Added Python 3.14 + mcp (MCP SDK), sqlite3 (stdlib)
|
|
|
|
<!-- MANUAL ADDITIONS START -->
|
|
<!-- MANUAL ADDITIONS END -->
|