ADR 0010 — CCF tree is inventory, not a package cut
Status: accepted
Date: 2026-09-20
Completes: WP-10
Context
AFIA-resources/arborescence.pdf lists 15 CCF modules and hundreds of screens. Stitch zips for the five priority modules are in AFIA-resources. ADR 0002 already mapped those five Stitch projects to four backend packages plus identity. A later agent could treat each CCF module as a Java package or a Flutter app.
Decision
The CCF tree is a screen catalog. It does not change bounded contexts.
- Modules 01 through 05 are
horizon=now. Their screens live inmanifest/ccf-tree.tsv. - Modules 06 through 15 are
horizon=later. They have no work package and no Java package. - Imaging and lab stay
health.afia.app.diagnosticswithkind. The client is oneafia-appdiagnostics shell. - Hubs and international screens that sit under Admin in the PDF stay Admin IA. They do not create a Hubs package.
- A zip folder is recorded only when that folder exists and contains
screen.png. A CCF name with no zip match stays empty. Do not invent screens.
F-01 (consult a clinician) is no longer stitch-blocked. The Patient zip contains recherche_de_m_decin_mobile_afia.
Consequences
- Product pages stay situation guides for the five roles plus account.
- Later modules appear under Tech and Agent only.
python3 ai-agent/scripts/list-ccf-zips.py --writerefreshes the TSV. The pack checker fails if a now-row is missing or a later-row claims a zip or a work package.- Feature code still waits for an explicit ask and for WP-00.
- Jira release labels for this inventory cut are defined in ADR 0014 (
Now↔v1,Later↔v2).