7.7 KiB
7.7 KiB
PENDENZEN — Aufgaben-Queue (Single Source of Truth)
Diese Datei ist die einzige verbindliche Aufgabenliste. HANDOVER.md enthält nur noch Kontext/Konventionen/Environment/Zielmodelle — keinen Backlog mehr.
Arbeitsprotokoll (ZWINGEND)
Worker-Instanz (führt aus):
- Zuerst diese Datei lesen, dann
CONVENTIONS.md+ verlinkte Detailquellen des Items. - Oberstes nicht-blockiertes Item aus 🔧 In Arbeit bzw. sonst ⏭️ Als Nächstes nehmen, fertig machen, verifizieren (
npx tsc --noEmit+npx vitest run+ trace-scan), abhaken, eine Ergebniszeile nach ✅ Erledigt schreiben (mit Commit-Hash, sobald committet). - Rückfrage-Recht: Bei Unklarheit/Design-Entscheid NICHT raten — Item mit
❓markieren, kurze Frage darunter notieren, nächstes freies Item nehmen. Fragen sammeln sich unter ❓ Offene Rückfragen. - Kein Arbeitsschritt endet ohne aktualisierte Liste. Status hier ist immer aktuell, sonst driftet es wieder.
- Worker committet nicht selbst und delegiert nicht weiter (Agent/Task verboten) — das macht die Hauptinstanz. (Konvention HANDOVER.)
Planungs-Instanz (mit dem Nutzer, kuratiert):
- Nimmt Nutzer-Feedback, pflegt daraus die Liste (rein/umpriorisieren/aufspalten). Führt selbst keine Queue-Items aus.
- Prüft ❓-Zeilen mit dem Nutzer, wandelt sie in konkrete Items.
⛔ Blocker (zuerst klären)
Toolchain prüfen— ERLEDIGT 2026-07-04 (macOS-Gerät):node/npm/cargo(1.96.0)/wasm-pack(0.15.0) alle vorhanden.npm install+npm approve-scripts esbuild wasm-pack …(npm gated Install-Scripts →allowScripts-Block inpackage.json, ungetrackt gelassen),rustup target add wasm32-unknown-unknown, beide WASM-Engines gebaut, Frontend gebaut,npm run tauri:build→ Mac-App (cad.app+cad_0.1.0_aarch64.dmg, arm64) läuft. Verifikations-Baseline grün:tsc --noEmitsauber,vitest run230/230,cargo test render3d56/56. Kein Blocker mehr für Engine-Slices auf diesem Gerät.
🔧 In Arbeit
(leer — Worker trägt hier ein, was er gerade anpackt)
⚠️ Zu prüfen (evtl. schon erledigt / Status unklar)
Snap an Wand-Schichttrennlinien— gelandet339202b(wallLayerBoundarySegmentsinsrc/tools/snapping.ts), verifiziert vorhanden.
⏭️ Als Nächstes
(Öffnungen als Boolean-Löcher ist jetzt in 🔧 In Arbeit)
📋 Backlog (Priorität grob absteigend)
Ebene-Schraffur editierbar— gelandetdcb6ed5: Kategorie-Dialog (App.tsx,editor.hatch-Feld) hat<select>aufcat.hatch+HatchSwatch-Vorschau. Verifiziert vorhanden.- GEO-BLOCK (gemeinsame Dateien io/geoContext/swissTopo/terrain/ContextImportDialog/Viewport3D/siteSlice):
- Reale Höhen + Projekt-MüM (EG-Referenzhöhe): Terrain georeferenziert bei realem z relativ dazu, Gebäude auf Terrain drapiert (heute alles z=0).
- Luftbild/SWISSIMAGE-Orthofoto als Textur aufs Terrain-Mesh.
- Importierte Geo-Elemente auf aktives Geschoss (
viewSlice.activeLevelId) + Gelände-Ebene. - Nordstern-Geo-Rendering: importierte Meshes (heute nur three.js
importedMesh/terrainMesh) auch inprojectToModel3deinspeisen. - 3D-Mesh-DXF/DWG-Import (heute DXF nur 2D); Building-Draping; höhere DTM-Auflösung.
ResourceManager Bauteile-Tab auf Master-Detail— bereits Master-Detail (ComponentsTab/ComponentDetailinsrc/ui/ResourceManager.tsx, Liste linksres-md-list/ Detail rechts). Verifiziert vorhanden.- Einstellungs-Fenster (Rest): Verdrahtung ist da (
viewSlice.snapColor/marqueeColor→ PlanViewSnapMarker/Marquee, Defaults austheme/accents.ts, Projekt-MüM-FeldreferenceElevationMasl). Offen bleibt nur: Snap/Endpunkt-Default = ❓„aki" (s.u., derzeit Sora #5FA1C9) — reine Farbentscheidung des Nutzers. - Bildschraffur: ambientCG/CGI-Colorfiles als Quelle (Material-Lib WIP — erst nach Freigabe); Bild-Filter Sättigung/Helligkeit/Kontrast/SW (
image.filters). - E2b Schraffur-Kachel-Motiv (MotifEditor für HatchStyle-Tile wiederverwenden).
- Linienstile aufräumen (Weight-only-Stile → „Volllinie", lineStyleId-Referenzen remappen).
- 2D-Plan z-Anordnen (Kombo-Schraffuren); Bild-Schraffur GL/DXF (heute Fallback).
- AUDIT (DOSSIER-Studie): A1 Override-Regel-Engine; A2→A3 View-Snapshots → Print-Layout-Blätter (PDF pro Blatt); A5 reichere Öffnungen; B1 Text-Werkzeug (+ Kreis-Tool → Shortcuts 1&3); A4 Tragwerk; B2 Object-Info numerisch. (A6 Bauteil-Schedule-CSV erledigt.) Belege in
/tmp/dossier-ref/rhino/*.py. - Elemente im Schnitt anwählbar; render3d 2D-Schraffur auf 3D-Flächen.
3D-REST (engine-schwer, bewusst NICHT blind — mit Nutzer angehen)
- Textur-/PBR-Pipeline (Sampler/Bindings/UV in wgpu; dann
textured-Style +Component.texture3d/Material echt rendern). Wand-Schicht-Bänder in 3D Option B— bereits umgesetzt inresolveWallBands(layered=true)(src/plan/toWalls3d.ts:236-241): 3D-Viewer-Pfad liefert je Materiallage ein eigenesWallBand(Dicke + Component-Albedo + Normalen-Versatz),pushSegmentemittiert jede Lage als eigene Voll-Box.dominantLayerColorist nur noch Fallback für den Schnitt-Einkörper-Pfad (layered=false). Verifiziert per Code-Lesung.- Ortho-Ray-Picking (aktuell perspektivischer Pick-Strahl; Front/Top/Side-Presets vor erster Navigation leicht ungenau).
- 3D-Griffe/Editieren (Wand-Endpunkte im 3D ziehen etc. — bisher nur Auswahl + Panel-Edit).
❓ Offene Rückfragen (an den Nutzer)
„aki" Snap/Endpunkt-Farbe— entschieden 2026-07-04: Sora #5FA1C9 als endgültiger Default festgeschrieben (src/theme/accents.tsDEFAULT_SNAP_COLOR, Doc aktualisiert). Frage geschlossen.- Floating-ResourceManager „headless" = ganz ohne Titelleiste? (aktuell MIT)
- Geo-Block: Projekt-MüM zuerst oder Nordstern-Geo-Rendering?
- Verifizieren/klären: Isometrie „echte" orthographische Iso (teilw. durch Locked-Iso
cb8fae5adressiert)? · TopBar-Detailgrad (zoom% ganz aus Footer)? · DOSSIER-Audit welche Features konkret übernommen?
✅ Erledigt (Verlauf, neueste oben)
Nur jüngste Session; ältere Historie siehe git log und HANDOVER-Narrative.
- 2026-07-04 Snap-Farbe entschieden: Sora #5FA1C9 als endgültiger Default festgeschrieben (
DEFAULT_SNAP_COLOR, Doc), „aki"-❓ geschlossen. - 2026-07-04 Mac-Build via Tauri + Queue-Abgleich — Toolchain auf macOS-Gerät verifiziert,
cad.app/cad_0.1.0_aarch64.dmggebaut & gestartet. Verifikations-Baseline grün (tsc/vitest 230/cargo 56). Queue-Reconciliation: Toolchain-Blocker, Snap-Slice (339202b), Ebene-Schraffur (dcb6ed5), Bauteile-Tab-Master-Detail, Einstellungs-Verdrahtung UND Wand-Schicht-Bänder 3D (Option B,toWalls3d.ts) waren allesamt bereits gelandet, aber in PENDENZEN noch als offen gelistet → abgehakt. (kein Code-Commit) - 2026-07-04 Öffnungen als echte Boolean-Löcher (+ Deckentrim-nur-3D) — Fenster/Türen = 1 Wandkörper mit rechteckigen
holes(Rechteck-Gitter-Zerlegung + Laibungsquads), Segment-Boxen weg; Deckentrim nur noch im 3D-Pfad, Schnitt volle Höhe. Pflicht-Testfall versetzt-überlappende Fenster grün. cargo test 56, vitest 230, build:engine3d + tsc sauber —1407c68 - 2026-07-04 Joins Phase 1c Durchgangswand am T-Stoss echt aufbrechen (spanCutouts) —
c5a344d - 2026-07-04 Locked-Iso-Fix freie Kamera bleibt nach Ortho-Preset orthografisch —
cb8fae5 - 2026-07-04 3D-Live-Schnittebene mit schraffierten Schnittflächen —
03f0c40 - 2026-07-04 Joins Phase 2 Merge-Regel im Schnitt (gleiche Komponente verschmilzt) —
82d354f