Files
summercms/.planning/phases/14-domain-jobs-and-external-integrations/14-REVIEW-DISPOSITION.md
2026-10-04 08:13:29 +02:00

3.7 KiB

phase, review, titles, findings, open, total, recorded
phase review titles findings open total recorded
14 14-REVIEW.md json
id severity disposition title
CR-01 critical fixed Album writes after slow Discogs I/O save every column from a stale struct, silently reverting concurrent edits
id severity disposition title
WR-01 warning fixed A stale CSV match pass can cancel, advance or fork a remapped import (the race D-10 claims to close)
id severity disposition title
WR-02 warning fixed The anonymous feedback upload keeps an attacker-chosen file extension in public storage
id severity disposition title
WR-03 warning fixed Credential-test routes are unthrottled oracles for third-party keys (parity security hole)
id severity disposition title
WR-04 warning fixed The "write-only" admin AI key can be redirected to any host by changing base_url
id severity disposition title
WR-05 warning fixed `golem:import-settings` silently drops models from a repeater saved with non-sequential keys
id severity disposition title
WR-06 warning fixed The G15Office sync job is not idempotent, and a retry files duplicate tasks
id severity disposition title
IN-01 info open sunscreen does not scrub the Discogs token shape or struct fields
id severity disposition title
IN-02 info open tide sidecar masking accepts a partly masked credential and prints two unredacted URLs
id severity disposition title
IN-03 info open The match job's re-dispatch delay overflows on a huge Retry-After
id severity disposition title
IN-04 info open `security.AllowedHosts` ignores a string-valued config key
id severity disposition title
IN-05 info open The G15Office task id from the response is concatenated into the request path unescaped
id severity disposition title
IN-06 info open embed.js `escapeHtml` is used in attribute context without escaping quotes (parity)
id severity disposition title
IN-07 info open Job cancellation inside the mapping and cancel transactions is not rolled back with them
id severity disposition title
IN-08 info open `wishlistReleaseMatchRules` aliases `releaseMatchRules`' backing array
8 15 2026-10-04T06:13:28.660Z

Phase 14: Code Review Disposition

Finding Severity Disposition Source
CR-01 critical fixed 14-REVIEW-FIX.md
WR-01 warning fixed 14-REVIEW-FIX.md
WR-02 warning fixed 14-REVIEW-FIX.md
WR-03 warning fixed 14-REVIEW-FIX.md
WR-04 warning fixed 14-REVIEW-FIX.md
WR-05 warning fixed 14-REVIEW-FIX.md
WR-06 warning fixed 14-REVIEW-FIX.md
IN-01 info open -
IN-02 info open -
IN-03 info open -
IN-04 info open -
IN-05 info open -
IN-06 info open -
IN-07 info open -
IN-08 info open -

Dispositions: open (recorded, not yet triaged), fixed, skipped, deferred. Set deferred by hand and put the reason in the Source cell; both are preserved. A | in the reason is kept as prose and escaped on the next run. Re-running the gate keeps every row it can. A row the current review no longer reports is kept and its Source cell flagged, so a finding does not leave this record silently. ONE exception: when a finding id is REUSED by a different finding, the earlier decision cannot keep a row — the id is taken — and it is dropped. A RECORDED decision (anything but open) is named on the console when that happens; a row still at open is replaced silently, because open records no decision to lose.