app-creator/ROADMAP.md
Kjell Tore Guttormsen 2e941dd785 feat(app-creator,app-factory): lock three-tier HTML architecture, tool-agnostic invariant
Tre-tier HTML-modell låst som endelig arkitektur:
- Tier 1: Voyage Plugin Playground (per-feature, v4.3+)
- Tier 2: app-creator per-app HTML (per-app, fase-progress + alle artefakter + attention)
- Tier 3: app-factory portefølje-HTML (per-portefølje, alle apper + klikk-til-terminal)

Hver tier har samme arkitektoniske form: AI skriver state i filer, tynt HTML
rendrer, menneske handler i terminal. Ingen backend, ingen RPC, ingen vendor-
låsing.

Verktøy-agnostisk lagt inn som HARD invariant: app-factory må fungere uten
Linear/Jira/Asana/etc. Tredjeparts sync-plugins er opt-in og additivt.
Tidligere Linear-overlag-modell forkastet.

Ny: app-factory/docs/architecture-brief.md (~190 linjer) som låser
arkitektur-invariantene og dokumenterer tekniske spørsmål som må avklares
ved /trekbrief.

Oppdatert i begge plugins:
- CLAUDE.md med tier-language, verktøy-agnostisk-grense, HTML-invarianter
- README.md med tre-tier-pitch
- ROADMAP.md med per-app HTML / portefølje-HTML i Later, sync-plugin-arkitektur
- CHANGELOG.md med arkitektur-låsing dokumentert
- alignment-brief.md: Funn 5 oppdatert (klikk-til-terminal er manuell, ikke autonom),
  ny non-goal om eksterne PM-verktøy som kjerne-avhengighet

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-10 16:16:20 +02:00

3.9 KiB

Roadmap

Now

Pre-design. Ingen aktivt arbeid. Repoet eksisterer som tenke-rom inntil forutsetningene under "Next" er oppfylt.

Next

Forutsetninger før implementering kan starte:

  • É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
  • 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, App Store-constraints, HIG-baserte designsystem-beslutninger).

Later

  • 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)
  • Per-app HTML (single-file, polling, vendored DS — gjenbruker v4.3-mønstre): fase-progress, alle artefakter, attention per app, drill-down til Voyage Plugin Playground per feature. Se ../app-factory/docs/architecture-brief.md Tier 2.
  • 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 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):

  • 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)
  • Per-app HTML klar (renderer alle fase-artefakter, fase-progress, attention per app, og drill-down til Voyage Plugin Playground)
  • 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.

Parked

  • 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.
  • Innebygd Linear/Jira/Asana-integrasjon. Verktøy-agnostisk er hard invariant. Tredjeparts sync-plugin er opt-in mulighet, ikke kjerne.
  • Autonome loops uten human-in-the-loop. Solo-først per design.
  • Linear/Jira-erstatning. Bruk eksisterende verktøy via opt-in sync-plugin hvis ønskelig.