Commit Graph

171 Commits

Author SHA1 Message Date
Haitao Pan
e6f0e43ff7 docs(case06): close out acceptance log 2026-06-27 11:28:38 +08:00
Haitao Pan
49f619dbcc fix(gateway): harden OpenClaw polling and acceptance notes 2026-06-27 11:27:14 +08:00
Haitao Pan
3422aae9bf docs(cases/06): mark S1 done — default expectedArtifactDirs (live-verified, bridge 0280893)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 06:34:32 +08:00
Haitao Pan
fdf449a3a0 docs(cases/06): S0 done — stable plugin install verified
Root cause of the plugin not loading was a symlink
~/.openclaw/extensions/openclaw-multi-session-plugins -> /tmp/... (ephemeral).
Replaced with a real dir, registered via `openclaw plugins install --force`,
restarted the gateway: now boots with "6 plugins ... openclaw-multi-session-plugins"
from the stable path, provenance warning gone, and xworkmate.session.prepare returns
the real plugin mapping (no bridge fallback). Survives restart.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 06:19:50 +08:00
Haitao Pan
830759313f docs(cases/06): definitive 4-layer chain incl. multi-session plugin + live verification
Rewrites the timeline (§1) and topology (§2) as the correct FOUR-layer chain
App → bridge → openclaw-multi-session-plugins → OpenClaw gateway, and documents the
plugin's multi-session/multi-thread role: session mapping (appThreadKey⇄openclawSessionKey),
per-(session,run) artifactScope = tasks/<sanitize(sessionKey)>/<runId>, the strict
sessionKey/runId/artifactScope triplet validation, and the expectedArtifactDirs
workspace-root fallback scan.

Live-verified against 127.0.0.1:8787 (plugin loaded, commit 2333c3e):
- session.prepare returns a real mapping; chat.send returns runId; xworkmate.tasks.get
  is handled by the plugin but returns no_native_task_record with an empty task scope
  (chain reaches the plugin layer; the agent run produced no queryable task / no file —
  a layer-4 execution/landing issue).

Adds §7 stability improvements grounded in this live run:
- S0 install the plugin from a stable path (not /private/tmp) — the primary reliability fix.
- S1 expectedArtifactDirs was [] → the plugin's workspace-root fallback is inert; bridge
  should always pass default dirs (reports/, artifacts/).
- S2 no_native_task_record status ambiguity (running vs completed-without-artifact).
- S3 sessionKey/runId/artifactScope triplet consistency (don't pre-prefix agent:main:).
- S4 runtime observability across all four layers.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 23:18:04 +08:00
Haitao Pan
8ba7804fa2 docs(cases/06): correct root cause — plugin not loaded, not protocol drift
Live verification disproved the earlier "xworkmate.* protocol namespace drift"
conclusion. The xworkmate.* gateway methods are REAL — registered at runtime by
the openclaw-multi-session-plugins plugin (index.ts registerGatewayMethod). The
actual failure: the running OpenClaw gateway did not load that plugin because its
source path was the ephemeral /private/tmp/openclaw-multi-session-plugins/... and
the gateway booted (09:21) ~9h before those files were populated (18:40), so it
started with 5 plugins (no multi-session) and every xworkmate.* returned
"unknown method". Restarting the gateway loads 6 plugins and the methods work
(errors shift to plugin-level param validation).

Changes:
- Add a corrected conclusion banner up top distinguishing the primary root cause
  (plugin load) from the T1-T9 robustness hardening.
- Replace the wrong "protocol drift / native alignment" section with the
  plugin-not-loaded root cause + evidence + the abandoned-branch note
  (fix/gateway-task-protocol-alignment must NOT be merged).
- Fix failure-row 10, T13 (runtime-state check now covers gateway plugin load),
  and the landing-order to put the plugin fix as step 0.
- Cross-reference openclaw-gateway-e2e-regression/ROOT_CAUSE_ANALYSIS.md (which
  was already correct about the 4-layer chain).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 23:08:01 +08:00
Haitao Pan
efb7f6b860 docs(cases/06): record definitive root cause — xworkmate.* gateway protocol drift
Adds the 2026-06-26 decisive finding: the bridge forwards `xworkmate.*` method
names the OpenClaw 2026.6.2 gateway does not implement (it uses native
tasks.get/list/cancel and artifacts.list/get/download). Documents the corrected
end-to-end turn timeline with the three break points (tasks.get unknown method;
{taskId}-only param shape + taskId!=runId; artifacts.* drift blocking .md delivery),
the evidence (gateway source + schema + CHANGELOG), the implemented task-lifecycle
fix, and the precisely-specified remaining work (artifact-method alignment + test
fixture migration). Corrects the earlier (wrong) "push/pull mismatch" conclusion.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 20:38:33 +08:00
Haitao Pan
a09a85c507 docs(cases): record local bridge runtime validation 2026-06-26 19:19:40 +08:00
Haitao Pan
9b437a99b2 docs(cases/06): mark T7/T8/T9 done with impl locations & design trade-offs
Records the durable per-session run-registry implementation (bridge branch
fix/gateway-durable-run-registry): T7 gateway-unconfirmed fallback, T8 terminal
result cache, T9 DeadlineAt interrupt — with the trade-offs (no gatewayruntime
pending-map rewrite; per-session in-memory store not yet cross-restart durable;
T9 only force-terminates when the gateway is unconfirmed) and the test names that
cover each.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 18:54:40 +08:00
Haitao Pan
40c59269e9 fix(gateway): day-1 stability — stop infinite "running" and un-stoppable tasks
Symptom: a gateway turn shows "任务运行中..." forever and 停止 has no effect,
even though the OpenClaw gateway has already finished (ACP_HTTP_CONNECTION_CLOSED).

- T3: add a hard deadline to the running-handle poll branch so the client no
  longer polls forever when tasks.get keeps returning "running". Budget is
  derived from taskLoadClass (10/30/60min, aligned with the bridge) + grace;
  on timeout the turn lands in a recoverable `interrupted` state
  (OPENCLAW_RUN_POLL_TIMEOUT) prompting the user to resend.
- T4: make 停止 locally authoritative — capture the association, mark the turn
  aborted immediately (clears pending, exits the poll loop), then fire
  tasks.cancel best-effort so a hung/failed cancel RPC can't block termination.
- T6: applyGatewayChatFailureInternal now authoritatively clears the pending
  flag (both raw + normalized key). Previously runOpenClawGatewayQueuedTurnInternal's
  finally never cleared it, leaving "error shown but still running".

Full cross-repo analysis + remaining TODO in docs/cases/06.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 10:48:45 +08:00
Haitao Pan
09352b35a0 chore: update macOS deployment target to 14.0 and commit pending changes 2026-06-25 09:52:33 +08:00
Haitao Pan
ab0ecdd005 feat: add explicit gateway task case hints for openclaw-gateway-e2e-regression 2026-06-17 16:00:54 +08:00
Haitao Pan
7e4b2a756a fix: prioritize managed bridge sync state 2026-06-16 06:20:13 +08:00
Haitao Pan
867629900a Improve assistant task UX 2026-06-07 12:03:08 +08:00
Haitao Pan
4f25126d4f fix: align OpenClaw task key flow 2026-06-06 13:56:03 +08:00
Haitao Pan
152074129a docs clarify openclaw artifact workspace ownership 2026-06-06 12:17:28 +08:00
Haitao Pan
05fc574f8b chore: retire rust ffi scaffold 2026-06-06 12:00:13 +08:00
Haitao Pan
b0389e9b2c Merge release/v1.1.4 into main 2026-06-06 11:51:09 +08:00
Haitao Pan
fe84d69e10 refactor: align OpenClaw session key state flow 2026-06-06 11:51:01 +08:00
Haitao Pan
c16704b052 Refactor OpenClaw task integration as thin adapter 2026-06-06 07:56:32 +08:00
Haitao Pan
ea781b5206 refactor/app-thread-key 2026-06-06 06:51:30 +08:00
Haitao Pan
495af092c5 Add OpenClaw thin adapter refactor plan 2026-06-05 21:55:15 +08:00
Haitao Pan
046020d8d7 Remove Patrol from macOS package 2026-06-05 21:47:08 +08:00
Haitao Pan
a6879d9d1f feat: pass OpenClaw artifact dir whitelist 2026-06-05 21:25:29 +08:00
Haitao Pan
5f3dc974aa Document OpenClaw artifact dirs protocol boundary 2026-06-05 21:23:56 +08:00
Haitao Pan
6d5122682c refactor: Remove OpenClaw rigid time limits and false positive no-exported-artifacts judgment 2026-06-05 18:10:34 +08:00
Haitao Pan
debd54e14c fix: sync openclaw terminal snapshots in app 2026-06-05 17:13:05 +08:00
Haitao Pan
2f8a047798 add design doc: multi-session-plugin-optimization 2026-06-05 14:53:47 +08:00
Haitao Pan
1878ce1bb2 fix(webrtc): resolve remote desktop black screen by properly binding remote video tracks and removing legacy Plan B constraints 2026-06-05 12:38:43 +08:00
Haitao Pan
3522bb7b99 docs: add cross-repo architecture chain maps and risk analysis
- Add 4 chain maps: task-execution, artifact-lifecycle, session-recovery, bridge-distributed
- Add cross-repo call analysis with top-10 fragile points
- Update AGENTS.md with 'Cross-Repo Architecture Chain Maps' section
- Document artifact path gap: OpenClaw tools output to ~/.openclaw/media/ but plugin export scans tasks/<session>/<run>/
2026-06-05 02:54:11 +00:00
Cowork 3P
f8449d42e7 Merge branch 'codex/openclaw-final-deliverables' into release/v1.1.4
# Conflicts:
#	docs/architecture/cross-repo-task-state-workflow.md
#	test/runtime/assistant_execution_target_test.dart
2026-06-05 07:47:04 +08:00
Cowork 3P
77be6981cc fix: finalize openclaw task polling results 2026-06-05 07:30:51 +08:00
Cowork 3P
8b91b9a434 update architecture docs 2026-06-05 06:59:42 +08:00
Cowork 3P
7573780956 docs(architecture): fix critical accuracy errors, stale refs, paths
Accuracy fixes:
- app-orchestration.md: remove non-existent constructor params
- models-and-config.md: remove wrong multiAgent field from SettingsSnapshot
- runtime-contracts.md: add missing multiAgent/collaborationMode/routingHint fields

Stale multi-agent refs:
- unified-routing-architecture.md: agent/multi-agent → agent (含 bridge 转发)
- bridge-runtime-routing-map.md: multi-agent tasks → multi-agent forwarding tasks
- cross-repo-task-state-workflow.md: remove multi-agent orchestration from mermaid
- runtime-contracts.md, feature-surfaces.md: 多 agent → agent

Organization:
- Move cloud-session-service and stage4-helper to archive/
- Fix 22 xworkmate/ → xworkmate-app/ paths in archive doc
- Fix XWorkmate.svc.plus repo name in simple-theme-default.md
- Update README.md index and public-api/README.md coverage stats (132/590)
2026-06-04 06:53:38 +00:00
Cowork 3P
74b9d1814d docs: add architecture README with categorized navigation 2026-06-04 06:32:27 +00:00
Cowork 3P
fdda0b7d85 test,docs: fix all stale references to deleted multi-agent subsystem
Test fixes (6 files, -303 lines):
- Delete app_controller_acp_mount_resilience_test.dart (entirely about deleted types)
- Remove multi-agent test cases from gateway_acp_client_auth_test.dart
- Rename _manifestWithDesktopMultiAgentEnabled → _defaultDesktopManifest
  in assistant_execution_target_test, assistant_lower_pane_test,
  mobile_assistant_page_test

Docs fixes (6 files):
- Regenerate public-symbol-inventory.json/md via make docs-public-api
- Remove multi-agent sections from public-api/models-and-config.md,
  app-orchestration.md, runtime-contracts.md
- Fix xworkmate/ → xworkmate-app/ paths in cloud-session doc
- Remove multiAgent references from app-external-service-api-test-matrix.md
2026-06-04 06:31:45 +00:00
Cowork 3P
376797a553 docs(cases): clean up test cases — remove ai-security-evolution scenario, fix issues
- Delete ai-security-evolution-content-scenario/ (8 files, referenced by removed MANUAL-LOCAL-001A)
- Remove MANUAL-LOCAL-001A from core-integration-manual-cases.md
- Fix duplicate section numbering (#5#6 for general thread scenarios)
- Remove misplaced workspace sync rules from MANUAL-ACP-004 (bridge auth case)
- Update README.md index
2026-06-04 06:13:38 +00:00
Haitao Pan
81ecfba85a feat: Remote Desktop UI and Client WebRTC Integration 2026-06-03 10:50:06 +08:00
Haitao Pan
22a0376b00 fix: repair bridge login sync runtime state 2026-06-01 10:02:13 +08:00
Haitao Pan
ee8bfa48fd chore: update core integration cases and runtime helpers 2026-05-30 12:04:54 +08:00
Haitao Pan
94236c90e1 test: align openclaw e2e prompts 2026-05-29 14:09:49 +08:00
Haitao Pan
e6cde355bc docs: record openclaw gateway e2e cases 2026-05-29 14:05:47 +08:00
Haitao Pan
8469537060 chore: prepare v1.1.3 release metadata 2026-05-28 13:20:57 +08:00
Haitao Pan
6806ac0045 Release v1.1.3 2026-05-27 15:10:07 +08:00
Haitao Pan
f861511a2f Remove OpenClaw direct ACP route 2026-05-26 11:06:22 +08:00
Haitao Pan
31990b30d9 Polish assistant UI and add Service Mesh video case 2026-05-25 13:43:00 +08:00
Haitao Pan
d28f40e863 merge: implement flutter and go testing framework 2026-05-25 08:55:15 +08:00
Haitao Pan
1e0d79532b chore: add ios release verification assets 2026-05-25 08:54:48 +08:00
Haitao Pan
3160ab3eb5 refactor: remove mobile approval surface 2026-05-24 12:15:54 +08:00
Haitao Pan
98a77aeccb docs: refresh v1.1.2 release notes 2026-05-23 16:01:04 +08:00