merge: integrate Robot configuration catalog editor

This commit is contained in:
2026-08-16 00:58:54 +08:00
9 changed files with 487 additions and 12 deletions

View File

@@ -12,6 +12,7 @@
## Scope
- On 2026-08-16, resume the existing Integration owner to merge reviewed Robot configuration-catalog/editor source `fe55dee` into local `main`, promote the accepted dynamic catalog boundary, and keep remote push outside this resumption.
- On 2026-08-15, resume the existing Integration owner to merge reviewed Robot configuration-schema fix `ea75b06` into local `main`, accepting canonical weak numeric response ETags produced by the deployed compression layer while keeping strong `If-Match` writes.
- On 2026-08-15, resume the existing Integration owner to merge reviewed Robot configuration-loading fix `1bcd519` into local `main`, preserving the page error/retry state and Main response-body deadline.
- On 2026-08-15, resume the existing Integration owner to merge reviewed source commit `fd9b5b46a913c515e94e4e26f185d43866c2581f` for the Codex-style AI Programming context-compaction timeline into local `main` and promote its accepted lifecycle facts.
@@ -124,6 +125,13 @@ Gate result:
## Plan
### 2026-08-16 Robot Configuration Catalog Integration Plan
1. Merge reviewed source commit `fe55dee` into local `main` with a normal no-ff merge while preserving source history.
2. Exclude the source-owned task record from the final `main` tree and promote the accepted safe catalog boundary into canonical architecture/current-state memory.
3. Re-run the Robot catalog/page/Main regression suite, typecheck, lint, production build, project-document gates, and whitespace checks.
4. Obtain an independent read-only Sol PASS/FAIL review; do not push remotely as part of this resumption.
1. Fetch `origin/main` and verify local `main`, the remote tip, and reviewed AI Canvas source commit topology.
2. Merge `22378ef` normally into local `main` without rebase/reset, and retain the source commit as a dedicated second parent.
3. Promote the bidirectional Gateway and Quote-reconciliation facts into canonical project memory.
@@ -154,6 +162,9 @@ Gate result:
## Outcome
- On 2026-08-16, started a normal `--no-ff --no-commit` merge of reviewed Robot catalog/editor source `fe55dee`; Git reported no textual conflicts. The source task record remains reachable on the source commit and feature branch and is excluded from the local `main` result.
- Promoted the USER-scoped dynamic model/voice catalog boundary: Renderer receives only bounded display metadata through Electron Main and Works Square, all public catalog outcomes are no-store, and current unavailable values remain editable.
- Replaced avoidable configuration text/number inputs with catalog selects and bounded TTS sliders while preserving `clear_fields`, revision conflict, operation identity, and Main-owned credential boundaries.
- On 2026-08-15, merged reviewed Robot configuration-schema source `ea75b06` into local `main` without textual conflict and excluded its source-owned task record from the final tree.
- Created no-ff merge commit `9738e1c5aebad6237f436c8c94abaf877eb3d175` with local baseline `a26a53a7f4b1326be3084955029a65ef1f79929a` as first parent and reviewed source `ea75b0618a793928878edad736f0837ac9e4adc1` as second parent.
- Confirmed the failure was transport-contract drift, not a Xiaozhi/Works DTO failure: response compression weakened the origin strong revision ETag to canonical `W/\"0\"`; Main now accepts only canonical strong or weak numeric response tags whose revision equals the strictly projected body.
@@ -234,6 +245,10 @@ Gate result:
## Verification
- 2026-08-16 source and staged-merge Robot catalog regression selection — 5 files / 84 tests passed.
- 2026-08-16 Works Square catalog adapter/API suite — 131 tests passed; one existing Starlette/httpx deprecation warning.
- 2026-08-16 Makelore typecheck, focused ESLint, and production `build:vite` — passed; only existing chunk-size and mixed-import warnings remain.
- 2026-08-16 independent source review — `PASS`, with no P0-P3 findings after all-outcome no-store and 40px target fixes.
- Robot configuration-schema source TDD recorded `2 failed, 23 passed` before the fix with `AI_HARDWARE_INVALID_ETAG` for the deployed weak-tag shape.
- Merged-tree AI hardware route suite passed `25/25`; the seven-file Robot/Main regression selection passed `78/78`.
- Merged-tree `pnpm run typecheck`, scoped ESLint, and `pnpm run build:vite` passed; build retains only existing chunk-size and mixed-import warnings.
@@ -296,6 +311,7 @@ Gate result:
## Follow-ups
- Deploy matching Xiaozhi and Works Square catalog endpoints before releasing this client; otherwise the editor preserves current values but cannot populate dynamic choices.
- The Robot integration is complete on local `main`. Production still requires matching Works Square/Xiaozhi deployment, feature configuration, credentials, and a real one-time activation-code smoke.
- Stable mutation operation IDs are retained across ambiguous retries in the running app but are not persisted across an application restart.
- Signed packaged updater smoke and live Works Square/Bailian image-to-image