2.9 KiB
Agent Foundation Implementation Plan
For agentic workers: Use superpowers:executing-plans to implement this plan inline, task by task.
Goal: Establish the approved contributor guidance and privacy boundaries.
Architecture: Keep AGENTS.md concise and authoritative. Separate product, architecture, data policy, and delivery sequence into linked documents.
Tech Stack: Markdown and Git; the application will use Python, Django, PostgreSQL, Docker Compose, and pytest.
Spec: Approved foundation design.
Global constraints
- The project is named Gizmoduck and is the clean successor to Robopato.
- The backend uses Python and Django.
- Persistent storage uses PostgreSQL with migrations from the beginning.
- Local infrastructure uses Docker Compose.
- Automated tests use pytest.
- Bank-account transactions are imported from CSV.
- Credit-card transactions are imported from Banco do Brasil/Ourocard TXT.
- OFX is not supported.
- Parsing, normalization, validation, duplicate detection, preview, and persistence remain separate stages.
- Real financial data and secrets must never enter Git.
- Preserve existing README and ignore-file content while making targeted updates.
Task 1: Publish contributor and project guidance
Files: Create AGENTS.md, docs/product.md, docs/architecture.md, docs/data-policy.md, docs/roadmap.md; update README.md.
Interfaces: Consumes the approved spec; produces linked contributor policy.
- Write AGENTS.md with binding constraints, reading order, operating rules, local commit identity, and links to the four project documents.
- Write product scope and exclusions, architecture boundaries, permitted Robopato access and local-data locations, and milestone acceptance criteria.
- Link the documents from README and align its architecture language with the approved binding choices.
- Check that every relative Markdown link resolves and review all documents against the approved spec for contradictions and unresolved policy choices.
Task 2: Verify data exclusions and readiness
Files: Update .gitignore only where approved protections are missing.
Interfaces: Consumes data-policy locations; produces Git exclusion rules.
- Exclude raw financial CSV/TXT/PDF and database dump formats, keeping explicitly synthetic fixture paths trackable. Preserve existing rules.
- Use git check-ignore with representative paths under each local-data directory, secret and dump formats, and synthetic fixtures. Confirm raw data is ignored and synthetic fixtures remain trackable without creating real data.
- Run git diff --check; verify repository-local user.name and user.email equal Codex and codex@localhost; inspect changed files for secrets/data.
- Report the completed foundation and next application-skeleton milestone. Leave existing user edits and new documents available for review locally.