feat: Günstigster Pfad auf der Dependency Closure — exakt über gekoppelte Gruppen (SPEC §9, D42)
Jeder nötige Knoten zieht seine :#…-Ziele samt Realisierung in die
nötige Menge; gemeinsam Gebrauchtes zählt über die Vereinigung nur
einmal. Verfahren gewählt und benannt (D34): erschöpfende Suche, aber
nur über die GEKOPPELTEN Gruppen (Teilbaum enthält Abhängigkeiten oder
wird gebraucht) — ungekoppelte wählen lokal wie bisher, ohne
Abhängigkeiten bleibt es bei genau einer Auswertung zum alten Preis.
Lexikografischer Odometer, strikt < : bei Gleichstand die erste
Alternative. Oberhalb des Suchlimits (20 000) gierig mit zeilenloser
Warnung cheapApprox statt stillschweigender Pseudo-Optimalität.
Abhängigkeiten ziehen auch optionale und nicht gewählte Ziele (ohne
deren Vorfahren), verworfene nie. Neue API computeCheapPlan {set,exact};
markCheapest entfällt. 8 neue Tests (tests/closure.test.js).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
afe536e33c
commit
a918c75286
+6
-1
@@ -90,10 +90,15 @@ entscheiden, **bevor** Code entsteht.
|
||||
Minimum); **Knotenfarbe = effektiver Status**, bei Diskrepanz die eigene
|
||||
Statusbox als Marke unten links in den eigenen Farben (auch im Export);
|
||||
Tooltip + `a11yEffective`; `tests/effective.test.js`.
|
||||
- [ ] Günstigsten Pfad auf die Dependency Closure umstellen (gemeinsame
|
||||
- [x] Günstigsten Pfad auf die Dependency Closure umstellen (gemeinsame
|
||||
Abhängigkeiten nur einmal zählen). Erweitert D18; die gierige Wahl je
|
||||
Alternativgruppe ist damit nicht mehr optimal — Verfahren wählen und
|
||||
**benennen**.
|
||||
→ Umgesetzt (D42): erschöpfende Suche über die gekoppelten Gruppen
|
||||
(`computeCheapPlan` in model.js), ungekoppelte wählen lokal wie bisher;
|
||||
oberhalb des Suchlimits gierig mit zeilenloser Warnung `cheapApprox`.
|
||||
Abhängigkeiten ziehen auch optionale/nicht gewählte Ziele, verworfene
|
||||
nie; `tests/closure.test.js`.
|
||||
- [x] Querverbindungen zeichnen (eigene SVG-Ebene, optisch sekundär);
|
||||
bei ausgewähltem Knoten ein-/ausgehende hervorheben.
|
||||
→ Umgesetzt (D41): gekrümmte blassgraue Kanten mit Pfeilspitze auf das
|
||||
|
||||
Reference in New Issue
Block a user