Skip to content

Commit 51c88a9

Browse files
committed
refactor: extract CloudSync runtime module
1 parent e3c852c commit 51c88a9

18 files changed

Lines changed: 2962 additions & 1493 deletions

ROADMAP.md

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,6 @@ _(All Now-tier items are credential/compliance blocked — see `Roadmap_Blocked.
5050
- **Priority:** P3 | **Effort:** M | **Source:** [S36]
5151
- **Problem:** UI changes lack automated visual verification. Vitest 4.0 graduated Browser Mode with `toMatchScreenshot`.
5252

53-
### L-9. WebSocket Support in GM API
54-
- **Priority:** P3 | **Effort:** M | **Source:** [S38]
55-
- **Problem:** TM #1483 requests WebSocket support.
56-
- **Deliverable:** `GM_webSocket` with `@connect` enforcement and abort support.
57-
58-
5953
## Under Consideration
6054

6155
- **UC-1. Safari via Native App Container** [S40, S41] — Safari lacks `userScripts` API. Requires separate Swift project. Reconsider when user demand justifies it.
@@ -301,13 +295,6 @@ _(All Now-tier items are credential/compliance blocked — see `Roadmap_Blocked.
301295
> Duplicates against existing Now/Next/Later/UC/Rejected tiers were filtered.
302296
> Each item carries impact (1-5), effort (S/M/L/XL), and tier recommendation.
303297
304-
### RD-2. Dashboard i18n DOM Translation Pass
305-
- **Tier:** Next | **Priority:** P2 | **Impact:** 4 | **Effort:** L
306-
- **Source:** README ("dashboard interface is currently English-only"), locale:check:strict failure (~70 keys/locale missing)
307-
- **Problem:** Manifest and extension messages are localized in 8 languages, but the dashboard UI (~5,190 lines) is entirely English. This blocks international adoption during the once-in-a-decade MV3 window.
308-
- **Deliverable:** Wire `dashboard-i18n-v2.js` (already has 600 keys in 8 languages) into dashboard DOM. Add missing ~70 keys per locale. Gate with `npm run locale:check:strict` passing in CI.
309-
- **Acceptance:** Dashboard renders translated strings for all 8 locales. `locale:check:strict` exits 0. No untranslated hardcoded English strings in UI-visible dashboard elements.
310-
311298
### RD-6. background.core.ts Extraction Roadmap
312299
- **Tier:** Later | **Priority:** P2 | **Impact:** 4 | **Effort:** XL
313300
- **Source:** CLAUDE.md "TypeScript Source" section, ts-source-promotion.json (0 mirrored remaining but core.ts is the 12K-line bridge)
@@ -594,17 +581,3 @@ _(All Now-tier items are credential/compliance blocked — see `Roadmap_Blocked.
594581
| RD26-08 | Monaco v0.55.1 stable / v0.56-dev | https://github.com/microsoft/monaco-editor/releases |
595582
| RD26-09 | Vitest CVE-2026-47429 (CVSS 9.8) | https://github.com/advisories/GHSA-5xrq-8626-4rwp |
596583
| RD26-10 | W3C WebExtensions WG draft charter | https://w3c.github.io/charter-drafts/2025/webextensions-wg.html |
597-
598-
## Improvement Pass (2026-06-26)
599-
600-
> Items below identified by systematic code-level audit of build pipeline,
601-
> test infrastructure, CSS architecture, and accessibility compliance.
602-
> Deduplicated against all existing tiers and prior RD additions.
603-
604-
### Next
605-
606-
#### IMP-7. Coverage Threshold Ratchet
607-
- **Priority:** P2 | **Effort:** L
608-
- **Problem:** Coverage thresholds sit at lines 36%, functions 39%, branches 25%, statements 34% — the measured baseline. Critical service worker code (storage, sync, GM API) should have higher coverage to prevent regressions.
609-
- **Deliverable:** Phase 1 (v3.12.0): raise to 45/48/32/42. Phase 2 (v3.13.0): raise to 55/58/40/52. Phase 3: raise to 65/68/50/62. Each phase requires writing tests to fill gaps before ratcheting.
610-
- **Acceptance:** Each phase's thresholds pass in CI before the next phase begins.

background.core.js

Lines changed: 1 addition & 480 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)