Files
WRNexusJS/docs
ClintchizandClaude Opus 5 83f2951035 docs: fix cache-key collision in the Task 4 plan snippet
The plan's cachedPermissionStore used scopeKey + U+FFFD + subjectId as a
cache key with no escaping, so ('a', 'b<sep>c') and ('a<sep>b', 'c') collide
and one subject is served another's permissions. Subject and tenant ids are
unconstrained strings, so nothing prevented it.

Key is now JSON-encoded, and the global-write sweep tracks keys per subject
instead of substring-matching. Adds the two regression tests that were
missing: cross-tenant invalidation on a global write, and key collision.

Ruled by the human as plan-mandated; source of truth amended so a re-run of
the plan does not reintroduce the defect.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-04 17:00:35 +05:30
..
2026-08-01 01:09:58 +05:30
2026-07-22 17:29:08 +05:30
2026-07-27 12:42:18 +05:30
2026-07-22 17:29:08 +05:30
2026-07-29 12:51:10 +05:30
2026-07-29 12:51:10 +05:30
2026-08-02 23:18:51 +05:30
2026-07-27 12:42:18 +05:30
2026-08-02 23:18:51 +05:30
2026-08-02 23:18:51 +05:30
2026-08-02 23:18:51 +05:30
2026-08-02 23:18:51 +05:30
2026-08-02 23:18:51 +05:30
2026-08-02 23:18:51 +05:30
2026-07-22 17:29:08 +05:30
2026-07-27 12:42:18 +05:30
2026-07-22 17:29:08 +05:30
2026-07-27 12:42:18 +05:30
2026-08-03 19:47:30 +05:30
2026-08-04 12:19:09 +05:30