From expropriation-law
Calculates critical-path duration with PERT/CPM for multi-task expropriation projects, models float against statutory deadlines, identifies zero-float bottlenecks, and generates Gantt schedules with three-point estimates.
How this skill is triggered — by the user, by Claude, or both
Slash command
/expropriation-law:expropriation-timeline-expertThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use this skill when you need to:
README.mdmodules/__init__.pymodules/critical_path.pymodules/dependencies.pymodules/output_formatters.pymodules/statutory_deadlines.pymodules/validators.pyproject_timeline_calculator.pyproject_timeline_input_schema.jsonsamples/sample_1_simple_acquisition.jsonsamples/sample_2_complex_corridor.jsonscripts/shared_utils/README_FINANCIAL_UTILS.mdscripts/shared_utils/__init__.pyscripts/shared_utils/financial_utils.pyscripts/shared_utils/land_assembly_utils.pyscripts/shared_utils/negotiation_utils.pyscripts/shared_utils/report_utils.pyscripts/shared_utils/risk_utils.pyscripts/shared_utils/schemas/comparable_sales_input_schema.jsonscripts/shared_utils/stakeholder_utils.pyUse this skill when you need to:
Critical path: Longest sequence of dependent tasks that determines minimum project duration.
Critical tasks: Tasks with zero total float (any delay directly extends project completion).
Total float: Amount of time a task can be delayed without extending project duration.
Free float: Amount of time a task can be delayed without delaying any successor.
Forward pass: Calculate earliest start/finish times
Backward pass: Calculate latest start/finish times
Float calculation:
Tasks:
Forward pass:
Backward pass:
Float:
Critical path: A → B → D (35 days)
PERT uses three time estimates to account for uncertainty:
Expected time (weighted average):
TE = (O + 4M + P) / 6
Standard deviation:
σ = (P - O) / 6
Variance:
σ² = ((P - O) / 6)²
Project variance (sum of critical path task variances):
Project σ² = Σ(critical path task variances)
Project standard deviation:
Project σ = √(Project σ²)
90% confidence interval (Z = 1.645):
Lower bound = Expected duration - 1.645 × Project σ
Upper bound = Expected duration + 1.645 × Project σ
95% confidence interval (Z = 1.960):
Lower bound = Expected duration - 1.960 × Project σ
Upper bound = Expected duration + 1.960 × Project σ
Task: Prepare expropriation plan
Expected time:
TE = (14 + 4×21 + 35) / 6 = (14 + 84 + 35) / 6 = 133 / 6 = 22.2 days
Standard deviation:
σ = (35 - 14) / 6 = 21 / 6 = 3.5 days
Variance:
σ² = 3.5² = 12.25
Interpretation: Task will take approximately 22 days, with ±3.5 days variability.
3-Month Registration Deadline (OEA s.9(2)):
Form 2 Service (Best Practice):
Form 7 Service (OEA s.11):
Buffer analysis:
Buffer = Statutory deadline - Task late finish
Risk levels:
Example:
JSON input structure:
{
"project_name": "Transit Station Property Acquisition",
"approval_date": "2025-03-15",
"tasks": [
{
"id": "A",
"name": "Obtain approval",
"duration": 30,
"optimistic": 20,
"most_likely": 30,
"pessimistic": 45,
"resources": {
"staff": 2,
"consultants": {"legal": 1},
"budget": 15000
}
}
],
"dependencies": [
["A", "B"]
],
"statutory_deadlines": {
"G": 90
},
"buffer_days": 10
}
Basic calculation:
python project_timeline_calculator.py sample_1_simple_acquisition.json
Specify output location:
python project_timeline_calculator.py input.json -o Reports/timeline_analysis.md
JSON output format:
python project_timeline_calculator.py input.json -f json -o results.json
Verbose output:
python project_timeline_calculator.py input.json -v
Markdown report includes:
For each task, specify:
Calculator computes:
Identify resource bottlenecks:
Mitigation strategies:
Total dependencies: Number of predecessor-successor relationships
Average dependencies per task: Total dependencies ÷ Total tasks
Dependency density: Total dependencies ÷ (Total tasks)²
Bottleneck tasks: Tasks with 3+ dependencies (predecessors or successors)
Finish-to-Start (FS): Successor starts after predecessor finishes
Start-to-Start (SS): Tasks start together
Finish-to-Finish (FF): Tasks finish together
Start-to-Finish (SF): Rare, successor finishes when predecessor starts
Note: Current calculator supports Finish-to-Start only. For other types, model as multiple FS dependencies.
1. Statutory Deadline Risk:
2. Critical Path No-Float Risk:
3. Long Duration Risk:
4. Dependency Bottleneck Risk:
Crashing the schedule (reduce critical path duration):
Fast-tracking:
Buffering:
Project: Transit station property acquisition (see samples/sample_1_simple_acquisition.json)
Key tasks:
Statutory deadline: Task G (registration) must complete by day 90.
Critical path: A → B → C → D → E → F → G
Project duration: 30 + 21 + 7 + 10 + 7 + 15 + 1 = 91 days
Problem: Critical path (91 days) exceeds statutory deadline (90 days) by 1 day!
Buffer: 90 - 91 = -1 day (CRITICAL risk)
Task B (Prepare plan):
Expected time: (14 + 4×21 + 35) / 6 = 22.2 days (vs. 21 deterministic)
Standard deviation: (35 - 14) / 6 = 3.5 days
Project with PERT estimates: ~92 days (expected)
Option 1: Crash critical path
Option 2: Fast-track
Option 3: Parallel work streams
Recommended: Combination of Options 1 and 2 to achieve 85-day completion (5-day buffer).
Complementary skills:
expropriation-statutory-deadline-tracking:
expropriation-compensation-entitlement-analysis:
land-assembly-expert:
Calculator follows PDF → JSON → Python → Report pattern:
No manual intervention required - fully automated from input to report.
Argument hint: <project-milestones-json> [--output <report-path>]
Required tools: Read, Write, Bash
Canonical invocation (how the slash command passes user input):
python plugins/expropriation-law/skills/expropriation-timeline-expert/timeline_generator.py {{arg0}}
Usage examples:
# Generate timeline
/expropriation-timeline project_milestones.json
# Custom output path
/expropriation-timeline samples/transit_corridor_timeline.json --output $CLAUDE_PROJECT_DIR/Reports/timeline.md
Related commands: /briefing-note (include timeline in executive briefing), /board-memo (include timeline in board approval memo), /land-assembly (multi-parcel timeline with phasing)
Related agents: Stevi (compliance and deadline watchdog), Christi (legal procedures), Katy/Shadi (project planning)
Current implementation:
For advanced features:
npx claudepluginhub reggiechan74/vp-real-estate --plugin expropriation-lawCalculates Form 1/2/7 service windows and tracks the 3-month registration deadline under OEA s.9. Manages approval-expiry risk with green/yellow/orange/red/critical escalation protocols.
Generates interactive Gantt charts, critical paths, and what-if delay scenarios from dependency-tagged task plans. Flags near-critical tasks, shows program impacts, drafts communications, and provides filtered workstream views.
Plans multi-parcel land assembly for transit corridors, highways, transmission lines, pipelines, or mixed-use developments. Scores acquisition priorities, models phasing strategy and holdout risk, builds budgets with contingencies, and quantifies cost of delay.