Generate EDPA timesheets, reports, and exports. Produces per-person MD/JSON reports, per-item cost allocation, PI summaries, Excel exports, and frozen snapshots. Use when user asks for "reports", "výkazy", "export", "snapshot", or "per-item analysis". Requires edpa-engine results (edpa_results.json) as input.
Generates all EDPA output artifacts from engine results: per-person timesheets (MD+JSON), per-item cost allocation, frozen snapshots, PI summaries, and Excel exports.
$ARGUMENTS = iteration ID, or "pi" for PI-level aggregation, or "per-item {item_id}" for single item analysis.
If $ARGUMENTS is empty, blank, or "help":
.edpa/config/edpa.yaml and extract pi.iterations.edpa/reports/iteration-{ID}/edpa_results.jsonAvailable iterations:
PI-2026-1.1 [closed] 1.4–14.4 results: yes
PI-2026-1.2 [closed] 15.4–28.4 results: yes
PI-2026-1.3 [closed] 29.4–12.5 results: yes
PI-2026-1.4 [active] 13.5–26.5 results: no (run engine first)
PI-2026-1.5 [planned] 27.5–9.6 (IP)
Other options:
"pi" PI-level aggregation across all closed iterations
"per-item {item_id}" Cost allocation for a single item (e.g., "per-item S-200")
closed iteration that has edpa_results.json..edpa/config/edpa.yaml does not exist, inform user to run /edpa setup first..edpa/reports/iteration-{ID}/edpa_results.json exists (run edpa-engine first).edpa/config/people.yaml existsFor each person, generate:
Markdown report (vykaz-{person}.md):
# VÝKAZ PRÁCE — {name}
Projekt: {project_name}
Registrace: {registration}
Období: {iteration} ({dates})
Kapacita: {capacity}h ({fte} FTE)
Metodika: EDPA 1.0.0-beta ({mode})
| Item | Typ | JS | CW | Score | Podíl | Hodiny |
|------|-----|----|----|-------|-------|--------|
| {rows} |
| **CELKEM** | | | | **{sum}** | **100%** | **{total}** |
Snapshot: {iteration}.json
Podpis (BankID): ☐ Čeká na podpis
JSON report (vykaz-{person}.json):
Include all fields from edpa_results.json for this person plus project metadata and signature status.
For each item with ≥ 2 contributors:
ItemShare[P] = DerivedHours[P, item] / Σ DerivedHours[*, item]
Output hierarchically: Epic → Feature → Story with contributor breakdown per level.
Write to .edpa/reports/iteration-{ID}/item-costs.xlsx.
Write to .edpa/snapshots/iteration-{ID}.json:
{
"snapshot_version": "1.0.0-beta",
"iteration": "{id}",
"generated_at": "ISO-8601",
"frozen": true,
"methodology": "EDPA 1.0.0-beta",
"capacity_registry": { "...from config..." },
"edpa_results": { "...from engine..." },
"signature_status": "pending"
}
FREEZE RULE: Once written, snapshot is immutable. Corrections create new revisions with incremented version suffix.
When $ARGUMENTS = "pi":
.edpa/reports/pi-{ID}/pi-summary.xlsxUse openpyxl to create formatted XLSX:
import openpyxl
# Create workbook with sheets: Summary, Per-Person, Per-Item, Validation