Files
acdl/.ciagent/PERSONAS.md
T
CIAgent 18b403fcd8 docs(P00): research findings + persona assessment
---ci---
project: acdl
phase: 0
milestone: v1.30
status: research
---/ci---
2026-08-20 13:16:33 +00:00

4.8 KiB
Raw Blame History

project, milestone, generated_at, generator, verification_toolchain
project milestone generated_at generator verification_toolchain
acdl v1.30 2026-08-20 lead-developer
typecheck test lint note
python3 -m py_compile scripts/render_pptx.py 2>&1 | head -5 || true bash scripts/check_leadership_deck.sh 2>&1 | tail -20; echo "exit=$?" python3 -c "import pptx; print('python-pptx', pptx.__version__)" 2>&1 v1.30 is a single-shot presentation artifact milestone (Leadership Deck). Four active personas: lead-developer (coordination + STATE.md CAP-042 + PROJECT.md D-241), backend-engineer (render_pptx.py extension + PPTX render + python-pptx install), ci-doc-writer (custom, phase-specific — Marp markdown deck authoring), ci-cli- engineer (custom — smoke-test script). frontend-engineer + data-engineer + security-engineer deactivated (no UI, no data pipelines, no runtime security surface — the deck is a static artifact). The render_pptx.py extension (D-242) is the only code change; it is a narrow prerequisite, not a REQ-372 deliverable.

Personas — v1.30 Single-shot Leadership Deck

Roster

lead-developer

active: true
domain: "Milestone coordination, STATE.md CAP-042, PROJECT.md D-241 record, ship discipline"
frameworks: []
constraints: ["pragmatic", "battle-tested defaults", "D-241", "D-242", "D-243"]
territory:
  - ".ciagent/STATE.md"
  - ".ciagent/PROJECT.md"
  - ".ciagent/CHECKPOINT.json"
  - ".ciagent/REQUIREMENTS.md"
  - ".ciagent/ROADMAP.md"
reason: "Owns the ship-wave records (CAP-042, D-241) and milestone coordination. The deck is a single-shot artifact; the lead-developer ensures the STATE.md/PROJECT.md records are appended correctly at ship."

backend-engineer

active: true
domain: "scripts/render_pptx.py extension (path arg + custom output + footer textbox), PPTX render, python-pptx install"
frameworks: ["Python 3.11", "python-pptx 1.0.2", "pip"]
constraints: ["D-242", "narrow extension only", "no new renderer", "S&P theme tokens only in source"]
territory:
  - "scripts/render_pptx.py"
  - "docs/presentations/nova-leadership-deck.pptx"
reason: "Owns the narrow render_pptx.py extension (D-242) and the PPTX render. Frameworks overridden from fastify/hono (default) to python-pptx (actual project dependency for this milestone). The extension is a non-REQ-372 prerequisite per spec §3.3 Edge 2."

ci-doc-writer

active: true
phase_specific: true
domain: "Marp markdown deck authoring (7 slides, speaker notes, [1] citations, S&P theme)"
frameworks: ["Marp", "Markdown"]
constraints: ["REQ-372.1", "REQ-372.3", "REQ-372.4", "REQ-372.6", "REQ-372.7", "REQ-372.9", "REQ-372.12", "D-241", "D-243"]
territory:
  - "docs/presentations/nova-leadership-deck-marp.md"
reason: "Custom persona for presentation authoring. Created for P1 (the deck is the primary deliverable). Removed after P1 ships. The deck is hand-authored against the Slide Content Map in PROJECT.md §v1.30 — NOT a compression (D-241)."

ci-cli-engineer

active: true
domain: "Smoke-test script (bash, runnable on demand, NOT a CI gate)"
frameworks: ["Bash", "grep", "awk", "wc"]
constraints: ["REQ-372.8", "not a CI gate", "exit 0 on pass", "non-zero on fail"]
territory:
  - "scripts/check_leadership_deck.sh"
reason: "Custom persona for the smoke-test script. Owns the 6 assertions (af): file exists, slide count=7, word bands, footer string, S&P colors only, PPTX exists. Pure bash — no python dependency (keeps it runnable without the python-pptx install)."

Deactivated

frontend-engineer

active: false
reason: "ACDL has no frontend (no package.json); the deck is markdown (ci-doc-writer territory). Already deactivated in config.json personas[3]."

data-engineer

active: false
reason: "No schema/migration/data-pipeline work in v1.30. The milestone is a single-shot presentation artifact."

security-engineer

active: false
reason: "No runtime security surface in v1.30. The deck is a static artifact; the existing security posture (ABAC, KMS, JWKS) is referenced in slide content, not modified. Security review of the deck content is handled by the verify stage (no secrets, no publish.yml integration)."

Phase-specific persona lifecycle

  • ci-doc-writer: created for P1, removed after P1 ships. The deck source is the deliverable; no further presentation authoring in P2 (final review only).
  • All other personas persist through P2 (final review + ship).

Territory enforcement

  • Mode: warn (per config.json personas.territory_enforcement).
  • Note: v1.30 has a small, non-overlapping territory surface. lead-developer owns .ciagent/STATE.md + .ciagent/PROJECT.md; backend-engineer owns scripts/render_pptx.py + the PPTX; ci-doc-writer owns the markdown source; ci-cli-engineer owns the smoke-test script. No territory conflicts expected.