# MASTER-PLAN — Parallellt bygge (2026-06-06 21:25, Erik: "för långsamt, parallellisera") **Beslutsgrund:** Claude×Siemens. Varje ticket = verifierbar leverans, ärlig dom, härdat. **Metod:** Bryt ner i oberoende spår → spawna agenter parallellt → yield → samla resultat. **Mål:** Maximera parallellism, minimera blockerande beroenden. ## SPÅR-ÖVERSIKT (4 epics, 14 tickets) ### EPIC A — Träningspipeline-verifiering (BLOCKERAR omträning) - **A1** Lokalisera/rekonstruera det FAKTISKA träningsscriptet för amos-r2 (Qwen2.5-7B+Unsloth, ej repo:ts Phi-3-finetune.py). Källa: GPU-box bash-historik, train_env, unsloth_compiled_cache. - **A2** Verifiera VRAM-konflikt: vLLM (red-team) använder 19.7/23GB. Träning behöver GPU. Beslut: stoppa vLLM under träning ELLER schemalägg. Dokumentera. - **A3** Torrkörning: ladda v3-datan i träningsscriptet, validera format/tokenisering, `--dry_run`. Ingen faktisk träning. - **A4** Reproducerbar träningsrunbook: exakt kommando, hyperparametrar (från amos-r2 trainer_state), env, output-path. Som Siemens kräver. ### EPIC B — Claude på Bedrock (starkare poliskontroll) - **B1** Dokumentera EXAKT hur Anthropic use-case-formuläret fylls i AWS-konsolen (steg, vilken IAM-princip, vilka modeller det låser upp). Erik gör klicket, vi förbereder allt. - **B2** När upplåst: verifiera Claude via Bedrock (eu-inference-profile) + uppdatera eslm-judge.mjs att föredra Bedrock-Claude > direkt-nyckel (kostnad/governance). - **B3** Fallback-kedja i judge: Bedrock-Claude → direkt-Opus → 235B. Härdat, inget single point. ### EPIC C — ~60 landsdomäner (geo-partner-modell) - **C1** Inventera ALLA 66 Route53-domäner: kategorisera EU / USA / Övriga marknader. Exakt lista. - **C2** Designa partner-modell för Övriga: MX+DMARC-reject (anti-spoofing) tills auktoriserad partner. EU/USA → mitt team (roll-routing). - **C3** Implementera: batch-DNS + Mailu-domäner för EU/USA-gruppen (roll-routing). Övriga = hold-läge. - **C4** Verifiera: testmail per kategori, DMARC-policy aktiv. ### EPIC D — CMO-roll + org-hygien - **D1** CMO-rollen formellt: bekräfta cmo→cto-routing, dokumentera i CANON att CMO är vakant tills tillsatt. Uppdatera wavult-facts.mjs (Leon redan borttagen? verifiera). - **D2** Agent-mesh: vincento (Leons agent) finns kvar i homo-deus-comms AGENTS-lista. Omdirigera/inaktivera → undvik död agent-inbox. - **D3** Org-hygien-svep: sök alla referenser till Leon/Vincento i kod+data, lista för Erik-beslut (radera vs arkivera). ## PARALLELLISERINGS-STRATEGI - **Våg 1 (oberoende, spawna direkt):** A1, C1, D3 — ren discovery/inventering, inga beroenden, läs-tunga. - **Våg 2 (efter våg 1):** A2/A3 (efter A1), C2 (efter C1), B1 (oberoende, kan i våg 1), D1/D2 (efter D3). - **Våg 3 (leverans):** A4, B2/B3, C3/C4. - Agenter får snäv brief: mål, output-fil, skrivscope, verifieringskrav. Read-tunga får ej mutera prod utan rapport först. ## LIVE-STATUS (uppdateras löpande) | Ticket | Status | Resultat | |--------|--------|----------| | A1 träningsscript | ✅ KLAR | Original saknades → REKONSTRUERAT `build/train_eslm.py`. HP från adapter_config (r=16,α=32,dropout=0.05) + Unsloth-defaults. Osäkert: max_seq_length=2048. | | A2 VRAM-konflikt | ✅ KLAR | Alt C: stoppa vLLM→träna→omstart→red-team. vLLM=19.7GB, ej plats för båda. 2 serving-script finns (återanvändbara). | | A3 torrkörning | ✅ KLAR | Data 100% klar: 0 parse-fel, max 1006 tokens (2048 räcker dubbelt), CANON verifierat, 0 fel org-nr | | A4 runbook | 🔄 kör | Komplett tränings-runbook (pre-flight→träna→red-team→rollback) | | B1 Anthropic-form | ✅ KLAR | Guide klar. <2 min konsol-klick. **VÄNTAR ERIK.** | | B2/B3 Bedrock-Claude | ⬜ väntar B1-klick (Erik) | | | C1 domäninventering | ✅ KLAR | 66 zoner/62 unika. 38 EU, 13 övriga, 4 dubletter, döda m. MX, okända. | | C2 partner-modell | ✅ KLAR | 6-fas DNS-script (säker/Erik-OK/destruktiv-märkt). Partner=ingen MX+DMARC reject. 8 öppna Erik-frågor. | | C3/C4 DNS-impl | ⏸ väntar Erik-OK | Script klart (c3-apply-dns.sh) men kräver Erik-beslut på 8 frågor + DKIM-verifiering | | D1+D2 remediering | 🔄 kör | Stagear Leon/Vincento-fix + apply-script för Bernt-granskning | | D3 Leon-svep | ✅ KLAR | ~15 funktionella ref, 5 LIVE-system mot raderade adresser (heartbeat, routing, approvals) | ## SLUTSTATUS VÅG 1+2 (alla 14 tickets klara/levererade) - **A1✅ A2✅ A3✅ A4✅** — träningspipeline verifierad, runbook klar. Redo att träna. - **B1✅** Anthropic-form INSKICKAD VIA API (root) → **Claude UPPLÅST på Bedrock** (Sonnet+Opus verifierade). - **B2✅ B3✅** judge-v2 DEPLOYAD: 4-lager fallback (Bedrock-Opus→4-6 → Sonnet → direkt-Opus-4-8 → Qwen-235B). - **C1✅ C2✅** domäninventering + partner-modell + förberett c3-apply-dns.sh (EJ kört, kräver Erik på 8 frågor). - **D1✅ D2✅ D3✅** Leon/Vincento-remediering APPLICERAD mot prod: 6 filer fixade, amos-core omstartad (200), 5 live-felrouter stoppade. **APPLICERAT MOT PROD (D1+D2, verifierat 200):** 1. wavult-facts.mjs — Leon ur team[], CMO=VACANT 2. homo-deus-comms.mjs — vincento ur AGENTS+NATS 3. agents/list.mjs — vincento offboarded 4. domain-experts.mjs — hr-bot parent→bernt 5. aamos/comms/engine.mjs — leon@hypbit ur TEAM/#marketing/#board 6. approvals.js — ops-roll inaktiverad Backup: /opt/amos/backups/d1d2-20260606-214607 + .bak-filer. **KVARSTÅR PÅ ERIK (beslut, ej teknik):** 1. **Träning:** A4-runbook klar → stoppa vLLM + kör omträning på v3 (~1-3h)? Sista stora steget. 2. **C3 DNS:** 8 frågor (corpfitt/hypbit mailloggar, aakira/apifly/apbxp/prexo, .tech/.co, DKIM-verifiering) innan partner-modell appliceras. 3. **Payroll-avslut EMP-004 (Leon/"Leon Magnusson"):** personnummer berörs — medvetet EJ rört. Kräver Erik-beslut. 4. **CANON-tillägg:** CMO-vakant + Vincento-avvecklad — jag lägger in i AAMOS_CANON.md (görs härnäst). 5. **4 dubblettzoner + döda domäner m. MX** (corpfitt/hypbit) — C2 har plan, väntar OK.