refactor(app-creator,app-factory): rescope to phase-based brief-pipeline model

app-creator omdefinert som 7-fase pipeline (intervju → research → arkitektur
→ designsystem → constraints → features → briefer per feature) som produserer
Voyage-kompatible briefer. Brief-handover er filoverlevering, ikke
runtime-kobling.

Tidligere scope (lokal hjelper-prosess som eksekverer Voyage-kommandoer fra
HTML) er parkert — den brøt Voyages v4.3-modell (ingen kommando-utførelse
fra HTML) og var symptom av ikke-skarpt definert scope.

app-factory tilsvarende rescope: leser app-state, eksekverer ingenting.
Operatørens handling er context-switch til riktig app-creator-instans.

alignment-brief Funn 3 omskrevet fra hjelper-prosess-API til
brief-handover-format. Hard invariant lagt inn: runtime-kobling mellom
lagene er forbudt — alt går via filer.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Kjell Tore Guttormsen 2026-05-10 10:43:01 +02:00
commit 89943dcb72
4 changed files with 57 additions and 36 deletions

View file

@ -8,28 +8,30 @@ Pre-design. Ingen aktivt arbeid. Repoet eksisterer som tenke-rom inntil forutset
Forutsetninger før implementering kan starte:
- [ ] Én reell iOS app drevet manuelt gjennom tre-lags-mønsteret med håndholdte filer og Voyage som engine
- [ ] Én reell iOS app drevet manuelt gjennom hele app-creator → Voyage-pipelinen — håndholdte fase-artefakter, briefer skrevet for hånd, Voyage konsumerer dem
- [ ] Friksjons-data fra prototypen er sammenstilt og dokumentert
- [ ] State-format og hjelper-prosess-kontrakt er observert i bruk, ikke bare designet
- [ ] Brief-handover-format mot Voyage er observert i praksis (round-trip-testet på reell brief), ikke bare designet
- [ ] App-state-format er observert i bruk
- [ ] Pre-brief skrevet basert på det observerte mønsteret
iOS er det konkrete testtilfellet, ikke et tilfeldig domene-valg — det er der friksjonen som rettferdiggjør app-creator faktisk oppstår (Xcode-prosjekter, simulator, code-signing, TestFlight).
iOS er det konkrete testtilfellet, ikke et tilfeldig domene-valg — det er der friksjonen som rettferdiggjør app-creator faktisk oppstår (Xcode-prosjekter, simulator, code-signing, TestFlight, App Store-constraints, HIG-baserte designsystem-beslutninger).
## Later
- Levende arkitektur-fil som oppdateres når features lukkes
- Feature-kø med dependency-pekere mellom features
- Lokal hjelper-prosess (localhost-only) som broer HTML-grensesnitt til Voyage-CLI
- State-modell som kategoriserer menneske-vurderings-typer
- Strukturert state-eksport som app-factory kan aggregere
- **Fase-engine** som sekvenserer intervju → research → arkitektur → designsystem → constraints → features → briefer
- **Fase-artefakter** med eksplisitt kontrakt mellom fasene (output fra én er input til neste)
- **Brief-generator** som produserer Voyage-kompatibel `brief.md` med riktig frontmatter (Handover 1)
- **Levende arkitektur-fil** som oppdateres når Voyage-kjøringer avslører nye constraints
- **Feature-backlog** med dependency-pekere mellom features (output fra fase 6)
- **App-state-eksport**: hvor er vi i fase-pipelinen, hvilke briefer er sendt til Voyage, hvilke har returnert, hvilke venter på menneske-beslutning — strukturert slik at app-factory kan aggregere
### v0.4.0-milepæl
v0.4.0 er versjonen som låser kontraktene app-factory bygger på (se `../app-factory/docs/alignment-brief.md` Funn 4). Definisjonen er fastsatt nå (intensjon, ikke implementering — innholdet låses når prototypen viser hva som faktisk fungerer):
v0.4.0 er versjonen som låser kontraktene som krysser lag-grenser (se `../app-factory/docs/alignment-brief.md` Funn 2-4). Definisjonen er fastsatt nå (intensjon, ikke implementering — innholdet låses når prototypen viser hva som faktisk fungerer):
- [ ] State-eksport-schema låst og dokumentert
- [ ] Hjelper-prosess-API låst og dokumentert
- [ ] Minst én iOS app drevet til shipping gjennom systemet
- [ ] Brief-handover-format mot Voyage låst og dokumentert (Voyage-kompatibel brief.md med frontmatter, round-trip-testet)
- [ ] App-state-eksport-schema låst og dokumentert (fase-status, feature-backlog, brief-pipeline-status, Voyage-runs-status)
- [ ] Minst én iOS app drevet til shipping gjennom systemet (≥5 features fra brief til ferdig)
- [ ] Friksjons-data fra produksjons-bruk dokumentert som forutsetning for app-factory-design
Disse er forutsetninger, ikke deadlines. Hvis prototypen tar lengre tid blir milepælen stående — den skal ikke presse fram låsing før kontraktene er reelle.
@ -38,6 +40,7 @@ Disse er forutsetninger, ikke deadlines. Hvis prototypen tar lengre tid blir mil
- **Per-task pipeline-disiplin.** Tilhører lag 1 (Voyage). Hvis app-creator trenger noe Voyage ikke gir, er det en arkitektur-feil — ikke en grunn til å duplisere Voyages ansvar.
- **Multi-app portefølje-styring.** Tilhører lag 3 (app-factory). app-creator kjenner én app om gangen.
- **Eksekvering av Voyage fra app-creator.** Briefer er filoverlevering. Voyage kjøres separat. Tidligere idé om "lokal hjelper-prosess som kjører Voyage-kommandoer fra HTML" er parkert — bryter Voyages v4.3-modell (ingen kommando-utførelse fra HTML) og var symptom av ikke-skarpt definert scope.
- **Modifikasjoner av Voyage.** Voyage er CLI-kallbart, og det er den eneste integrasjonen. Voyage vet ikke om app-creator finnes — den asymmetrien er bevisst.
- **Autonome loops uten human-in-the-loop.** Solo-først per design.
- **Linear/Jira-erstatning.** Bruk eksisterende verktøy. app-creator orkestrerer én app, den dupliserer ikke generell project management.