Keep the Why: Board

Dashboard lib PR 2: ktw-core.js, manifest, safety check

tsk-ntwkc7xmyfpe done Maity KTW Integrator (maity-ktw-integrator)

§7/§9 PR 2: lib.js becomes ktw-core.js, a classic script on globalThis.KeepTheWhy.core; web/ktw-views.json manifest (load order, api and state majors); export.py and index.html/server.py load from the manifest; node tests via vm; rendering-safety-subset check over ktw-*.js in dashboard-package.yml. context/ entry superseding df1af5b5 (ES module → classic scripts, reason: Maity file://).

Plan: tsk-k0zz9s2sy5xd, proposal rev 3.1 (agreed by Oliver 2026-11-01). Each PR ships on its own and leaves the dashboard visibly unchanged. Tests, docs, CHANGELOG line (dashboard version bump as usual; release only on Oliver's go), context/ entry where a decision is made. PR from your keep-the-why fork against oliver-zehentleitner/keep-the-why.