Files
HartOMat/docs/workflows/CURRENT_EXECUTION_BATCH.md
T

5.5 KiB

Current Execution Batch

Stand: April 9, 2026

Dieses Batch zerlegt die verbleibende Workflow-Paritätsarbeit in 12 direkt umsetzbare Blöcke. Ziel bleibt unverändert:

  • /workflows produktionsfähig machen
  • den Legacy-Workflow jederzeit funktionsfähig halten
  • Tests und Browser-Verifikation gezielt und sequenziell fahren, damit der lokale Stack nicht durch RAM-Last kippt

Reihenfolge

Block 1: Shared Authoring Surface

Ziel: Die Authoring-Logik für Canvas-Menu und Sidebar auf eine gemeinsame Grundlage ziehen, damit neue Node-Organisation, Stage-Führung und spätere Output-Type-Deep-Links nicht doppelt implementiert werden.

Primäre Dateien:

  • frontend/src/components/workflows/NodeCommandMenu.tsx
  • frontend/src/components/workflows/NodeDefinitionsPanel.tsx
  • frontend/src/components/workflows/**

Ergebnis:

  • ein gemeinsames Authoring-Modell statt verteilter UI-spezifischer Sonderlogik
  • keine Regression bei Right-Click-Insert, Module/Path-Inserts oder Starter-Steps

Block 2: Node Organization Hardening

Ziel: Die Node-Library nach Family, Stage und Module weiter verdichten, damit große Produktionsgraphen schneller gebaut werden können.

Ergebnis:

  • schnellere Auffindbarkeit
  • weniger UI-Rauschen
  • sauberere Trennung zwischen Legacy-, Bridge- und Graph-Nodes

Block 3: CAD Operational Guidance

Ziel: CAD-Workflows dieselbe operative Führung geben wie der Still-Graph heute schon hat, inklusive Stage-Status und klarer Baseline-Pfade.

Ergebnis:

  • CAD-Familie wirkt nicht mehr wie ein Sonderfall
  • Intake-Graphen sind ohne Trial-and-Error zusammensetzbar

Block 4: Run Inspection Completion

Ziel: Run-, Node- und Comparison-Ansichten so vervollständigen, dass graphische Fehlläufe direkt im Editor debuggt werden können.

Ergebnis:

  • Fehlerursachen sind ohne DB-Inspektion sichtbar
  • Preflight, Dispatch und Run-Ergebnis greifen sichtbar ineinander

Block 5: Context Flow Simplification

Ziel: Dispatch-/Preflight-Kontextauswahl vereinfachen, besonders bei vielen Order-Lines und Workflow-Varianten.

Ergebnis:

  • weniger Fehlbedienung
  • klarere Zuordnung zwischen Workflow, Kontext und Ausführungsmodus

Block 6: Output-Type Contract Closure

Ziel: Output-Type-Erstellung und -Bearbeitung noch stärker auf Workflow-Verträge und Invocation-Profile zwingen.

Ergebnis:

  • neue Output-Types lassen sich stabil anlegen
  • Family- und Artifact-Mismatch wird früher blockiert

Block 7: Canonical Blueprints And Seeds

Ziel: Starter-Blueprints, Seed-Workflows und Frontend-Neuanlage konsistent auf die kanonischen Family-sicheren Graphen bringen.

Ergebnis:

  • weniger Drift zwischen Seed, Editor und Runtime
  • bestehende Golden-/Smoke-Workflows bleiben reparierbar

Block 8: Still Smoke Harness Stabilization

Ziel: Den non-legacy Still-Workflow als wiederholbaren Smoke-Pfad härten, ohne den Legacy-Fallback zu schwächen.

Ergebnis:

  • eindeutiges Pass/Fail-Signal für den kanonischen Still-Graph
  • belastbarer Startpunkt für echten E2E-Abgleich

Block 9: CAD/Material Parity

Ziel: Materialzuweisung, Instances und Geometrie-Identität zwischen Preview, GLTF-Viewer und Workflow-Verbrauch weiter angleichen.

Ergebnis:

  • weniger manuelle Materialreparatur
  • Vorschau und Renderpfad greifen auf denselben vertrauenswürdigen Zustand zu

Block 10: Rollout And Fallback Controls

Ziel: Rollout, Shadow und Graph-Freigabe sauber pro Workflow und pro Output-Type steuerbar halten.

Ergebnis:

  • sichere Aktivierung
  • klarer Fallback- und Rückrollpfad

Block 11: Repo Hygiene

Ziel: Hilfsskripte, Test-Utilities und neue Workflow-Helfer konsolidieren, damit Folgearbeit nicht auf provisorischen Strukturen aufbaut.

Ergebnis:

  • weniger Einweglogik
  • besser lesbare Diff-Basis für Restarbeiten

Block 12: Sequential E2E Gates

Ziel: Die wichtigsten Smoke- und Browser-Gates dokumentiert und gezielt ausführbar machen, ohne den Rechner parallel zu überlasten.

Ergebnis:

  • klarer Minimal-Satz an E2E-Prüfungen
  • reproduzierbare Freigabegates für /workflows

Aktuelle Ausführung

  • Abgeschlossen: Block 1
  • Abgeschlossen: Block 2
  • Abgeschlossen: Block 3
  • Abgeschlossen: Block 4
  • Abgeschlossen: Block 5
  • Abgeschlossen: Block 6
  • Abgeschlossen: Block 7
  • Abgeschlossen: Block 8
  • In Arbeit: Block 9
  • Nächster geplanter Folgeblock: Block 9

Letzte Verifikation

  • python3 scripts/test_render_pipeline.py --workflow-still-smoke --execution-mode shadow
  • Ergebnis: Live-Smoke erfolgreich; Shadow-Comparison stabilisiert auf WARN mit mean_pixel_delta=0.000257, Legacy bleibt dadurch weiterhin authoritative
  • ./backend/.venv/bin/pytest -q backend/tests/domains/test_workflow_runtime_services.py -k 'resolve_order_line_template_context_uses_exact_template_and_override or resolve_order_line_material_map_prefers_line_override_over_output_override or resolve_order_line_material_map_allows_node_override or prefers_authoritative_scene_manifest_assignments or keeps_legacy_source_name_fallback_without_scene_manifest'
  • Ergebnis: 5 Tests grün; autoritative Scene-Manifest-Zuweisungen werden nun im Workflow-Renderpfad auf part_key und source_name gespiegelt, Legacy-Fallback bleibt unverändert
  • ./backend/.venv/bin/pytest backend/tests/test_part_key_service.py -q
  • Ergebnis: 1 Test grün; part-key-basierte Manifest-Auflösung bleibt konsistent
  • cd frontend && npx vitest run src/__tests__/components/workflowEditorUi.test.tsx src/__tests__/api/outputTypes.test.ts --pool forks --poolOptions.forks.singleFork=true
  • Ergebnis: 20 Tests grün, sequenziell ausgeführt