Repository navigation
fix: harden snapshot keys and client IDs for Checkmarx findings - #939
Conversation
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
|
Review of 8ac67b2. I read the diff and the surrounding code; I did not run the tests or CI. The snapshot dictionary hardening and the chat/knowledge/JSON-RPC ID changes look sound. The main points are consistency and failure handling.
|
|
Follow-up review of 7a8a8cd. I read the diff; I did not run the tests or CI. Fixed
Skipped (accepted, now documented)
Note: the sequence ids restart at 1 on every page load, so two tabs can use the same id. That is fine as long as the backend only echoes it. |
Snapshot comparison used ordinary objects indexed by snapshot IDs, and request-ID paths could fall back to Math.random. Harden both cell dictionaries, remove weak randomness, and handle secure sign-in failures visibly.
Addresses #938 (all six frontend findings):
The documentation maps all six rows, records same-repository historical evidence and states deployment closure requirements. It does not make pinned cross-repository backend claims. This is a scoped migration for the assessed paths, not repository-wide UUID consolidation: other native randomUUID calls, the already-secure form idempotency helper and unrelated Workflow code are unchanged. Caller tests verify integration/no-dispatch behavior; helper tests own the UUID bit/entropy-source details.
Validation on the revised source tree:
npm run test:run: 166 files, 1,153 tests passed.npm run build: passed.npm run lint: zero errors, 215 warnings (same baseline count).node_modules/.bin/tsc --noEmit -p tsconfig.controller.json: passed.tsc --noEmit --pretty false: remains non-green with 172 baseline errors; diagnostics match untouched master after normalizing shifted line numbers. No new diagnostics.git diff --check: passed. GitNexus staged analysis reports LOW risk for this review update. The original HIGH knowledgeCommand impact scope was explicitly accepted before its change.No live services, databases or credentials were changed. The exact partner scan revision, deployed artifacts, live OAuth/server validation, backend replay isolation and partner rescan remain deployment closure work; merging this PR does not establish those results.