mirror of
https://github.com/aaronsb/obsidian-mcp-plugin.git
synced 2026-07-22 16:40:32 +00:00
The 2026 portal redesign replaced the old DOM/RSC structure with a card UI: Health/Review render as a coloured grade word + a segmented bar meter, and findings are RSC JSX tuples. The old parser drifted (SCRAPER DRIFT, null anchors). - decodeDoc/toText split: keep tags for the structural bar meter, strip for prose fields. - gradeAndScore(): grade = coloured span after the label; numeric score = filled/total bar-meter segments (#183 — the portal's visible trust signal), window bounded to the next label so Health can't bleed into Review. - Grade vocab no longer enum-pinned (the hard-coded Excellent|Good|… list is exactly what drifted) — capture whatever word renders; drift guard catches a null. - Findings re-extracted from ["$","div|details","<text>",{...}] tuples in the scorecard region; SIGNATURE re-anchored to the redesign wording (**Title**: + neutral scan/attestation sentences). - Drift guard: numeric scores are now first-class anchors; findingsDrift = non-zero issue count with zero findings. Exit 2 on drift preserved. Validated live: Health Excellent (4/4), Review Satisfactory (3/4), 5 issues, 12 findings, freshness current, integrity ok. Correctly surfaces the residual "Dynamic Code Execution" finding on 0.11.25 (clears when a post-ADR-201 release is scanned — the CLAUDE.md caveat). Refs #183 |
||
|---|---|---|
| .. | ||
| build-mcpb.mjs | ||
| make-mcpb.mjs | ||
| scorecard.mjs | ||
| set-description.mjs | ||