9.4 KiB
Programstatusrapport — ingest-laget (I1–I7)
Dato: 2026-07-04
Program: ingest-konnektorer for portfolio-optimiser, avsluttende steg (I7).
Omfang: begge referanseimplementasjonene — MAF (dette repoet) og Claude Agent
SDK-søsknet (D7, portfolio-optimiser-claude,
sitert read-only).
Bindende føring: ærlighets-regelen — målbilde §0 + §11 «Stack-mapping (ærlighets-avgrenset)».
Rapporten skiller kapabilitet-implementert fra kjørt-mot-live, og holder to «live»-akser
adskilt: live datakilde vs. live modellkjøring.
1. Executive-sammendrag
Ingest-laget lar rammeverket bygge en per-prosjekt OKF-bundle fra en ekstern kilde via ett
deterministisk, JSON-Schema-validert manifest som kjører før den agentiske loopen. Laget er nå
implementert og verifisert på begge stacker for de to transport-familiene som ble besluttet
bygget — file/CSV og SQL — med bit-identiske golden-uttrekk fra den delte spec-en. En tredje
familie, HTTP, er demonstrert som extension point på MAF-siden mot en lokal mock; MCP er
dokumentert som en krok (create_sdk_mcp_server på D7), ikke en shipped connector.
Hva som gjenstår er bevisst avgrenset og oppgis eksplisitt i §2:
- Ingen bundle er materialisert fra en live datakilde. Alle uttrekk er øvd mot committede fixtures/golden. «Første live kilde»-gaten er ukonsumert på begge stacker.
- Live modellkjøring (ekte LLM) er ikke kjørt på MAF-siden — det ende-til-ende-beviset der er en offline, skriptet simulering som viser plumbing + deterministisk ryggrad, ikke levende LLM-atferd. På D7 er programmets ene budsjetterte live modellkjøring utført og validert (S10, 2026-07-03).
Rapporten inneholder ingen salgspåstander; hver påstand i §2 er sporet til en kjørbar kommando eller en fil-/commit-sitering i verifiseringsloggen (§3).
2. Bevist / ikke bevist
2.1 Per connector-familie
| Familie | Status | Bevis-grunnlag |
|---|---|---|
| file/CSV (I2/I3) | Bygget + bevist på begge stacker | Golden-uttrekk bit-identisk mot committet fixture; connector + load-bearing-tester (MAF f331cb4, 994f5be; suite grønn) |
| SQL (I4/I5) | Bygget + bevist på begge stacker | SQLite-connector + typet celle-rendring + golden (MAF d7e5f2f, 4f45fe6); D7-speil i søsknet |
| HTTP (I6) | Demonstrert extension point, MAF-only, mot lokal mock | read_http-connector bak per-kjøring allow_network-grant + injiserbar transport-søm; golden mot committet payload (MAF 58dda46, bbdcd62, 24e73f4). Ikke shipped på D7. |
| MCP | Dokumentert krok, ikke wiret i kjørestien | Spec §4 dokumenterer MCP som utvidelse av http-familien; demonstrert via build_mcp_server (MAF), create_sdk_mcp_server (D7, verifisert mot offisiell SDK-doc). Ingen D7-HTTP/MCP-økt planlagt. |
Ikke bevist / bevisst ikke bygget: en shipped D7 nettverks-/HTTP-connector; MCP wiret inn i
optimiser-kjørestien (Non-Goal — in-process FunctionTool er default-sømmen).
2.2 To-akset «live»-distinksjon (ærlighets-kjernen)
Ordet «live» brukes om to uavhengige ting. De må ikke blandes.
(a) Live data-KILDE — å materialisere en bundle fra et ekte, kjørende endepunkt (HTTP mot en reell tjeneste, en produksjons-database e.l.):
ALDRI gjort — på ingen av stackene. Ingen bundle er materialisert fra en live kilde. Alle connector-uttrekk (CSV, SQL, HTTP) er øvd mot committede fixtures/golden. HTTP-transporten er alltid injisert med en canned
getover fixture-payloads, så suiten kjører offline mot en lokal mock — ingen live kilde, ingen credentials. «Første live kilde»-gaten er ukonsumert.
(b) Live MODELL-kjøring — å drive den agentiske loopen mot en ekte LLM (Azure/Foundry eller Ollama), i motsetning til en skriptet stand-in:
- MAF-siden: IKKE kjørt mot ekte modell. Ende-til-ende-beviset her er en offline, skriptet simulering (
portfolio_optimiser.simulation, skriptet chat-klient). Den beviser plumbing, den deterministiske ryggraden og at lærings-sløyfa lukkes — ikke at en levende LLM ville produsert forslaget/dommen. Kostnadsdrevet valg (privat API for kostbart for løpende kjøring).- D7-siden: DONE én gang. Programmets ene budsjetterte live modellkjøring (S10) er utført og validert 2026-07-03 mot micro-bundelen; de fire artefaktene er committet som fast referanse-output under
runs/s10/. Sitert read-only fra D7s egen README (linje 13–14, 121–133).
Den genuine modell-atferd-sammenligningen mellom stackene lever altså på D7-siden (én minimal API-kjøring), ikke på MAF-siden. Se den eksisterende stack-sammenligningsrapporten for detaljert stack-for-stack sammenstilling (dupliseres ikke her).
3. Verifiseringslogg
Hver påstand → kjørbar kommando (med faktisk fanget exit-kode/output) eller fil-/commit-sitering. Kommandoene ble kjørt 2026-07-04 fra repo-rot (MAF) og fra D7-repoet read-only.
| # | Påstand | Verifikasjon | Faktisk resultat |
|---|---|---|---|
| 1 | MAF-suiten er grønn offline (uten nøkkel/nettverk) | uv run pytest -q |
exit 0 — 237 passed, 4 skipped, 2 warnings in 22.23s |
| 2 | MAF-kildekoden er lint-ren | uv run ruff check . |
exit 0 — All checks passed! |
| 3 | MAF-kildekoden er type-ren | uv run mypy src |
exit 0 — Success: no issues found in 19 source files |
| 4 | D7-søsknets suite er grønn offline | cd …/portfolio-optimiser-claude && uv run pytest -q (read-only, ingen commit) |
exit 0 — 265 passed in 1.58s |
| 5 | Stale README-status er fjernet | grep -c "not yet implemented" README.md |
0 |
| 6 | README oppgir HTTP som MAF-only demo mot lokal mock | grep -c "local mock" README.md |
1 (≥1) |
| 7 | Ingen påstand om at D7 har HTTP/MCP-støtte som bygget | grep -niE '(d7|claude).{0,40}(http|mcp).{0,20}(support|built)' README.md |
ingen treff (exit 1) |
| 8 | extending.md skjerper D7-grensa eksplisitt |
grep -c "MAF-only" docs/extending.md |
1 (≥1) |
| 9 | Ingen påstand om at D7 bygde HTTP/MCP | grep -niE 'D7.{0,30}(built|shipped|implement).{0,20}(http|mcp)' docs/extending.md |
ingen treff (exit 1) |
| 10 | Alle «D7 + http/mcp»-nærhets-treff er MAF-only / krok-peker / forbud | grep -rniE '(d7|claude[- ]?sdk).{0,60}(http|mcp)' README.md docs/ --exclude=2026-07-04-program-statusrapport-ingest.md + manuell klassifisering ‡ |
9 treff, alle kategori (i) MAF-only, (ii) create_sdk_mcp_server-peker eller (iii) plan-prosa som forbyr D7-HTTP; 0 i README |
| 11 | Ingen påstand om live-kilde-integrasjon | grep -rniE '(live|produksjon|production).{0,30}(kilde|source|integrasjon|integration)' README.md docs/rapport/ docs/extending.md --exclude=2026-07-04-program-statusrapport-ingest.md ‡ |
4 treff, alle negasjoner («no live source», «no network connector and no live-source integration») |
| 12 | D7 kjørte programmets ene live modellkjøring (S10) | Sitering, read-only: D7 README.md:13–14, 121–133, artefakter i runs/s10/ |
«single budgeted live model run has been executed and validated … executed 2026-07-03» |
| 13 | file/CSV + SQL bevist på begge stacker (bit-identisk golden) | Commit-sitering MAF: f331cb4, 994f5be (CSV/I2); d7e5f2f, 4f45fe6 (SQL/I4). Ingest-serie e4ee8bd..696f19a |
golden-tester grønne i #1 |
| 14 | HTTP demonstrert bak per-kjøring nettverks-grant | Commit-sitering MAF: 58dda46, bbdcd62, 24e73f4 (I6); spec §4/§8 |
golden-test grønn i #1 |
Miljønote (SC6):
greppå utviklermaskinen erugrep, som feiler på enkelte ERE-mønstre med multibyte-tegn («exceeds complexity limits»). Grep-radene over ble kjørt med system-/usr/bin/grep(POSIX ERE) for trofast semantikk; et ugrep-krasj (exit 2) er et tooling-problem, ikke en innholds-verifikasjon, og ble aldri tolket som PASS eller FAIL.
Selv-referanse-note (‡, rad #10/#11): denne rapportfila siterer selve grep-mønstrene i verifiseringsloggen over, så uten
--exclude=2026-07-04-program-statusrapport-ingest.mdteller kommandoen sine egne mønster-strenger — den måler seg selv (15/12 treff i stedet for 9/4). Eksklusjonen scoper målingen til filene som karakteriseres (README +docs/), ikke rapporten som beskriver dem; da reproduserer 9 og 4 stabilt mot committet tre.
4. Konklusjon
Ingest-programmet (I1–I7) er levert innenfor sitt avgrensede omfang: file/CSV og SQL bygget og
bit-identisk bevist på begge stacker, HTTP demonstrert som MAF-only extension point, og
dokumentasjonen (README + extending.md) er brakt i samsvar med hva koden faktisk gjør. De to
gjenstående gatene — første live datakilde (begge stacker) og live modellkjøring på
MAF-siden — er eksplisitt merket som ikke bevist, ikke skjult. Programmet lukkes uten
overselgende artefakt.
Referanser
- Målbilde — ingest-laget (§0/§11, ærlighets-regel; frosset 2026-07-03)
- Sesjonsplan — ingest (§I7)
- Stack-sammenligningsrapport (MAF vs. D7, 2026-07-03)
- README · extending.md (oppdatert i I7)