IN PROGRESS
Parent: #16
Observed base: main@9495b2a
main@9495b2a
Execution base: #17 @ 9868142 and #20 @ 433f216 on refactor/foundation-wxt
9868142
433f216
refactor/foundation-wxt
Lane: Extension Runtime / Provider Bridge
Owner: one runtime writer; consumes #20 contracts and #17 WXT/build baseline
Service Worker、content providers 和 Frame Bridge 过去依赖 importScripts、globalThis 及 Manifest 文件顺序。WXT 迁移如果直接把这些文件打包,可能改变 Provider adapter 注册、Bridge 顺序、Grok tab 路由或消息安全边界。
importScripts
globalThis
将 Background、Content Script 和 Provider Bridge 渐进迁移到显式模块依赖,在保持运行时行为一致的前提下消除生成包对隐式 Manifest 脚本顺序的依赖。
document_idle
all_frames
content/providers/
Implemented:
entrypoints/background.ts
entrypoints/content.ts
service-worker-loader.js
Out of scope and unchanged:
libnspr4.so
pnpm typecheck
npm run check
npm test
git diff --check
pnpm build:chrome
background.js
content-scripts/content.js
pnpm package:extension
sha256sum -c dist/ai-parallel-browser-extension-v2.1.4.zip.sha256
unzip -t dist/ai-parallel-browser-extension-v2.1.4.zip
STATUS: PARTIAL ISSUE: #22 LANE: Extension Runtime / Provider Bridge EXECUTION_BASE: #17 @ 9868142 and #20 @ 433f216 BRANCH: refactor/foundation-wxt HEAD: 790005e OWNED_SCOPE: WXT background/content entrypoints, source compatibility loader, runtime bundle verification, focused runtime tests SENSITIVE_SURFACES_TOUCHED: Manifest background source path, generated content-script registration, Provider/Bridge bundle order; selectors/message fields/permissions/DNR unchanged AC_STATUS: 6/7 complete; Browser Smoke pending environment dependency VALIDATION: typecheck/check/test 35/35/diff/build/package/checksum/archive all pass SECURITY_PERMISSION_DELTA: none KNOWN_RISKS: source runtime remains JS-compatible during gradual migration; generated bundle smoke still needs a dependency-complete browser environment BLOCKERS: Chromium cannot start because libnspr4.so is missing NEXT: integrate #17/#20/#22 to main, rerun credential-free browser smoke, then hand off #18 Popup/UI
790005e feat(runtime): add explicit WXT runtime entrypoints
[HANDOFF]\nSTATUS: PARTIAL\nISSUE: #22\nBRANCH: refactor/foundation-wxt\nHEAD: 71d0160 (pushed)\n\nWXT background/content/provider bridge 显式 entrypoints 与运行时验证保持稳定;Workspace React drawer 通过既有 legacy runtime/action bridge 工作,没有修改 Provider selector、消息字段、Grok tab 路由、sender/origin/source 校验或权限。最新三浏览器 build/verify/package/checksum/unzip 全通过。\n\n当前仍 OPEN:credential-free browser smoke 待依赖完整环境执行;本地环境仍无法启动 Chromium(libnspr4.so)。
71d0160
[PR OPEN]\n集成 PR 已创建:https://github.com/CoderLambert/ai-parallel/pull/23\n\n当前分支 HEAD: 71d0160,已推送 origin/refactor/foundation-wxt。开发期验证已完成:typecheck/check、42/42 unit、Chrome/Edge/Firefox build/verify/package、SHA-256、unzip -t。浏览器加载/E2E 和认证 smoke 按执行约定留待最终合并前,由维护者集中执行;本地 Chromium 仍受 libnspr4.so 缺失影响。
[PROGRESS]\nHEAD: b3db136 (pushed)\n\nPR CI 暴露的 Browser Smoke source-checkout 与 React generated artifact 不一致问题已处理:workflow 现在手动触发并先执行 pnpm build:chrome,再针对 dist/chrome-mv3 运行 smoke;开发期不自动执行 E2E。Runtime bundle/权限边界未改变。
b3db136
[VALIDATION]\n\nHEAD: b3db136(已推送)\nPR: https://github.com/CoderLambert/ai-parallel/pull/23\n\nWXT Background/Content explicit entrypoints、Provider bridge bundle verification 和 existing runtime boundary 已完成;未修改 selector、message fields、Grok tab route、sender/origin/source 校验、权限或 DNR。远程 CI 全部通过,本地 npm test 43/43。\n\n状态:实现完成,Issue 保持 OPEN 等待 PR 合并。credential-free Browser Smoke 按用户约定延后到最终环境;本机缺少 libnspr4.so,未宣称浏览器 E2E 通过。
No dependencies set.
The note is not visible to the blocked user.
Execution State
IN PROGRESS
Parent: #16
Observed base:
main@9495b2aExecution base: #17 @
9868142and #20 @433f216onrefactor/foundation-wxtLane: Extension Runtime / Provider Bridge
Owner: one runtime writer; consumes #20 contracts and #17 WXT/build baseline
Problem
Service Worker、content providers 和 Frame Bridge 过去依赖
importScripts、globalThis及 Manifest 文件顺序。WXT 迁移如果直接把这些文件打包,可能改变 Provider adapter 注册、Bridge 顺序、Grok tab 路由或消息安全边界。Target
将 Background、Content Script 和 Provider Bridge 渐进迁移到显式模块依赖,在保持运行时行为一致的前提下消除生成包对隐式 Manifest 脚本顺序的依赖。
Invariants
document_idle、all_frames和现有 Provider content-script 顺序语义。content/providers/adapter。Execution Scope
Implemented:
entrypoints/background.tsentrypoints/content.tsservice-worker-loader.jsOut of scope and unchanged:
Acceptance Criteria
libnspr4.so,无法启动,待依赖完整的 CI/开发机补跑。Validation
pnpm typecheck✅npm run check✅npm test✅ 35/35git diff --check✅pnpm build:chrome✅ generatedbackground.jsand bundledcontent-scripts/content.jspnpm package:extension✅ ZIP and SHA-256 generatedsha256sum -c dist/ai-parallel-browser-extension-v2.1.4.zip.sha256✅unzip -t dist/ai-parallel-browser-extension-v2.1.4.zip✅libnspr4.soHandoff
Progress
790005e feat(runtime): add explicit WXT runtime entrypoints;分支验证完成,等待集成和浏览器环境补验。[HANDOFF]\nSTATUS: PARTIAL\nISSUE: #22\nBRANCH: refactor/foundation-wxt\nHEAD:
71d0160(pushed)\n\nWXT background/content/provider bridge 显式 entrypoints 与运行时验证保持稳定;Workspace React drawer 通过既有 legacy runtime/action bridge 工作,没有修改 Provider selector、消息字段、Grok tab 路由、sender/origin/source 校验或权限。最新三浏览器 build/verify/package/checksum/unzip 全通过。\n\n当前仍 OPEN:credential-free browser smoke 待依赖完整环境执行;本地环境仍无法启动 Chromium(libnspr4.so)。[PR OPEN]\n集成 PR 已创建:https://github.com/CoderLambert/ai-parallel/pull/23\n\n当前分支 HEAD: 71d0160,已推送 origin/refactor/foundation-wxt。开发期验证已完成:typecheck/check、42/42 unit、Chrome/Edge/Firefox build/verify/package、SHA-256、unzip -t。浏览器加载/E2E 和认证 smoke 按执行约定留待最终合并前,由维护者集中执行;本地 Chromium 仍受 libnspr4.so 缺失影响。
[PROGRESS]\nHEAD:
b3db136(pushed)\n\nPR CI 暴露的 Browser Smoke source-checkout 与 React generated artifact 不一致问题已处理:workflow 现在手动触发并先执行 pnpm build:chrome,再针对 dist/chrome-mv3 运行 smoke;开发期不自动执行 E2E。Runtime bundle/权限边界未改变。[VALIDATION]\n\nHEAD: b3db136(已推送)\nPR: https://github.com/CoderLambert/ai-parallel/pull/23\n\nWXT Background/Content explicit entrypoints、Provider bridge bundle verification 和 existing runtime boundary 已完成;未修改 selector、message fields、Grok tab route、sender/origin/source 校验、权限或 DNR。远程 CI 全部通过,本地 npm test 43/43。\n\n状态:实现完成,Issue 保持 OPEN 等待 PR 合并。credential-free Browser Smoke 按用户约定延后到最终环境;本机缺少 libnspr4.so,未宣称浏览器 E2E 通过。