diff --git a/docs/IMPLEMENTATION_PLAN.md b/docs/IMPLEMENTATION_PLAN.md index 059d111..46d2eed 100644 --- a/docs/IMPLEMENTATION_PLAN.md +++ b/docs/IMPLEMENTATION_PLAN.md @@ -4577,6 +4577,7 @@ Verifiziert 2026-09-09 (Phase 7): Bereichswechsel beschleunigt und Performance-V Verifiziert 2026-09-08 (Phase 7/13B): GPO-Quellenkorrektur fuer Work und Client Info. Aktuelle Evaluationen aus dem vorhandenen autoritativen Readmodell statt ergebnisabhaengiger Backupgruppierung; Import- und Auswertungszeit getrennt, Source-Scan-Provenienz auch auf GPO-only-Blaettern. 1.014 Tests bestanden, acht optionale PostgreSQL-Tests uebersprungen; Local-only-/Designpruefung und beide Builds erfolgreich. Dummy lesend bestaetigt: eine statt drei GPO-Quellenoptionen, 3.805 aktuelle Zeilen, elf historische Evaluationen unveraendert. Keine Persistenzmutation oder Neuanalyse. | Datum | Änderung | +| 2026-10-12 | Importvertraege (Nutzerzustimmung nach Diff-Pruefung, Core-Freigabe Core Tests): Die geschuetzten Snapshots `pingcastle-html` und `pingcastle-xml` sind neu aufgenommen. Grund: die freigegebenen PingCastle-Aenderungen aus 2.19.1 (Profil 1.5.0 -> 1.7.0 im Verarbeitungsschluessel; XML-`DomainFQDN` als `domain.fqdn`/`Domain` mit Subjekt `domain-information`; daraus Vergleichsschluessel des Scores). Findings, Ergebnisse, Schweregrad, Evidenz und Scorewerte unveraendert; Vertragskennungen, Fixture-Hashes und Assertions unveraendert; Reimport-Empfehlung wie in 2.19.1 dokumentiert. Importgate gruen. | | 2026-10-12 | Integration (Core-Freigabe alle, Governance): Michaels Commit `614ac1b` (Remediation Engine, geschuetzte Importvertraege, Client-Info-Tab `Security`, Technical Report) ist die Basis; die 39 Commits seit `250c213` (AI/ISO/BSI-Compliance-Engine, Defender for IoT) sind darauf rebased (Branch `rebase/michael-backup`, `compliance-mapping` unveraendert). Beide Engines stehen nebeneinander in Engines-Popup (Core, Context, Report, Remediation, Compliance), Hook-Tabelle, Grenztest, Server und Work-Facetten (Work Package an der Stelle von Result Message, ISO/BSI-Facetten weiter direkt vor `Source: Scan`). Client Info nutzt Michaels `ClientInfoTabs` in der vereinbarten Reihenfolge Overview, Security, Microsoft Defender for IoT, Compliance, AI Overview; die drei Engine-/Defender-Tabs sind `lazy` und mounten nur ausgewaehlt (neuer Verhaltenstest), die alte Tab-Navigation und ihre CSS-Regeln entfallen. Finding Reader: `Map ISO controls` steht direkt vor Michaels fester Aktionsgruppe `AI search`/Bookmark/`Results`. Abgeleiteter Forest-Hinweis nach `client-info-facts.ts` portiert. Importgate: zwei additive synthetische Defender-Vertraege (Schwachstellen- und Alert-CSV, je 3 Findings); die Snapshots `pingcastle-html`/`pingcastle-xml` weichen durch die freigegebenen PingCastle-Aenderungen aus 2.19.1 ab (Profil 1.5.0 -> 1.7.0, XML-Domaenenfakten, Vergleichsschluessel) und bleiben bis zur Nutzerpruefung unveraendert, das Gate ist deshalb rot. Sechs weitere Testfehler (Context-Cluster-Reihenfolge, Pathfinder-Mock, Data-Hub-Donut- und DB-Structure-Layouttest) bestehen bereits auf `614ac1b` allein. Produktversion 2.25.0 (Minor: beide Funktionslinien vereint); Versionstests, beide Produktionsbuilds, Local-only- und Designpruefung bestanden. Vor dem ersten Serverstart legt die Remediation Engine das Schema `assessor_remediation` an; vorher Backup des kanonischen Datastores. | | 2026-10-06 | Phase 7: Data Hub Deviation/Passed now use the same assessed-percentage helper as Client Info; all six donuts state their population basis. 29 focused tests and synthetic Chrome Dark/Light checks passed; absolute counts, other population shares and assessment semantics retained. Client build, design and UI/API version checks passed. Nine out-of-scope report test failures, a report Local-only failure and report server type errors prevent full release verification; attempted 2.16.9 reverted to 2.16.8 pending successful production builds. | | 2026-10-06 | Phase 7: Client Info Deviations percentage now divides by Passed + Deviations and labels Of assessed checks; zero assessed shows a dash while preserving absolute zero. Permanent UI/click invariance tests in both themes and synthetic Chrome presentation verified; unchanged counts, verdicts, scores and other donuts. Patch 2.16.8: both builds and version contracts passed; full run 1,936 passed/15 skipped with one stale API-version assertion corrected and passed in the 43-test focused rerun; Local-only/design checks passed. | diff --git a/tests/importers/__snapshots__/import-compatibility.test.ts.snap b/tests/importers/__snapshots__/import-compatibility.test.ts.snap index 0b44860..6d80ae6 100644 --- a/tests/importers/__snapshots__/import-compatibility.test.ts.snap +++ b/tests/importers/__snapshots__/import-compatibility.test.ts.snap @@ -15828,7 +15828,7 @@ exports[`protected scanner import contracts (synthetic data only) > 'pingcastle- "purple-knight": 1, }, }, - "processingKey": "[null,"pingcastle","1.5.0","1.2.0","1.1.0","1.0.0"]", + "processingKey": "[null,"pingcastle","1.7.0","1.2.0","1.1.0","1.0.0"]", "resultSignature": "["[\\"S-Synthetic\\",null,\\"fail\\"]"]", "runIds": [ "run-protected-dummy-import", @@ -16306,11 +16306,11 @@ Synthetic values: Alpha, Beta", "attributes": { "xmlPath": "HealthcheckData/DomainFQDN[2]", }, - "label": "DomainFQDN", + "label": "Domain", "normalizedValue": "synthetic.example", "observedAt": undefined, "originalValue": "synthetic.example", - "property": "pingcastle.xml.healthcheckdata.domainfqdn.2", + "property": "domain.fqdn", "sectionKey": "HealthcheckData", "source": { "cellReference": undefined, @@ -16322,7 +16322,7 @@ Synthetic values: Alpha, Beta", "state": "observed", "subject": { "identity": "HealthcheckData/DomainFQDN[2]", - "type": "pingcastle-xml-node", + "type": "domain-information", }, "tool": { "id": "pingcastle", @@ -16553,7 +16553,7 @@ Synthetic values: Alpha, Beta", { "assessed": 1, "assessmentId": "assessment-protected-dummy-import", - "comparisonKey": undefined, + "comparisonKey": "["pingcastle","synthetic.example","default"]", "contentSha256": "24b56411296eeea60bf5201b64a3828b39b85d88a6950f3d2c8c681804cb326c", "deviations": 1, "eligible": 1, @@ -16588,7 +16588,7 @@ Synthetic values: Alpha, Beta", "purple-knight": 1, }, }, - "processingKey": "[null,"pingcastle","1.5.0","1.2.0","1.1.0","1.0.0"]", + "processingKey": "[null,"pingcastle","1.7.0","1.2.0","1.1.0","1.0.0"]", "resultSignature": "["[\\"S-Synthetic\\",null,\\"fail\\"]"]", "runIds": [ "run-protected-dummy-import",