Files
boc/workcamp/VOL4-Strategic-Decisions.md
T

142 lines
20 KiB
Markdown
Raw Normal View History

# AMOS Development Workcamp 2026
# Volume 4: Strategic Decision Register
# Period: 2026-06-04 2026-06-07 (intensiv fas)
# Genererat: 2026-06-07 | Klassifikation: INTERN KONFIDENTIELL
---
## INLEDNING
Detta register dokumenterar samtliga strategiska beslut som fattades under AMOS Workcamp 2026, med
fokus på den intensiva fasen 47 juni. Varje beslut presenteras med datum, resonemang, övervägda
alternativ, förväntat utfall och ägarskap. Register följer Claude × Siemens-beslutslinsens krav på
transparens och reproducerbarhet.
**Format:** Varje beslut är spårbart till MEMORY.md, dagliga loggar eller explicita direktiv från Erik.
---
## BESLUTS-REGISTER
| # | Datum (UTC) | Beslut | Resonemang | Alternativ som övervägdes | Förväntat utfall | Ägare | Uppföljningsstatus |
|---|-------------|--------|------------|--------------------------|------------------|-------|-------------------|
| SD-001 | 2026-06-06 20:23 | Claude × Siemens-beslutslinsen låst som överordnat filter | Erik: "Tänk alltid som att du företräder Claude och Siemens i ett samarbete." Behov: entydig beslutsgrund som inte kolliderar med snabbhet vs. kvalitet. | A) Enbart Eriksdirektiv, B) ISO 42001 som ensam grund, C) Claude×Siemens syntes (VALT) | Alla framtida val passerar dubbelt filter: Claude (ärlighet, säkerhet) + Siemens (ingenjörsdisciplin, governance). Reducerar ad-hoc-beslut. | Erik | LÅST Gäller alla framtida workcamp och systemarbete |
| SD-002 | 2026-06-06 (kväll) | Graderad modell-orkestrering: ESLM → Qwen → Claude Opus | Tidigare Opus-på-allt var kostsamt. Erik: "Poliskontroll tyngsta modellerna för sista grind." Qwen-32B som domare visades för svag (trodde "PASS" = EU-direktiv). | A) Opus på allt (dyrt), B) Qwen på allt (osäkert), C) Graderad ESLM→Qwen→Opus (VALT) | ~90% kostnadsbesparing vs. Opus-på-allt. Korrekt riskviktning: Opus grindar bara där felen är dyra (pengar ut, modell-promotion, P1-mail). | Erik/Johan | IMPLEMENTERAD ai-gateway med fallback-kedjor live |
| SD-003 | 2026-06-06 22:40 | Separation of weights & facts (arkitekturprincip, kanonisk) | Leon/Vincento-incidenten visade att företagsdetaljer bränt in i modellvikter är ett säkerhetsproblem (kan ej ändras utan omträning). Erik: "Vår AI-modell ska ALDRIG bära detaljdata för vårt bolag." | A) Företagsfakta i vikter (hittills, KASSERAT), B) Fakta via RAG/CANON vid runtime (VALT) | Ingen faktaläcka via vikter. Fakta ändras utan omträning. ESLM blir återanvändbar/säljbar generell motor. | Erik | LÅST Kanonisk arkitekturprincip |
| SD-004 | 2026-06-07 00:28 | Namnkanon för AAMOS-komponenter låst (ALETHEIA/MNEMOSYNE/HEPHAISTOS/AZOTH) | Erik: "Namnen ska verkligen sitta i tidigt skede." Mytologisk familj som rimmar med Ouroboros/Homo Deus. Hermes döptes om för att undvika kollision med Nous Hermes och Hermes message bus. | A) Fortsätta med ESLM/RAG/Hermes/Router (generiska), B) Egennamn från grek/lat mytologi (VALT) | Tydlig kommunikation, ingen namnkollision i tränings- eller minnesdata, starkare produktidentitet. | Erik | LÅST MEMORY.md + AAMOS_CANON.md |
| SD-005 | 2026-06-07 13:45 | quiXzoom-lansering skjuts: 15 juni → 1 augusti 2026 | Erik beslutade datum. Orsak ej fullt dokumenterad men troligt: iOS-blockers ej lösta (APNs .p8-nyckel, App Store submission saknas), system-härdning ej klar. | A) Håll 15 juni (blockers kvarstår, riskabelt), B) 1 aug (VALT, tid för blockers) | Tid för att lösa Apple-blockers (QZ-IOS-001/002), slutföra EKS-migration, stabilisera AI-provider-failover. | Erik | GENOMFÖRT Alla quiXzoom-ytor uppdaterade till 1 aug 2026 |
| SD-006 | 2026-06-07 (start) | LandveX = infrastrukturkontroll, INTE bostad (kanonisk definition låst) | ESLM och produktionschatten svarade att LandveX säljer bostäder ett allvarligt faktafel med kundpåverkningsrisk. Rättning krävdes på alla nivåer: CANON, träningsdata, produktionschat, landing page. | A) Låt felaktig def leva (oacceptabelt), B) Rätta CANON + data + chat + HTML (VALT) | Systemet svarar korrekt om LandveX. Träningsdata v4/v5 fri från proptech-kontamination. Kundmöten riskfria. | Erik/Bernt | GENOMFÖRT CANON uppdaterad, wavult-facts.mjs rättad, bostad-HTML neutraliserad |
| SD-007 | 2026-06-04 (natt) | Prismodell Flow+: revenue-share baserat på flöde (omsättning), INTE vinst | Erik: "Det ska inte märkas, precis som Stripe, allt i realtid." Vinst är opålitlig bas (mänskliga faktorer i serviceföretag). Flöde speglar värde + kostnad ärligare. | A) Flat fee (förutsägbart men låst), B) Vinst-share (opålitligt), C) Flöde-share (VALT) | Osynlig avgift som inte upplevs som kostnad. Skalbar med kunden. Ouroboros: 0,15% av omsättning, tak 1,5 MSEK/år. | Erik | BESLUTAD Prismodell A live via /api/qz/payments/fees |
| SD-008 | 2026-06-04 (natt) | Hybrid on/off-platform-strategi (tvinga ingen, locka med smidigare on-platform) | Erik: "Måste bygga en hybrid. Låt folk ha egna system men vill få dem mer in i plattformen." Off-platform (SIE4-batch) finns för de som vill ha eget. On-platform (Stripe-rail, osynligt) ska vara så smidigt att off-platform känns dumt. | A) Kräv all trafik via oss (tvångsmässig), B) Acceptera off-platform utan morot, C) Hybrid med morot (VALT: on-platform 0,12%, off 0,15%) | Gradvis migration in på plattformen. Sänker friktionen för on-boarding. Revenue-share ökad från off-platform-kunder. | Erik | BESLUTAD Flow+ #1c-paketet (väntar Eriks slutgodkännande ja/nej) |
| SD-009 | 2026-05-14 | Ansvarsfördelning fastställd | Erik Svensson = ensam ekonomiskt ansvarig och firmatecknare. Winston Bjarnemark (Junior Scholarship, 17 år) stödjer under Eriks mentorskap utan ekonomisk behörighet. | — | Tydlig governance-struktur. Erik ansvarig för alla ekonomibeslut. | Erik | Gäller |
| SD-010 | 2026-06-05 (natt) | Enterprise-resiliens: Multi-AZ RDS + ALB + host-2 (kostnad godkänd) | Erik: "Vi har inte alternativ inför lansering." Audit avslöjade kritiska SPOF: en host, single-AZ RDS, db.t4g.small för liten, ingen AI-failover. | A) Behåll single-AZ (billigare men risky), B) Multi-AZ + ALB + host-2 (VALT, Erik godkände) | RTO db-failover: timmar → 60120s. Kapacitet: 2GB → 16GB RAM. 2 healthy targets i ALB. Webhook-idempotens säkrad. | Erik/Johan | GENOMFÖRT RES-001/003/004 alla klara |
| SD-011 | 2026-06-05 | Domänmigration wavult.com → aamos.systems (alla internt synliga domäner) | Erik: "Vi driver affären Aamos i Aamos. wavult ska ALDRIG synas i domäner." wavult = holding-bolag, ska aldrig synas i produkter. | A) Behåll wavult.com (synlig holding), B) Migrera till aamos.systems (VALT) | Konsekvent varumärkesbild. Interna verktyg och produkter separerade. ~200 subdomäner live på aamos.systems. | Erik | GENOMFÖRT 200+ subdomäner migrerade. 301-redirects från gamla wavult.com-paths. |
| SD-012 | 2026-06-05 (natt) | Stripe aktiverat i test-mode, sk_live_ väntar Winston | env-preload.mjs löste ESM-import-ordningsbuggen (Stripe lästes vid import-tid före env-loader). Systemet är tekniskt redo, enda kvarvar är sk_live_-nyckeln. | A) Fortsätt i mock-mode (blockerat), B) Bygg env-preload för korrekt ordning + test-mode (VALT) | End-to-end Stripe-session skapad (cs_test_…). Inga kodändringar krävs vid live-switch, bara nyckel. | Winston/Rufus | DELVIS Test-mode verifierat. sk_live_ hos Winston. |
| SD-013 | 2026-06-05 | Swish SKROTAT som betalningsmetod | Erik: "Vi ska inte använda swish, multi-currency." Swish är Sverige-only, quiXzoom ska EU+globalt. Stripe Connect hanterar identitet/KYC per zoomer per land. | A) Behåll Swish (begränsad räckvidd), B) Multi-currency via Stripe Connect (VALT) | Global zoomer-täckning: SEK/EUR/USD/THB/+9 valutor. KYC per land via Stripe. | Erik | GENOMFÖRT Swish-kod ersatt med Stripe Connect multi-currency payouts |
| SD-014 | 2026-06-05 | BankID SKROTAT som autentiseringsmetod | Erik: "Ta bort bank id." Stripe Connect sköter identitet/KYC per zoomer per land. BankID är Sverige-only. | A) Behåll BankID (begränsad räckvidd), B) Stripe Connect KYC (VALT) | Global marknad möjlig. Ingen extern BankID-integration att underhålla. | Erik | GENOMFÖRT BankID-kod borttagen |
| SD-015 | 2026-06-06 | Auto-refund 14 dagar: fullauto Stripe-refund (ingen mänsklig kontroll) | Erik-beslut. Konsumenträttslagen kräver 14-dagars ångerrätt. Fullauto = inga support-ärenden, ingen fördröjning, rättslig compliance. | A) Manuell godkänning per refund, B) Fullauto inom 14 dagar (VALT) | Noll support-ärenden för refunds inom ångerfönstret. Automatisk compliance med konsumenträttslag. | Erik | GENOMFÖRT stripe_payment_intent på transactions, webhook kör refund direkt |
| SD-016 | 2026-06-06 22:18 | Leon/Vincento = simulering raderas fullständigt från alla system | Erik: "Leon har aldrig varit officiellt anställd utan en simulering." Personnummer 900510-3456 = syntetiskt. INGEN lön/skatt/bokföring → ingen arkiveringsplikt. | A) Arkivera som historisk post, B) Radera fullständigt (VALT, Erik-direktiv) | 0 Leon/Vincento-referenser i aktiv kod, träningsdata, payroll, NATS-routing. Systemet behandlar Leon som om han aldrig existerat. | Erik | GENOMFÖRT 3 purge-agenter kört, slutkoll: 0 träffar i aktiv kod |
| SD-017 | 2026-06-06 (natt) | ESLM-träningsdata måste vara generell, ej Wavult-specifik (separation of weights & facts tillämpas) | v3 och v4-data innehöll Wavult/AAMOS/org-nr i ALLA system-promptar + 25% Wavult-specifika svar → modellen lärde sig företagsdetaljer som borde vara i MNEMOSYNE, ej ALETHEIA. | A) Behåll företagsspecifika data (v3/v4 kasserade), B) Destillera rent 0 företagstermer (VALT) | 20807 generella train-examples (v5), 0 företagstermer. ESLM = återanvändbar/säljbar generell evidensmotor. | Erik/Johan | GENOMFÖRT v5 tränad, Aletheia live på A10G |
| SD-018 | 2026-06-06 | Hermes (träningspipeline) döps om till HEPHAISTOS | Hermes kollideraded med: Nous Hermes-modeller, Hermes message bus. Förorenade tränings- och minnesdata med fel associationer. | A) Behåll Hermes-namn, B) HEPHAISTOS (grek: smedguden, formar modeller) (VALT) | Inga namnkollisioner. Tydlig mytologisk familj (Aletheia/Mnemosyne/Hephaistos/Azoth). | Erik | GENOMFÖRT Omdöpning startad i ~76 filer |
| SD-019 | 2026-06-07 14:58 | Strikt Graviton/arm64-only för EKS-workloads | Erik: "DET SOM SIEMENS FINANCE SKULLE VALT!" Determinism före bekvämlighet. Homogen flotta, reproducerbart beteende, ~20% billigare, spot-pool är arm64. | A) Preferred (80/20 arm64/x86-fallback), B) Required arm64-only (VALT) | 0 risk för x86-edge-cases i prod. Alla images byggs --platform linux/arm64. | Erik | GENOMFÖRT tickets omdeployad med strikt krav, arm64 gäller alla framtida tjänster |
| SD-020 | 2026-06-07 14:30 | Lift-and-shift systemd → EKS som byggfas (ej big-bang, referens-mönster först) | Tjänsterna ska kopplas till event-backbone (eventdriven ERP), men lift-and-shift av alla 17 tjänster ger snabbt produktionsklart EKS-mönster. Fas 2 = Kafka-integration. | A) Big-bang migration, B) Referenstjänst (tickets) → verifiera mönster → rulla resten (VALT) | 17/17 tjänster klara i EKS på ~1 timme via pipeline. Mönstret verifierat end-to-end med RDS och Kong. | Erik/Johan | GENOMFÖRT 17 tjänster, 34 pods, alla på Graviton/arm64 |
| SD-021 | 2026-06-07 14:45 | Kafka bekräftad som kanonisk event-backbone (ej aamos-event-bus eller NATS/Redis) | Inventering avslöjade tre parallella mekanismer: Kafka (KRaft 3-broker), aamos-event-bus-svc, Hermes/Redis. Kafka: RF=3, min.insync=2, domän.händelse-namnkonvention = enterprise-grade. | A) Fortsätt med tre parallella transporter, B) Konsolidera mot Kafka (VALT, att bekräfta med Erik) | Enhetlig eventdriven arkitektur. Hermes→Kafka. Eventdriven ERP möjlig. | Erik/Johan | BESLUTAD Bekräftelse av Erik inväntas |
| SD-022 | 2026-06-06 | AI-provider-krediter: ingen provider får ta slut (absolut regel) | xAI/Grok tog slut på krediter mitt i orkestrering = generalhaveri. Erik (CAPS): "ALDRIG i produktion." Varje provider: primärt Revolut + fallback annan bank + auto-topup + buffert. | A) Reaktiv påfyllning, B) Proaktiv: kreditkoll vid varje orkestrering + auto-topup + monitor (VALT) | 0 produktionsavbrott pga tomma krediter. Provider-monitor pollar 7 providers var 5:e min. Johan hanterar setup/failover, Winston hanterar kort/konton. | Erik/Johan/Winston | PÅGÅR Provider-monitor live, Johan PROV-001..006, Winston PROV-W1..6 |
| SD-023 | 2026-06-06 (natt) | 8x A100 DDP-träning av ALETHEIA (p4d.24xlarge spot $8/h, erik: "läropengar") | Fråga: DDP vs FSDP? DDP = full modell per GPU, undviker bnb-sharding-buggar. 7B 4-bit ~6GB ryms i 40GB A100. Spot-prissättning maximerar CPU/GPU-utnyttjande. | A) Fortsätt A10G single-GPU (~8h), B) DDP på 8x A100 (~1h) som läropengar (VALT) | Ny hastighetstandard: ~1h vs ~8h. Verifierade att DDP-pipeline funkar. Aletheia v5 tränad och säkrad. | Erik/Johan | GENOMFÖRT p4d terminerad när modellen säkrats till server-2 + S3 |
| SD-024 | 2026-06-06 | Bedrock-Claude upplåst via use-case-formulär | Judge-v2 behövde Claude Opus som domare. Bedrock-Claude var blockad (Anthropic use-case-form ej ifylld på AWS-kontot). B2 av parallellbygget inskickade formuläret via API som root. | A) Enbart direkt Anthropic-nyckel (ej Bedrock), B) Bedrock upplåst + direkt-nyckel som fallback (VALT) | 4-lagers judge-fallback: Bedrock-Opus-4-6 → Sonnet-4-5 → direkt-Opus-4-8 → Qwen-235B. Inga single points of failure för poliskontrollen. | Johan/Bernt | GENOMFÖRT Sonnet 4.5 + Opus 4.6 via Bedrock verifierade |
| SD-025 | 2026-06-06 | Valvet finns inte AWS Secrets Manager är secrets-lagringen | Erik antog "lägg i valvet" men HashiCorp Vault är nedlagt (ingen tjänst, port 8200 död). MEMORY.md innehöll felaktig info. 21 mailkonto-lösen behövde säkras. | A) Starta upp HashiCorp Vault igen, B) AWS Secrets Manager (VALT, infrastruktur finns redan) | Centraliserat secrets-hantering via AWS SM. Säkert mönster: base64 via SSM → decode lokalt → create-secret → shred. | Bernt | GENOMFÖRT 21 lösen i `aamos/prod/mail-accounts`, MEMORY.md rättad |
| SD-026 | 2026-06-06 | AAMOS_CANON.md: enda kanoniska sanningskällan (E4) | LandveX-incidenten avslöjade 39 konkurrerande truth-filer. RAG läste bara 3 filer. Stubs svarade tomt med ok:true. Allt bidrog till att systemet trodde LandveX = bostad. | A) Fortsätt med distribuerade truth-filer (riskabelt), B) En CANON-fil + RAG tier-1 (VALT) | RAG-index 94 chunks. Produktionschat injicerar CANON-fakta alltid. 8 dubblett-filer arkiverade. LandveX-def korrekt i alla system. | Bernt | GENOMFÖRT /opt/amos/data/AAMOS_CANON.md live |
| SD-027 | 2026-06-05 | Idempotent Stripe-webhook (förutsättning för multi-host) | Fas 2 av RES-004 (andra host) krävde att Stripe-webhooks är idempotenta. Dubbel webhook (retry ELLER 2 hosts) → dubbel kreditering om ej hanterat. | A) En host alltid (SPOF), B) Idempotens-tabell + atomisk balance-update → multi-host säkert (VALT) | processed_stripe_events-tabell (event_id PK, INSERT ON CONFLICT DO NOTHING). Atomisk balance-uppdatering. Dubbel-kreditering matematiskt omöjlig. | Johan/Bernt | GENOMFÖRT quixzoom-api live med idempotens-skydd |
| SD-028 | 2026-06-07 | quiXzoom launch dag: 1 augusti 2026 (LÖRDAG) flagga om måndag (3 aug) önskas | Erik angav uttryckligen 1 augusti. 1 aug = lördag. Weekday-launch är standard för appar (mer organisk spridning helg). | A) 1 aug (lördag, Eriks direktiv), B) 3 aug (måndag, workweek-mönster) | Alla ytor uppdaterade till 1 aug. Erik kan justera till 3 aug om måndag önskas. | Erik | BESLUTAD 1 aug. Öppen flagga om måndag önskas. |
---
## BESLUTS-KLUSTER OCH TEMAN
### Kluster A: Arkitektur och AI-principer
SD-001 · SD-002 · SD-003 · SD-004 · SD-017 · SD-018 · SD-026
Dessa beslut formar hur AAMOS tänker och tränas. Den röda tråden är **separation av concerns**:
modellvikter (ALETHEIA) ska resonera generellt, fakta injiceras via MNEMOSYNE, träningspipeline
heter HEPHAISTOS. Beslutslinsens Claude × Siemens-princip är det samlande filtret.
### Kluster B: Produkt och Marknadsföring
SD-005 · SD-006 · SD-007 · SD-008 · SD-028
Dessa beslut definierar vad produkterna ÄR och hur de prissätts. LandveX = infrastrukturkontroll
(aldrig bostad). Priser baseras på flöde, inte vinst. Hybrid-strategi lockar (aldrig tvingar) kunder in.
### Kluster C: Betalning och Ekonomi
SD-009 · SD-012 · SD-013 · SD-014 · SD-015
Erik är ekonomiskt ansvarig. Stripe är plattformen. Swish och BankID är skrotade. Auto-refund är lag-compliant.
### Kluster D: Infrastruktur och Resiliens
SD-010 · SD-011 · SD-019 · SD-020 · SD-021 · SD-022 · SD-024 · SD-025 · SD-027
Enterprise-grade from day one. Multi-AZ, ALB, Graviton/arm64-only, Kafka som backbone,
AWS Secrets Manager, idempotenta webhooks. Ingen single point of failure accepteras.
### Kluster E: Personalrensning och Dataintegritet
SD-016
Leon/Vincento-simuleringen krävde fullständig purge av alla referenser, inklusive träningsdata.
---
## KVARSTÅENDE ÖPPNA BESLUT (per 2026-06-07)
| ID | Fråga | Ansvarig | Deadline |
|----|-------|---------|---------|
| OD-001 | Flow+ #1c-paketet: godkänn a/b/c/d-alternativen | Erik | Snarast |
| OD-002 | C3 DNS: 8 öppna domänfrågor (corpfitt, hypbit, partnerdomäner) | Erik | Snarast |
| OD-003 | Payroll-avslut EMP-004 (identifierad som Leon, ej rörd) | Erik/Winston | Snarast |
| OD-004 | Kafka som kanonisk backbone (bekräftelse) | Erik | Inför EKS Fas 2 |
| OD-005 | quiXzoom launch: 1 aug (lördag) eller 3 aug (måndag)? | Erik | Snarast |
| OD-006 | AZOTH-komponent: design och aktivering av orkestreringslagret | Johan/Bernt | TBD |
| OD-007 | ISO 42001-certifiering: GAP-analys påbörjad Q3 2026 | COO-roll (obesatt) | Q3 2026 |
---
## BESLUTS-LOGG: SKROTADE ALTERNATIV
Dessa alternativ övervägdes men avvisades dokumenterat för transparens och för att undvika att de
återuppfinns vid nästa workcamp:
| Skrotat alternativ | Varför avvisat | Datum |
|-------------------|----------------|-------|
| Swish som betalplattform | Sverige-only, quiXzoom är globalt | 2026-06-05 |
| BankID för KYC | Sverige-only, Stripe Connect är global | 2026-06-05 |
| HashiCorp Vault för secrets | Nedlagt, ingen tjänst, port 8200 död | 2026-06-06 |
| Opus-på-allt som modellstrategi | Kostsamt och onödigt för enkla operationer | 2026-06-06 |
| Flat fee för AAMOS-prissättning | Inte skalbar, ej kopplad till kundens värde | 2026-06-04 |
| Företagsdetaljer inbyggda i ESLM-vikter | Säkerhetsrisk, kräver omträning vid ändring | 2026-06-06 |
| Leon/Vincento som arkiverad post | Leon var simulering → arkiveringsplikt finns ej | 2026-06-06 |
| x86-fallback i EKS | Adds variabel → oacceptabel risk i prod (Siemens-standard) | 2026-06-07 |
| FSDP (sharded) för multi-GPU-träning | bnb-sharding-buggar, DDP funkar för 7B 4-bit | 2026-06-06 |
| Hermes som namn på träningspipeline | Kollision: Nous Hermes-modeller, Hermes message bus | 2026-06-06 |
---
## BESLUTSFATTARENS PROFIL (för framtida workcamp-referens)
**Erik Svenssons beslutsprofil (observerat under workcamp):**
- **Snabb eskalering vid principbrott:** Reagerar starkt (CAPS, explicita direktiv) när systemet bryter
mot en etablerad princip (BankID-direktiv, Swish-direktiv, laga-alltid-regel).
- **Kräver transparens i värdeestimat:** Varje automations-värdeestimat ("sparar X timmar/kr") måste ha
källangiven referens. Ingen siffra utan härledning.
- **Godkänner kostnader när alternativet är SPOF:** RES-001/003/004 godkändes utan tvekan med
motiveringen "vi har inte alternativ inför lansering."
- **Parallelliserar aggressivt:** "För långsamt, parallellisera, gör tickets, starta agenter." 8 subagenter
i 2 vågor vid parallellbygget 2026-06-06.
- **Låser principer tidigt:** Prefererar att spika namn, definitioner och principer i stunden ("namnen ska
sitta i tidigt skede") snarare än att revidera dem sent.
- **Sätter system före produkt:** Återkommande doktrin. Infrastruktur och governance måste vara klar
innan externt synliga produkter lanseras.
---
*Volym 4 av 7 | AMOS Workcamp 2026 | Klassifikation: INTERN KONFIDENTIELL*
*Nästa: VOL5-Travel-Hospitality-Expenses.md*