mirror of
https://github.com/openclaw/openclaw.git
synced 2026-09-01 03:06:47 +00:00
* refactor(state): make cron and subagent rows JSON-canonical * refactor(state): make gateway origin device tokens canonical at v13 The lazy ensure predates the table joining the canonical schema; at the v13 bump the schema owns creation, so the feature-local DDL, WeakSet dedupe, and lazy-list entry retire. The legacy-file guard the ensure carried stays at each call site. * test: drop obsolete lazy-ensure coverage for origin device tokens The table is canonical at v13; same-version lazy creation no longer exists to protect. Origin CRUD, isolation, and rotation coverage remains in the surviving cases. * refactor(state): fold installed_plugin_index into config_machine_state The singleton index row becomes one JSON value under plugins.installedIndex with its rollback-fencing revision inside the value; reads, CAS restore, and the lease-held write transactions use direct Kysely on config_machine_state so the state_leases assertion stays in-transaction. The v13 migration imports the row and drops the table; the additive workspace_dir entry folds with it. Doctor guidance, docker staging, and the e2e probes name the machine-state row. * refactor(state): merge workspace_attestations into workspace_setup_state One row per workspace now carries both setup milestones and the attestation clock: nullable setup columns represent attestation-only workspaces (replaceWorkspaceAttestation can precede any setup write) and setupExists derives from a non-null version. The bootstrap-hash FK repoints to the merged table; migration receipts keep the historical workspace_attestations discriminator string. The v13 migration grows and rebuilds the table, merges attestation rows (orphans without a path alias drop — their hashes re-derive at the next bootstrap attestation), and the consolidation kind is renamed state-consolidation-v13 to cover the batch. * test(state): cover the workspace merge and consolidation fallout The v12-to-v13 regression seeds merged, attestation-only, and orphan attestation workspaces; the 13-to-12 downgrade fixture recreates workspace_attestations and installed_plugin_index from the folded data; the fold-in migration gates the additive workspace_dir column for pre-additive rows; the workspace merge now triggers on the setup table's own shape so stable-era databases without an attestations table still reshape; the consolidation applied-message covers the batch. * refactor(state): fold shared auth profile singletons into config_machine_state The shared-state auth_profile_stores/auth_profile_state rows (fixed key 'shared') become authProfiles.store/authProfiles.state machine-state values; the agent-DB tables of the same names are untouched. Git-backup redaction moves from table-drop to the authProfiles. secret prefix with seeded-secret absence proof; migration receipts keep the historical table-name discriminators; the shared-auth relocation and receipt verification project the KV cells back to the receipt-era row shapes so persisted digests stay byte-compatible. mcp_oauth_stores stays a table — its multi-key fold is a named follow-up. * test(state): finish shared-auth fold coverage and annotate boundary casts Auth seeders and assertions across the e2e/scripts/secrets suites target the authProfiles machine-state cells; the v12-to-v13 regression proves payload-byte fidelity, non-shared-row drop, and insert-if-absent precedence; the downgrade fixture recreates and repopulates both v12 tables. Boundary type assertions in the plugin-index store carry SAFETY invariants per the ratchet. * chore: shrink assertion-safety baseline for plugin-index store * refactor(doctor): delete the dead onboarding-recommendations migration Its input — the unscoped 'primary' onboarding row — existed only between |
||
|---|---|---|
| .. | ||
| lib | ||
| parallels | ||
| agent-bundle-mcp-tools-docker.sh | ||
| agents-delete-shared-workspace-docker.sh | ||
| browser-cdp-snapshot-docker.sh | ||
| browser-plugin-profiles-docker.sh | ||
| build-image.sh | ||
| bun-global-install-smoke.sh | ||
| bundled-plugin-install-uninstall-docker.sh | ||
| cli-installer-distribution-docker.sh | ||
| codex-media-path-docker.sh | ||
| codex-npm-plugin-live-docker.sh | ||
| codex-on-demand-docker.sh | ||
| compose-setup.sh | ||
| config-reload-source-docker.sh | ||
| cron-cli-docker.sh | ||
| cron-mcp-cleanup-docker-client.ts | ||
| cron-mcp-cleanup-docker.sh | ||
| cron-mcp-cleanup-seed.ts | ||
| docker-openai-seed.ts | ||
| docker-package-install.sh | ||
| docker-selected-plugins.sh | ||
| Dockerfile | ||
| Dockerfile.qr-import | ||
| doctor-install-switch-docker.sh | ||
| gateway-concurrency-docker.sh | ||
| gateway-network-docker.sh | ||
| kitchen-sink-plugin-docker.sh | ||
| kitchen-sink-rpc-docker.sh | ||
| kitchen-sink-rpc-walk.mjs | ||
| kitchen-sink-rpc-walk.mts | ||
| live-plugin-tool-docker.sh | ||
| mcp-app-conformance-server.mjs | ||
| mcp-channel-limits.ts | ||
| mcp-channels-docker.sh | ||
| mcp-channels-seed.ts | ||
| mcp-code-mode-gateway-client.ts | ||
| mcp-code-mode-gateway-docker.sh | ||
| mcp-code-mode-gateway-live-docker.sh | ||
| mcp-code-mode-gateway-seed.ts | ||
| mock-openai-server.mjs | ||
| multi-node-update-docker.sh | ||
| npm-onboard-channel-agent-docker.sh | ||
| npm-telegram-live-docker.sh | ||
| npm-telegram-live-runner.ts | ||
| onboard-docker.sh | ||
| openai-chat-tools-docker.sh | ||
| openai-image-auth-docker.sh | ||
| openai-web-search-minimal-docker.sh | ||
| openwebui-docker.sh | ||
| openwebui-probe.mjs | ||
| parallels-linux-smoke.sh | ||
| parallels-macos-smoke.sh | ||
| parallels-npm-update-smoke.sh | ||
| parallels-windows-prepare.sh | ||
| parallels-windows-smoke.sh | ||
| plugin-binding-command-escape-docker.sh | ||
| plugin-binding-command-escape.Dockerfile | ||
| plugin-lifecycle-matrix-docker.sh | ||
| plugin-update-unchanged-docker.sh | ||
| plugins-docker.sh | ||
| qa-cli-onboarding.mjs | ||
| qa-plugin-install-sources.mjs | ||
| qr-import-docker.sh | ||
| release-media-memory-docker.sh | ||
| release-plugin-marketplace-docker.sh | ||
| release-typed-onboarding-docker.sh | ||
| release-upgrade-user-journey-docker.sh | ||
| release-user-journey-docker.sh | ||
| sandbox-browser-sidecar-docker.sh | ||
| session-runtime-context-docker-client.ts | ||
| session-runtime-context-docker.sh | ||
| skill-install-docker.sh | ||
| status-corrupt-plugin-deps.sh | ||
| system-agent-first-run-docker.sh | ||
| system-agent-first-run-spec.json | ||
| system-agent-rescue-docker-client.ts | ||
| system-agent-rescue-docker.sh | ||
| telegram-bot-api-proxy.ts | ||
| telegram-bot-api.ts | ||
| telegram-desktop-crabbox.ts | ||
| telegram-desktop-recorder-contract.ts | ||
| telegram-desktop-recorder.ts | ||
| telegram-mantis-lane.ts | ||
| telegram-mantis-sut.ts | ||
| telegram-user-crabbox-proof.ts | ||
| telegram-user-credential-io.ts | ||
| telegram-user-credential-paths.ts | ||
| telegram-user-credential.ts | ||
| telegram-user-driver.py | ||
| update-channel-switch-docker.sh | ||
| update-corrupt-plugin-docker.sh | ||
| update-run-package-self-upgrade-docker.sh | ||
| upgrade-survivor-docker.sh | ||