Werkplek — Dossier Interface Mockup
Werkplek — Dossier Interface Mockup¶
Interactieve mockup van Laag 1: Werk- en Samenwerkingsruimte. Informatie wordt gebracht in een dossier — een samenhangende verzameling IO’s rondom een zaak, proces of thema. De interface integreert met alle backend APIs (memory-retrieve, memory-persist, federation-gateway) en vereist Scaleway IAM authenticatie (BIO BBN3 compliant).
Info
Dit is een ontwerp-mockup — puur HTML/CSS binnen de atlas. De productie-implementatie wordt een Scaleway Serverless Container (Python/Flask, Wolfi base, privacy=private). Zie s38 voor project- en IAM-strategie.
Login Dashboard Dossier Ingestie Onderzoek Wiki Crews Minimal branding: dc monogram dc Beveiligde werkruimte Scaleway IAM Single auth form: API Key + TOTP API Key
TOTP Code
Verifieer mTLS certificate indicator 🔒 mTLS actief Account type badges (revealed after key validation) Owner · Admin · Member · Application Session info: BBN3 compliant BBN3 • 30 min idle • 8h max • mTLS • FIDO2 • Rate limit 5/15min Welkom, K. BOHE Owner 28:45 🔒 Verhoogd platform-admin DC domein Disconnect Collective (DC) BOHE Laatst ingelogd: vandaag 09:14 Start Onderzoek Zoeken + Nieuw Dossier Quick search
Domain filter pills — BNP/BNI first Alle domeinen BNP ✓ BNI ✓ BSW IV AXIS PIPE DC ECO THRIVE HRB BU Dossier grid — BNP/BNI as primary Klantanalyse Rabobank Q4 BNP DUTO 86% Open 34 IO’s • 12 PDF, 6 audio (klantgesprekken), 4 spreadsheets, 12 gestructureerd Crew: bsw-analysis-crew (actief) • Laatst: 2 uur geleden Projectvoorstel Digitale Transformatie BNP DUTO 91% Open 22 IO’s • 8 PDF, 3 video (presentaties), 11 gestructureerd (YAML/Mermaid) Satelliet: BSW levert marktanalyse IO’s Persoonlijke Kennisbank BNI DUTO 78% Permanent 156 IO’s • 42 PDF (boeken/artikelen), 28 audio (podcasts), 86 notities Privé — alleen BNI domein, geen cross-domain Gezondheid & Welzijn 2026 BNI DUTO 65% Open 18 IO’s • 4 PDF (labresultaten), 8 afbeeldingen, 6 notities AVG Art. 9 — bijzondere persoonsgegevens 4 dossiers • 230 IO’s • 11 domeinen beschikbaar (RBAC) Audit: alle acties gelogd → pipe-analytics S3 ← Terug naar Dashboard Klantanalyse Rabobank Q4 BNP Eigenaar: K. BOHE • Aangemaakt: 2026-01-08 • 34 IO’s DUTO 86% Onderzoek + IO Toevoegen Exporteer IO List Informatieobjecten (34)
PDF
sha256:a3f8..c91d
Rabobank Jaarverslag 2025
MDTO 14/14
94%
AUDIO
sha256:b7e2..f4a0
Klantgesprek Account Manager (transcript + audio)
MDTO 14/14
91%
XML
sha256:d9f3..a2c7
Financiële ratio’s Rabobank (XBRL)
MDTO 14/14
96%
IMG
sha256:e1a4..b5d9
Organogram Rabobank Wholesale Banking (OCR + VLM)
MDTO 14/14
89%
PDF
sha256:f2b7..e3c8
BSW Marktanalyse Banksector NL satelliet
MDTO 14/14
92%
+ 29 meer IO’s — scroll of filter
Crew Status
Actieve Crew — bsw-analysis-crew
Status:
Marktanalyse uitvoeren (stap 3/5)
IO’s geproduceerd:
8
Laatste IO: “Competitieve Analyse ING vs Rabo” — 2 min geleden
BNP
→
PIPE event-router
→
IV memory-persist
→
AXIS governance
Provenance + Knowledge Graph
Provenance Trail (PROV-O) 2026-01-08 10:15 — Dossier aangemaakt door K. BOHE (DC/platform-admin) 2026-01-08 10:22 — 12 PDFs geüpload → cognificatie gestart (memory-persist SQS) 2026-01-08 10:23 — MDTO verrijking: 12/12 IO’s 14/14 velden ✓ 2026-01-15 14:30 — 6 audio-klantgesprekken toegevoegd → STT (Voxtral) → transcript ECO 2026-02-01 09:00 — bsw-analysis-crew gestart → 8 IO’s geproduceerd via BNP→PIPE→IV 2026-02-10 16:44 — DUTO-score gestegen: 79% → 86% (XBRL MDTO compleet)
Gerelateerde Entiteiten (KG)
Rabobank (Organization)
Account Management (Concept)
Financiële Analyse (Concept)
Wholesale Banking (Unit)
ING Group (Organization)
XBRL/SBR (Standard)
18 entiteiten • 34 relaties • Louvain community: “NL Banksector Analyse”
Ingestie Pipeline — Cognificatie Volg het volledige verwerkingsproces wanneer een IO wordt toegevoegd aan een dossier. Upload zone IO toevoegen aan dossier Sleep bestanden hierheen of klik om te uploaden PDF Audio Video Afbeelding XML/JSON Dossier: Klantanalyse Rabobank Q4 (BNP) • Max 100MB per IO Pipeline: voorbeeld PDF Pipeline: “Rabobank Jaarverslag 2025.pdf” Step 0 ✓ Stap 0: MIME Detectie 12ms application/pdf gedetecteerd → Routing naar: PDF extractie pipeline Step 1 ✓ Stap 1: Content Extractie 340ms PyPDF2 text extraction • 847 woorden • 3 pagina’s • Taal: Nederlands (NL) Step 2 ✓ Stap 2: Chunking 28ms Semantic chunking (512 tokens, 50 overlap) → 4 chunks gegenereerd Step 3 ✓ Stap 3: Embedding 1.2s qwen3-embedding-8b (768d Matryoshka) → 4 vectors → pgvector IVFFLAT index Step 4 ↻ Stap 4: NER & Relatie-extractie ~3.8s mistral-small-3.2-24b-instruct → 8 entiteiten, 12 relaties geëxtraheerd → iv_entity_nodes + iv_entity_edges Step 5 ✓ Stap 5: MDTO Verrijking 890ms 14/14 velden ingevuld — Auteur, Datum, Classificatie, Taal, Bron, Formaat, Rechten, ... Step 6 ✓ Stap 6: DUTO Validatie 45ms Score: 94% (vindbaar ✓, beschikbaar ✓, leesbaar ✓, interpreteerbaar ✓, betrouwbaar ✓, toekomstbestendig ✓) — Drempel ≥80% → PASS Step 7 ✓ Stap 7: Persist 210ms CID: sha256:f7a2..d4e1 • Content → bnp-content S3 bucket • Metadata → iv_entity_nodes.properties • Register → iv_documents (IC) Totale pipeline: 6.5s • 8 stappen • 4 chunks • 8 entiteiten • DUTO PASS Dual-write example Dual-write voorbeeld: Audio-bestand Wanneer een audio IO wordt geïngesteerd, ontstaan 2 ECO’s (Essentiële Content Objecten): ECO 1: Binary (audio/mp3) Origineel audiobestand → bni-media S3 bucket CID: sha256:a1b2..c3d4 ECO 2: Transcript (text/plain) STT (Voxtral) transcript → bni-content S3 bucket CID: sha256:e5f6..g7h8 Beide ECO’s worden gelinkt aan hetzelfde IO via iv_documents.eco_references JSONB array Onderzoek Start een research pipeline, doorzoek alle domeinen, gebruik text-to-SQL of verken de kennisgraaf. RESEARCH PIPELINE: Start Onderzoek Research Pipeline Stel een onderzoeksvraag — het systeem doorloopt automatisch alle stappen om een onderbouwd antwoord te genereren. Start Onderzoek Research query input
Scope: BNP ✓ BSW ✓ IV ✓ AXIS Diepte: Uitgebreid (crew) Snel (search only) Diep (KG + Vanna) Research pipeline steps (live progress) Pipeline voortgang: ✓ Stap 1: Query Analyse — onderzoeksvraag ontleed, 4 deelvragen geformuleerd 120ms ✓ Stap 2: Hybrid Search — 3 domeinen doorzocht (BNP, BSW, IV), 14 resultaten 0.42s ✓ Stap 3: KG Traversal — entiteiten Rabobank, ING, ABN AMRO + 28 relaties opgehaald 0.31s ✓ Stap 4: Vanna SQL — financiële ratio’s opgehaald (CET1, ROE, NIM per bank) 0.85s ↻ Stap 5: Cross-domain Synthese — mistral-large-3-675b combineert 14 bronnen + KG + SQL data... ~4.2s Stap 6: Rapport Generatie — gestructureerd onderzoeksrapport met bronverwijzingen wacht Stap 7: IO Persist — rapport opslaan als IO in dossier (cognificatie pipeline) wacht Research crew: bnp-research-crew • Bronnen: 14 IO’s + 28 KG-relaties + 3 SQL-queries • Flow: BNP → PIPE (federation-gateway) → IV (memory-retrieve) → synthesize → persist Sub-tabs for manual tools Hybrid Search Text-to-SQL (Vanna) Kennisgraaf Explorer Panel 1: Hybrid Search Hybrid Search
Hybrid (BM25+Sem+Graph)
BM25 Full-Text
Semantic (Cosine)
Graph Traversal (BFS)
Community Detection
Entity Similarity
Temporal Range
Zoeken
Domeinen:
BNP ✓
IV ✓
BSW
AXIS
PIPE
Cross-domain (federation-gateway)
3 resultaten in 0.38s • Strategie: RRF(BM25=0.4, Cosine=0.4, BFS=0.2) • Reranker: MMR(λ=0.7)
Competitieve Analyse ING vs Rabo
BNP 0.94
...de
concurrentiepositie
van
Rabobank
t.o.v. ING op wholesale banking segment...
Dossier: Klantanalyse Rabobank Q4 • CID: sha256:f2b7..e3c8 • DUTO: 92%
Rabobank Wholesale Banking Strategie (IV kennisgraaf)
IV 0.87
...het kennisgraaf-cluster “NL Banksector” verbindt
Rabobank
met 12 gerelateerde entiteiten via
klantanalyse
relaties...
Cross-domain via federation-gateway • Graph: 2 hops • Community: “NL Banksector Analyse”
Financiële ratio’s Rabobank (XBRL)
BNP 0.82
...gestructureerde
Rabobank
financiële data in XBRL-formaat. CET1 ratio: 15.8%, ROE: 9.2%...
Dossier: Klantanalyse Rabobank Q4 • CID: sha256:d9f3..a2c7 • DUTO: 96% • Vanna-compatible
Panel 2: Text-to-SQL (Vanna)
Text-to-SQL (Vanna) — vanna-query function
Query Gegenereerde SQL (readonly, safety-validated): SELECT d.domain, COUNT(*) as io_count, ROUND(AVG(d.duto_score)::numeric, 1) as avg_duto
FROM iv_documents d
WHERE d.duto_score > 0.80
GROUP BY d.domain
ORDER BY io_count DESC; ✓ SQL Safety Validator: geen mutations, geen joins >3, geen subqueries op grote tabellen
| Domein | IO’s | Gem. DUTO |
|---|---|---|
BNP BNP |
42 | 89.2% |
BNI BNI |
98 | 84.1% |
BSW BSW |
31 | 91.7% |
AXIS AXIS |
18 | 93.4% |
IV IV |
12 | 88.0% |
Powered by: iv_vanna • Schema: iv_documents, iv_document_chunks • Training: 156 query/SQL paren Panel 3: KG Explorer Kennisgraaf Explorer
Gerelateerd (BFS) Community (Louvain) Pad zoeken Verken Entity visualization Central entity ING Group ← concurrent_van → Rabobank ← heeft_afdeling → Wholesale Banking | Account Mgmt ← onderdeel_van → Financiële Analyse ← rapporteert_via → XBRL/SBR Path query Pad: “Wat verbindt Rabobank met MinFin?” Rabobank → rapporteert_aan → DNB → toezicht_door → MinFin 2 hops • Relatiesterkte: 0.89 • Louvain community: “NL Financiële Sector” iv_entity_nodes: 18 entiteiten • iv_entity_edges: 34 relaties • 3 communities gedetecteerd Wiki — bohe.wiki Federatief kennisplatform. Elke domeinwiki is direct toegankelijk via {domain}.bohe.wiki . Niet publiek — IAM-authenticatie vereist. Wiki hub overview Domein Wiki’s bni.bohe.wiki Persoonlijke kennisbank • Privé 42 pagina’s • 3 categorieën • Laatste edit: vandaag bnp.bohe.wiki Professionele kennisbank • Business 128 pagina’s • 12 categorieën • Laatste edit: gisteren dc.bohe.wiki Organisatie kennisbank • DC 89 pagina’s • 8 categorieën • Laatste edit: 2d geleden iv.bohe.wiki Platform documentatie • Core 215 pagina’s • 19 categorieën • Laatste edit: vandaag Recent wiki activity Recente Activiteit EDIT IV Deployment Runbook — v2.1.0 update iv.bohe.wiki • 12 min geleden NEW Marktanalyse Framework Q1 2026 bnp.bohe.wiki • 2 uur geleden EDIT Persoonlijk Leeslijst 2026 bni.bohe.wiki • gisteren Crews & XOps Actieve crews/task forces, IO-productie via federation, en DevSecOps/GitOps pipelines. Section 1: Active Crews Actieve Crews
| Crew | Domein | Taak | Status | IO’s | Federation |
|---|---|---|---|---|---|
| bsw-analysis-crew | BNP (via BSW) |
Marktanalyse banksector | Stap 3/5 |
8 | BNP→PIPE→IV |
| axis-audit-crew | AXIS |
Governance audit Q1 | Stap 2/4 |
3 | AXIS→PIPE→IV |
| iv-enrichment-crew | IV |
KG verrijking batch | Stap 1/1 |
142 | IV (lokaal) |
Section 2: Federation Flow Federation Flow — bsw-analysis-crew BNP (bsw-analysis-crew) IO geproduceerd ↓ PIPE (event-router → SQS) federation routing ↓ IV (memory-persist → kg-update) cognificatie + persist ↓ AXIS (GovernancePolicy.check_write_access) governance check ↓ Audit (AuditLogger → pipe-analytics S3) immutable log Section 3: XOps / GitOps Pipeline XOps — DevSecOps / GitOps Pipeline Architectuur-IO’s (code, configs, IaC) stromen door de DevSecOps pipeline: IO Creatie (Crew of Gebruiker) ↓ Codeberg Git Push (tea CLI → feature branch → PR) ↓ Woodpecker CI (lint → test → security scan → build) ↓ Container Build (Podman + Wolfi → rg.fr-par.scw.cloud/{domain}-containers/) ↓ OpenTofu Plan & Apply (tofu plan → review → tofu apply) ↓ Scaleway Deploy (function update / container deploy / job update) XOps Status Badges XOps Practices (9) ✓ DevSecOps
Woodpecker CI + security scan ✓ GitOps
Codeberg + feature branches + tea CLI ✓ DataOps
cognificatie pipeline + DUTO quality gate ✓ LLMOps
6 modellen: small/large/devstral/voxtral/pixtral + qwen3-emb ↻ MLOps
evaluatie pipeline (coming) ✓ FinOps
€200 AI cap + T1/T2/T3 routing + auto-fallback ✓ SecOps
BIO BBN3 + GovernancePolicy + audit ✓ ObsOps
Cockpit (Grafana + OTel + Loki) ↻ QOps
Quandela QPU experimenten (beta) FinOps Cost Monitor FinOps — AI Model Budget (feb 2026) €127 / €200 (63%) Budget bars per tier T1 mistral-small-3.2-24b €28 / €40
T2 devstral-2-123b €14 / €25
T2 voxtral-small-24b €18 / €25
T2 pixtral-12b €6 / €15
T3 mistral-large-3-675b €32 / €40 (80%!)
qwen3-embedding-8b €22 / €30
Routing: T3 op 80% → alert • Bij 100% auto-fallback T3→T1
Dag-budget: €6.67 • Burst max: €13.34
Bron: Scaleway Cockpit metrics + cost-aggregation job • Was:
€600/mo Claude
→ Nu:
€200/mo cap (6 gespecialiseerde modellen)
Live IO Feed
Live IO Feed
“Competitieve Analyse ING vs Rabo”
bsw-analysis-crew • 2 min geleden
“Governance Policy v2.1 Draft”
axis-audit-crew • 15 min geleden
“pipe-crews/functions.tf update” ✓ CI
GitOps • 1 uur geleden
“KG Batch: 42 entiteiten verrijkt”
iv-enrichment-crew • 2 uur geleden
“Klantgesprek Account Manager (transcript)”
ingestie pipeline • 3 uur geleden
Dossier Datamodel¶
-- Migration 013: Dossier management (PIPE Serverless SQL)
CREATE TABLE dossiers (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
domain TEXT NOT NULL, -- BSW, IV, AXIS, etc.
title TEXT NOT NULL,
description TEXT,
owner_id TEXT NOT NULL, -- Scaleway IAM user ID
status TEXT DEFAULT 'open', -- open, closed, archived
duto_score REAL DEFAULT 0.0, -- Geaggregeerde DUTO score
created_at TIMESTAMPTZ DEFAULT now(),
updated_at TIMESTAMPTZ DEFAULT now(),
metadata JSONB DEFAULT '{}'::jsonb
);
CREATE TABLE dossier_objects (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
dossier_id UUID REFERENCES dossiers(id) ON DELETE CASCADE,
cid TEXT NOT NULL, -- Content Identifier (SHA-256)
title TEXT NOT NULL,
io_type TEXT DEFAULT 'document', -- document, audio, video, image, structured
mdto_status TEXT DEFAULT 'pending', -- pending, partial, complete
duto_score REAL DEFAULT 0.0,
added_at TIMESTAMPTZ DEFAULT now(),
added_by TEXT NOT NULL, -- Scaleway IAM user ID
UNIQUE(dossier_id, cid)
);
Success
Informatiegedreven werken: Het dossier is de centrale werkeenheid. Informatie wordt gebracht in een dossier — niet opgehaald uit losse bestanden. Elk IO krijgt automatisch een CID, doorloopt de cognificatie pipeline (s8), wordt verrijkt met MDTO metadata, en is doorzoekbaar via 17 hybrid search strategieën. De IC (s22) registreert waar elk IO leeft; de Drie-Store (s6) bewaart de content.
Changelog¶
| Versie | Datum | Wijziging |
|---|---|---|
| 0.1.0 | 2026-02-24 | Initiële versie — interactieve mockup, login, dashboard, dossier, ingestie, onderzoek |