Handbook
AFF domain reuse map (12A)
Do not create a second AFF schema. Extend forge360/domain/aff/ and forge360/models/aff.py.
Updated
Existing implementation
| Concept | Location | Tests |
|---|---|---|
| Pack catalog | domain/aff/packs.py, domain/aff/seed.py |
test_aff_pack_lint.py |
| Assembly engine | domain/aff/assembly.py |
test_aff_assembly.py |
| Cooldown | domain/aff/cooldown.py |
test_aff_cooldown.py |
| Coverage | domain/aff/coverage.py |
test_aff_coverage.py |
| PDP overrides | domain/aff/pdp_overrides.py |
test_aff_phase2.py |
| API | api/routes_aff.py |
mock-lab snapshot |
Pack identifiers (seeded)
Align with docs/framework/aff-v0.1/packs/ and Mock Lab fixture core.daily.signal, core.weekly.execution, pdp.follow_up, etc.
Gaps for Prompt 12 UI
- Tenant overlay authoring UI
- Coverage simulator visualization
- Exposure ledger admin view (fixture ledger often empty)
- Program builder wizard
Migration rule
New tables only via Alembic migrations; version tenant overlays without mutating historical survey items.