mirror of
https://github.com/openclaw/openclaw.git
synced 2026-10-03 17:53:39 +00:00
* refactor(test): centralize worker declaration metadata Replay the reviewed first tooling layer on the current frozen main base. Keep package activation declarations reserved for the later owning layers; preserve the inherited main build graph and test coverage. * fix(update): bind recovery admission to existing authority Replay the reviewed authority layer on current main, preserving the diagnostics import owner. Retain Json (fuller-stack-dev) rollback-journal and Bun regression coverage; restore NORMAL reader policy after rollback-mode admission so retained Bun statements do not hold locks after settlement. Later FD3 custody remains in its owning layer. * fix(config): retain authority across config persistence Replay the accepted config authority layer without behavioral changes. Preserve producer-owned write guards through backup, snapshot, persistence, reread, and error settlement. * fix(plugins): fence convergence with lifecycle authority Replay the accepted plugin authority layer without behavioral changes. Keep install-record, peer-link, retention, doctor repair, and cohort operations under their existing canonical lease owners. * fix(plugins): preserve first authority refusal during repair Keep authority failures outside filesystem warning conversion, retain the first callback refusal through normalized installer outcomes, and join admitted peer repairs before rejection. Preserve the synchronous peer guard and lease-bound index CAS finalizer. Adapt the Doctor and convergence ownership pattern from Jason Sy in #144130. Focused red/green: 23 failures became 32 passes; full peer and retention controls pass 37 cases. Native review raised an overlapping async callback scenario; source review rejects it because the current per-invocation Doctor path is serial. Root final-effect and installed integration gates remain open. Co-authored-by: Jason (Json) <263060202+fuller-stack-dev@users.noreply.github.com> * fix(config): refuse guarded include writes before effects Reject include-owned mutations carrying inherited authority, explicit assertCurrent, or beforeCommit before Root preparation and backup effects. Remove the unreachable guarded include publisher and retain ordinary include publication and custom-root IO ownership. Three missing-refusal regressions reproduced before the repair. All 107 cases in mutate, io.write-lock and io.write-reread pass, including ordinary include exclusion and compensation controls. Native P1 review is scoped-clean. The fs-safe final-effect contract and installed candidate integration remain separate draft gates. * fix(config): retain update authority through runtime activation * fix(plugins): repair leased authority CI coverage Remove the unused unleased record writer and seed test fixtures through the canonical store producer. Keep compiled Doctor fixture module identity and direct leased-writer assertions. Bind registry authority callbacks and correct the focused fixture typing and lint errors without weakening refusal checks. Independent source review and native P0/P1 review passed; runtime and hosted CI qualification remain pending. * test(plugins): omit redundant deferred type arguments Use the existing void generic default for the three deferred test controls. The correction emits byte-identical JavaScript and preserves all assertions. This trivial test-only delta was independently verified after the full L4 P0/P1 review. The earlier focused 295-test and selected typecheck passes remain source-bound; the failed lint surface and unrun export scans still require qualification. * test(plugins): cover synchronous host-link admission turns Retain the three filesystem API-entry scheduling controls contributed by Jason Sy (@fuller-stack-dev) in https://github.com/openclaw/openclaw/pull/144316#issuecomment-5632474077. Cover missing node_modules, stale symlink, and package-copy replacement while preserving the existing synchronous authority contract and test seed helper. These controls observe API-entry timing, not native filesystem-effect atomicity or an observed regression on this source. Independent exact-block review and fresh full L4 native P0/P1 review passed. Targeted execution of these added cases remains pending. * fix(plugins): retain updater authority through package settlement * test(plugins): verify publication across updater revocation * fix(test): satisfy updater authority lint rules * test(plugins): isolate explicit update home fixture * refactor(plugins): centralize installed update options * style(plugins): format retained settlement fixture * test(plugins): accept capabilities in retained settlement proof * test(plugins): type retained settlement controls * fix(plugins): preserve lifecycle refusal across persistent effects Latch ownership refusal within install-record commits and forward the composed plugin lease to post-core peer effects. Add real-boundary regression controls for transient lease reads and raw plugin lease revocation. Independent and native source reviews passed. Matching targeted formatting passed; runtime, type, lint, and packaged qualification remain pending. * refactor(plugins): consolidate successful update records Keep source-specific install metadata while recording capability consent and the completed install through one shared path. Protect installed-version precedence over embedded ClawHub metadata. * test(update): join legacy finalization fixtures before cleanup * test(update): use supported parameterized timeout options * fix(plugins): share lifecycle refusal with package settlement Keep the first lifecycle authority refusal visible to outer retained package transactions after metadata publication, including transient lease reads. Preserve ordinary-error and fresh-owner recovery paths. --------- Co-authored-by: Jason (Json) <263060202+fuller-stack-dev@users.noreply.github.com> Co-authored-by: Vincent Koc <vincentkoc@ieee.org> |
||
|---|---|---|
| .. | ||
| contracts | ||
| e2e | ||
| fixtures | ||
| helpers | ||
| mocks | ||
| plugins | ||
| scripts | ||
| tsconfig | ||
| type-contracts | ||
| vitest | ||
| agent-exec-code-mode.live.test.ts | ||
| AGENTS.md | ||
| appcast.test.ts | ||
| architecture-smells.test.ts | ||
| buzz-account-config-mutation.test.ts | ||
| canonical-descendant.integration.test.ts | ||
| CLAUDE.md | ||
| clawrouter-managed-gateway.e2e.test.ts | ||
| cli-json-stdout.agents.e2e.test.ts | ||
| cli-json-stdout.automation.e2e.test.ts | ||
| cli-json-stdout.config.e2e.test.ts | ||
| cli-json-stdout.e2e.test.ts | ||
| cli-json-stdout.gateway.e2e.test.ts | ||
| cli-json-stdout.hooks.e2e.test.ts | ||
| cli-json-stdout.models.e2e.test.ts | ||
| cli-json-stdout.plugins.e2e.test.ts | ||
| cli-json-stdout.sessions.e2e.test.ts | ||
| cli-json-stdout.skills.e2e.test.ts | ||
| cli-json-stdout.test-support.ts | ||
| cli-state-sqlite.e2e.test.ts | ||
| copilot-tool-policy-handoff.integration.test.ts | ||
| copilot-tool-policy-handoff.live.test.ts | ||
| cron-edit-trigger-preservation.e2e.test.ts | ||
| discord-live-policy.integration.test.ts | ||
| doctor-copied-state-migration.e2e.test.ts | ||
| doctor-legacy-whatsapp-ack-migration.e2e.test.ts | ||
| dreaming-startup-cleanup.e2e.test.ts | ||
| embedded-transcript-cursor.e2e.test.ts | ||
| extension-import-boundaries.test.ts | ||
| extension-test-boundary.test.ts | ||
| external-script-modules.d.ts | ||
| gateway-account-history.e2e.test.ts | ||
| gateway-cold-agent-abort.e2e.test.ts | ||
| gateway-copied-codex-session-resume.e2e.test.ts | ||
| gateway-external-state-ownership.e2e.test.ts | ||
| gateway-hook-concurrency.e2e.test.ts | ||
| gateway-no-op-mutation.e2e.test.ts | ||
| gateway-openai-compaction-replay.e2e.test.ts | ||
| gateway-queued-session-rotation.e2e.test.ts | ||
| gateway-restored-requester-settle.e2e.test.ts | ||
| gateway-rpc-exporters.test.ts | ||
| gateway-session-end-shutdown.e2e.test.ts | ||
| gateway-steer-fifo.e2e.test.ts | ||
| gateway-widget-restart.live.test.ts | ||
| gateway.multi.e2e.test.ts | ||
| git-hooks-pre-commit-boundaries.test.ts | ||
| git-hooks-pre-commit.test-support.ts | ||
| git-hooks-pre-commit.test.ts | ||
| github-cli-preflight.e2e.test.ts | ||
| huggingface-local-app-openclaw.e2e.test.ts | ||
| image-generation.infer-cli.live.test.ts | ||
| image-generation.runtime.live.test.ts | ||
| jsdom-custom-elements.test.ts | ||
| jsdom-custom-elements.ts | ||
| line-question-gateway.test.ts | ||
| linux-dashboard-recovery.test.ts | ||
| linux-quickchat-stream.test.ts | ||
| loopback-ask-user-telegram-channel.test.ts | ||
| mcp-show-redact.e2e.test.ts | ||
| non-isolated-runner.mock-resolution-fixtures.ts | ||
| non-isolated-runner.test-api-fixtures.ts | ||
| non-isolated-runner.test.ts | ||
| non-isolated-runner.ts | ||
| npm-publish-plan.test.ts | ||
| oauth-refresh-authority-chain.e2e.test.ts | ||
| official-channel-catalog.test.ts | ||
| onboard-plugin-warnings.e2e.test.ts | ||
| openai-model-discovery-auth-order.test.ts | ||
| openai-onboarding.live.test.ts | ||
| openclaw-launcher-version.e2e.test.ts | ||
| openclaw-launcher.e2e.test.ts | ||
| openclaw-npm-postpublish-verify.test.ts | ||
| openclaw-npm-prepublish-verify.test.ts | ||
| openclaw-npm-release-check.test.ts | ||
| openclaw-prepack.test.ts | ||
| outbound-sanitize-text-delivery.test.ts | ||
| package-manager-config.test.ts | ||
| package-scripts.test.ts | ||
| plugin-clawhub-metadata.test.ts | ||
| plugin-clawhub-release.test.ts | ||
| plugin-cron-registry-owner.e2e.test.ts | ||
| plugin-extension-import-boundary.test.ts | ||
| plugin-npm-package-manifest.test.ts | ||
| plugin-npm-release.test.ts | ||
| plugin-npm-runtime-build.test.ts | ||
| pr111899-accepted-run-transport-loss.e2e.test.ts | ||
| pr119473-real-runtime-proof.e2e.test.ts | ||
| pr126853-heartbeat-visible-lane-proof.e2e.test.ts | ||
| pr142176-real-runtime-proof.e2e.test.ts | ||
| progress-card-channel-literals.integration.test.ts | ||
| qa-channel-message-tool-delivery.test.ts | ||
| qa-convex-credential-payload-validation.test.ts | ||
| release-check.test.ts | ||
| release-version.test.ts | ||
| repository-test-api-publications.ts | ||
| runtime-agent.codex-initialization.integration.test.ts | ||
| setup-home-isolation.test.ts | ||
| setup-openclaw-runtime.ts | ||
| setup.env.ts | ||
| setup.extensions.ts | ||
| setup.shared.ts | ||
| setup.signal.ts | ||
| setup.ts | ||
| skills-proposal-manual-target.e2e.test.ts | ||
| slack-outbound-permanent-rejection-loopback.test.ts | ||
| stable-release-closeout.test.ts | ||
| status-shared-state-readonly.e2e.test.ts | ||
| subagent-announce-origin.integration.test.ts | ||
| subagent-requester-owner.e2e.test.ts | ||
| system-agent-managed-auth.e2e.test.ts | ||
| talk-browser-defaults.test.ts | ||
| telegram-outbound-permanent-rejection-loopback.test.ts | ||
| telegram-question-gateway.test.ts | ||
| telegram-recovery-notice-send.test.ts | ||
| telegram-reply-conversation.test.ts | ||
| test-env.state-lifetime.test.ts | ||
| test-env.test.ts | ||
| test-env.ts | ||
| test-helper-extension-import-boundary.test.ts | ||
| test-home-context.mts | ||
| test-home-policy.mts | ||
| transcripts-discord-audio.integration.test.ts | ||
| transcripts-tool.discord-lifecycle.integration.test.ts | ||
| transcripts-tool.discord-provider.integration.test.ts | ||
| tsconfig.json | ||
| twitch-message-tool-delivery.test.ts | ||
| ui.presenter-next-run.test.ts | ||
| vitest-boundary-config.test.ts | ||
| vitest-cli-ownership.test.ts | ||
| vitest-dependency-resolution.test.ts | ||
| vitest-light-paths.test.ts | ||
| vitest-performance-config.test.ts | ||
| vitest-projects-config.test-support.ts | ||
| vitest-projects-config.test.ts | ||
| vitest-reporters-config.test.ts | ||
| vitest-scoped-config.test.ts | ||
| vitest-ui-e2e-config.test.ts | ||
| vitest-ui-e2e-prebuilt.test.ts | ||
| vitest-ui-package-config.test.ts | ||
| vitest-unit-config.test.ts | ||
| vitest-unit-fast-config.test.ts | ||
| vitest-unit-paths.test.ts | ||