Compare commits
2 Commits
main
...
feat/plugi
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
242fb3f16f | ||
|
|
02dde1afe7 |
264
.github/dependabot.yml
vendored
264
.github/dependabot.yml
vendored
@ -55,267 +55,3 @@ updates:
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/bluebubbles"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "01 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/diagnostics-otel"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "02 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/discord"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "03 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/lobster"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "04 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/matrix"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "05 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/msteams"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "06 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/nextcloud-talk"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "07 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/nostr"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "08 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/voice-call"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "09 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/zalo"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "10 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/zalouser"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "11 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/feishu"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "12 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/tlon"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "13 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/twitch"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "14 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/mattermost"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "15 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/synology-chat"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "16 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/brave-plugin"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "17 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/codex"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "18 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/diagnostics-prometheus"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "19 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/google-meet"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "20 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/diffs"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "21 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/memory-lancedb"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "22 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/openclaw-qqbot"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "23 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/plugins/whatsapp"
|
||||
schedule:
|
||||
interval: "cron"
|
||||
cronjob: "24 9,21 * * *"
|
||||
timezone: "Etc/UTC"
|
||||
open-pull-requests-limit: 5
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
|
||||
158
.github/workflows/check.yml
vendored
158
.github/workflows/check.yml
vendored
@ -5,7 +5,7 @@ on:
|
||||
# plugins/** must retest on Dependabot PRs and again after merge to main.
|
||||
pull_request:
|
||||
push:
|
||||
branches: [main, crab-beta, crab-development]
|
||||
branches: [main]
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
@ -23,35 +23,31 @@ jobs:
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
cache: npm
|
||||
cache-dependency-path: |
|
||||
plugins/**/package-lock.json
|
||||
- name: Resolve OpenClaw track
|
||||
id: openclaw-track
|
||||
run: node scripts/resolve-openclaw-track.mjs --github-output
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
repository: openclaw/openclaw
|
||||
ref: ${{ steps.openclaw-track.outputs.ref }}
|
||||
path: openclaw
|
||||
- shell: bash
|
||||
run: |
|
||||
plugin_track="${{ steps.openclaw-track.outputs.track }}"
|
||||
extra_args=(--openclaw-track "${{ steps.openclaw-track.outputs.track }}" --plugin-track "${plugin_track}")
|
||||
if [ "${{ steps.openclaw-track.outputs.track }}" = "development" ]; then
|
||||
extra_args=(--openclaw-track "${{ steps.openclaw-track.outputs.track }}" --fixture-set openclaw-beta --plugin-track source-pack)
|
||||
fi
|
||||
node scripts/run-static-suite.mjs --openclaw ./openclaw --policy dashboard --profile-runs 3 --plugin-inspector-smoke "${extra_args[@]}"
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
- run: node scripts/sync-fixtures.mjs --materialize
|
||||
- run: npm test
|
||||
- run: node scripts/sync-fixtures.mjs --check
|
||||
- run: node scripts/run-contract-smoke.mjs --strict --openclaw ./openclaw
|
||||
- run: node scripts/inspect-fixtures.mjs --check
|
||||
- run: npm run plugin-inspector:smoke
|
||||
- run: node scripts/generate-report.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/capture-contracts.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/synthetic-probes.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/cold-import-readiness.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/workspace-plan.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/platform-probes.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/import-loop-profile.mjs --check
|
||||
- run: node scripts/profile-contract-runtime.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/check-contract-coverage.mjs --openclaw ./openclaw
|
||||
- name: Write CI summary artifacts
|
||||
if: always()
|
||||
continue-on-error: true
|
||||
env:
|
||||
CRABPOT_FIXTURE_SET: ${{ steps.openclaw-track.outputs.track == 'development' && 'openclaw-beta' || '' }}
|
||||
CRABPOT_OPENCLAW_TRACK: ${{ steps.openclaw-track.outputs.track }}
|
||||
CRABPOT_PLUGIN_TRACK: ${{ steps.openclaw-track.outputs.track == 'development' && 'source-pack' || steps.openclaw-track.outputs.track }}
|
||||
run: |
|
||||
node scripts/generate-report.mjs --openclaw ./openclaw
|
||||
node scripts/capture-contracts.mjs --openclaw ./openclaw
|
||||
@ -59,12 +55,11 @@ jobs:
|
||||
node scripts/cold-import-readiness.mjs --openclaw ./openclaw
|
||||
node scripts/workspace-plan.mjs --openclaw ./openclaw
|
||||
node scripts/platform-probes.mjs --openclaw ./openclaw
|
||||
node scripts/check-generated-surface-fixture.mjs --openclaw ./openclaw
|
||||
node scripts/import-loop-profile.mjs
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw --runs 3
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw
|
||||
node scripts/compare-runtime-profile.mjs
|
||||
node scripts/check-ci-policy.mjs
|
||||
node scripts/write-ci-summary.mjs --mode check --openclaw-label "${{ steps.openclaw-track.outputs.label }}" --github-step-summary
|
||||
node scripts/write-ci-summary.mjs --mode check --openclaw-label openclaw/openclaw@main --github-step-summary
|
||||
- name: Upload CI reports
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v7
|
||||
@ -82,23 +77,22 @@ jobs:
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: Resolve OpenClaw track
|
||||
id: openclaw-track
|
||||
run: node scripts/resolve-openclaw-track.mjs --github-output
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
repository: openclaw/openclaw
|
||||
ref: ${{ steps.openclaw-track.outputs.ref }}
|
||||
path: openclaw
|
||||
- run: node --version
|
||||
- shell: bash
|
||||
run: |
|
||||
plugin_track="${{ steps.openclaw-track.outputs.track }}"
|
||||
extra_args=(--openclaw-track "${{ steps.openclaw-track.outputs.track }}" --plugin-track "${plugin_track}")
|
||||
if [ "${{ steps.openclaw-track.outputs.track }}" = "development" ]; then
|
||||
extra_args=(--openclaw-track "${{ steps.openclaw-track.outputs.track }}" --fixture-set openclaw-beta --plugin-track source-pack)
|
||||
fi
|
||||
node scripts/run-static-suite.mjs --openclaw ./openclaw --policy dashboard --profile-runs 3 --plugin-inspector-smoke "${extra_args[@]}"
|
||||
- run: node scripts/sync-fixtures.mjs --materialize
|
||||
- run: npm test
|
||||
- run: node scripts/sync-fixtures.mjs --check
|
||||
- run: node scripts/inspect-fixtures.mjs --check
|
||||
- run: npm run plugin-inspector:smoke
|
||||
- run: node scripts/generate-report.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/cold-import-readiness.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/workspace-plan.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/platform-probes.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/import-loop-profile.mjs --check
|
||||
- run: node scripts/profile-contract-runtime.mjs --check --openclaw ./openclaw
|
||||
|
||||
changed-fixture-plan:
|
||||
name: Resolve changed fixture matrix
|
||||
@ -113,20 +107,13 @@ jobs:
|
||||
with:
|
||||
fetch-depth: 1
|
||||
submodules: recursive
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
cache: npm
|
||||
cache-dependency-path: |
|
||||
plugins/**/package-lock.json
|
||||
- name: Resolve OpenClaw track
|
||||
id: openclaw-track
|
||||
run: node scripts/resolve-openclaw-track.mjs --github-output
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
repository: openclaw/openclaw
|
||||
ref: ${{ steps.openclaw-track.outputs.ref }}
|
||||
path: openclaw
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
- name: Resolve diff refs
|
||||
id: refs
|
||||
shell: bash
|
||||
@ -170,20 +157,13 @@ jobs:
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
cache: npm
|
||||
cache-dependency-path: |
|
||||
plugins/**/package-lock.json
|
||||
- name: Resolve OpenClaw track
|
||||
id: openclaw-track
|
||||
run: node scripts/resolve-openclaw-track.mjs --github-output
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
repository: openclaw/openclaw
|
||||
ref: ${{ steps.openclaw-track.outputs.ref }}
|
||||
path: openclaw
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
- name: Validate workspace plan
|
||||
run: node scripts/workspace-plan.mjs --check --openclaw ./openclaw
|
||||
- name: Execute fixture lane
|
||||
@ -196,10 +176,6 @@ jobs:
|
||||
if: always()
|
||||
continue-on-error: true
|
||||
run: npm run execution:report
|
||||
- name: Reconcile compatibility report with runtime evidence
|
||||
if: always()
|
||||
continue-on-error: true
|
||||
run: node scripts/generate-report.mjs --openclaw ./openclaw --execution-results reports/crabpot-execution-results.json --fixture-set "${{ matrix.id }}"
|
||||
- name: Run execution policy
|
||||
id: policy
|
||||
if: always()
|
||||
@ -208,7 +184,7 @@ jobs:
|
||||
- name: Write isolated summary
|
||||
if: always()
|
||||
continue-on-error: true
|
||||
run: node scripts/write-ci-summary.mjs --mode changed-isolated --openclaw-label "${{ steps.openclaw-track.outputs.label }}" --github-step-summary
|
||||
run: node scripts/write-ci-summary.mjs --mode changed-isolated --openclaw-label openclaw/openclaw@main --github-step-summary
|
||||
- name: Upload isolated execution artifacts
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v7
|
||||
@ -216,14 +192,12 @@ jobs:
|
||||
name: crabpot-changed-isolated-${{ matrix.id }}
|
||||
path: |
|
||||
.crabpot/results/
|
||||
reports/crabpot-report.*
|
||||
reports/crabpot-issues.*
|
||||
reports/crabpot-execution-results.*
|
||||
reports/crabpot-ci-policy.*
|
||||
reports/crabpot-ci-summary.*
|
||||
if-no-files-found: warn
|
||||
- name: Fail if isolated policy failed
|
||||
if: ${{ steps.policy.outcome == 'failure' }}
|
||||
- name: Fail if isolated execution failed
|
||||
if: ${{ steps.execute.outcome == 'failure' || steps.policy.outcome == 'failure' }}
|
||||
run: exit 1
|
||||
|
||||
dashboard:
|
||||
@ -236,39 +210,16 @@ jobs:
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
cache: npm
|
||||
cache-dependency-path: |
|
||||
plugins/**/package-lock.json
|
||||
- name: Resolve OpenClaw track
|
||||
id: openclaw-track
|
||||
run: node scripts/resolve-openclaw-track.mjs --github-output
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
repository: openclaw/openclaw
|
||||
ref: ${{ steps.openclaw-track.outputs.ref }}
|
||||
path: openclaw
|
||||
- run: node scripts/sync-fixtures.mjs --materialize --openclaw ./openclaw
|
||||
env:
|
||||
CRABPOT_FIXTURE_SET: ${{ steps.openclaw-track.outputs.track == 'development' && 'openclaw-beta' || '' }}
|
||||
CRABPOT_PLUGIN_TRACK: ${{ steps.openclaw-track.outputs.track == 'development' && 'source-pack' || steps.openclaw-track.outputs.track }}
|
||||
- name: Install OpenClaw lifecycle dependencies
|
||||
run: |
|
||||
corepack enable
|
||||
pnpm --dir openclaw install --frozen-lockfile --ignore-scripts
|
||||
- name: Fetch main dashboard baseline
|
||||
if: ${{ steps.openclaw-track.outputs.track != 'latest' }}
|
||||
run: |
|
||||
mkdir -p .crabpot/baseline
|
||||
git fetch --no-tags --depth=1 origin main
|
||||
git show origin/main:reports/crabpot-dashboard-data.json > .crabpot/baseline/main-dashboard-data.json || true
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
- run: node scripts/sync-fixtures.mjs --materialize
|
||||
- name: Write README dashboard
|
||||
env:
|
||||
CRABPOT_FIXTURE_SET: ${{ steps.openclaw-track.outputs.track == 'development' && 'openclaw-beta' || '' }}
|
||||
CRABPOT_OPENCLAW_TRACK: ${{ steps.openclaw-track.outputs.track }}
|
||||
CRABPOT_PLUGIN_TRACK: ${{ steps.openclaw-track.outputs.track == 'development' && 'source-pack' || steps.openclaw-track.outputs.track }}
|
||||
CRABPOT_RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
run: |
|
||||
export CRABPOT_SUMMARY_GENERATED_AT="$(date -u +"%Y-%m-%dT%H:%M:%SZ")"
|
||||
@ -278,21 +229,16 @@ jobs:
|
||||
node scripts/cold-import-readiness.mjs --openclaw ./openclaw
|
||||
node scripts/workspace-plan.mjs --openclaw ./openclaw
|
||||
node scripts/platform-probes.mjs --openclaw ./openclaw
|
||||
node scripts/import-loop-profile.mjs --openclaw ./openclaw --runs 3
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw --runs 3
|
||||
node scripts/import-loop-profile.mjs
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw
|
||||
node scripts/compare-runtime-profile.mjs
|
||||
node scripts/check-ci-policy.mjs
|
||||
node scripts/write-ci-summary.mjs --mode check --openclaw-label "${{ steps.openclaw-track.outputs.label }}"
|
||||
node scripts/update-track-metadata.mjs
|
||||
baseline_arg=""
|
||||
if [ -f .crabpot/baseline/main-dashboard-data.json ]; then
|
||||
baseline_arg="--baseline-data .crabpot/baseline/main-dashboard-data.json"
|
||||
fi
|
||||
node scripts/update-readme-summary.mjs ${baseline_arg}
|
||||
git add README.md reports/
|
||||
if ! git diff --cached --quiet; then
|
||||
node scripts/write-ci-summary.mjs --mode check --openclaw-label openclaw/openclaw@main
|
||||
node scripts/update-readme-summary.mjs
|
||||
if ! git diff --quiet README.md; then
|
||||
git config user.name "github-actions[bot]"
|
||||
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git add README.md
|
||||
git commit -m "chore(readme): update crabpot dashboard [skip ci]"
|
||||
git push || echo "::notice::Skipped stale dashboard push because ${GITHUB_REF_NAME} moved; a newer check run will refresh it."
|
||||
git push
|
||||
fi
|
||||
|
||||
104
.github/workflows/dependabot-auto-merge.yml
vendored
104
.github/workflows/dependabot-auto-merge.yml
vendored
@ -10,10 +10,6 @@ permissions:
|
||||
contents: write
|
||||
pull-requests: write
|
||||
|
||||
concurrency:
|
||||
group: crabpot-dependabot-automerge-${{ github.event.pull_request.base.ref }}
|
||||
cancel-in-progress: false
|
||||
|
||||
jobs:
|
||||
refresh-and-automerge:
|
||||
name: Refresh reports and enable auto-merge
|
||||
@ -29,44 +25,17 @@ jobs:
|
||||
submodules: recursive
|
||||
fetch-depth: 0
|
||||
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
cache: npm
|
||||
cache-dependency-path: |
|
||||
plugins/**/package-lock.json
|
||||
|
||||
- name: Configure git author
|
||||
run: |
|
||||
git config user.name "github-actions[bot]"
|
||||
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
|
||||
- name: Resolve OpenClaw track
|
||||
id: openclaw-track
|
||||
run: node scripts/resolve-openclaw-track.mjs --branch "${{ github.event.pull_request.base.ref }}" --github-output
|
||||
|
||||
- name: Checkout OpenClaw
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
repository: openclaw/openclaw
|
||||
ref: ${{ steps.openclaw-track.outputs.ref }}
|
||||
path: openclaw
|
||||
|
||||
- name: Update Dependabot branch with base
|
||||
shell: bash
|
||||
run: |
|
||||
set -euo pipefail
|
||||
git fetch origin "${{ github.event.pull_request.base.ref }}"
|
||||
git merge --no-edit "origin/${{ github.event.pull_request.base.ref }}"
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 22
|
||||
|
||||
- name: Fetch main dashboard baseline
|
||||
if: ${{ github.event.pull_request.base.ref != 'main' }}
|
||||
run: |
|
||||
mkdir -p .crabpot/baseline
|
||||
git fetch --no-tags --depth=1 origin main
|
||||
git show origin/main:reports/crabpot-dashboard-data.json > .crabpot/baseline/main-dashboard-data.json || true
|
||||
|
||||
- name: Verify Dependabot changed only fixture pins and generated reports
|
||||
- name: Verify Dependabot changed only fixture pins
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
PR_NUMBER: ${{ github.event.pull_request.number }}
|
||||
@ -79,25 +48,19 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
while IFS= read -r file; do
|
||||
if [[ "$file" == ".gitmodules" || "$file" == "README.md" || "$file" =~ ^reports/ || "$file" =~ ^plugins/[^/]+$ || "$file" =~ ^plugins/[^/]+/package(-lock)?\.json$ ]]; then
|
||||
if [[ "$file" == ".gitmodules" || "$file" =~ ^plugins/[^/]+$ || "$file" =~ ^plugins/[^/]+/package(-lock)?\.json$ ]]; then
|
||||
continue
|
||||
fi
|
||||
echo "::error file=${file}::Dependabot auto-merge only accepts fixture pin changes and generated report updates"
|
||||
echo "::error file=${file}::Dependabot auto-merge only accepts fixture pin changes"
|
||||
exit 1
|
||||
done < /tmp/crabpot-dependabot-files.txt
|
||||
|
||||
- name: Install OpenClaw lifecycle dependencies
|
||||
run: |
|
||||
corepack enable
|
||||
pnpm --dir openclaw install --frozen-lockfile --ignore-scripts
|
||||
|
||||
- name: Refresh compatibility reports
|
||||
env:
|
||||
CRABPOT_RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
run: |
|
||||
CRABPOT_SUMMARY_GENERATED_AT="$(date -u +"%Y-%m-%dT%H:%M:%SZ")"
|
||||
export CRABPOT_SUMMARY_GENERATED_AT
|
||||
node scripts/sync-fixtures.mjs --materialize --openclaw ./openclaw
|
||||
export CRABPOT_SUMMARY_GENERATED_AT="$(date -u +"%Y-%m-%dT%H:%M:%SZ")"
|
||||
node scripts/sync-fixtures.mjs --materialize
|
||||
npm test
|
||||
node scripts/sync-fixtures.mjs --check
|
||||
node scripts/run-contract-smoke.mjs --strict --openclaw ./openclaw
|
||||
@ -108,60 +71,25 @@ jobs:
|
||||
node scripts/cold-import-readiness.mjs --openclaw ./openclaw
|
||||
node scripts/workspace-plan.mjs --openclaw ./openclaw
|
||||
node scripts/platform-probes.mjs --openclaw ./openclaw
|
||||
node scripts/import-loop-profile.mjs --openclaw ./openclaw --runs 3
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw --runs 3
|
||||
node scripts/import-loop-profile.mjs
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw
|
||||
node scripts/compare-runtime-profile.mjs
|
||||
node scripts/check-ci-policy.mjs
|
||||
node scripts/write-ci-summary.mjs --mode dependabot --openclaw-label "${{ steps.openclaw-track.outputs.label }}"
|
||||
node scripts/update-track-metadata.mjs
|
||||
baseline_args=()
|
||||
if [ -f .crabpot/baseline/main-dashboard-data.json ]; then
|
||||
baseline_args=(--baseline-data .crabpot/baseline/main-dashboard-data.json)
|
||||
fi
|
||||
node scripts/update-readme-summary.mjs "${baseline_args[@]}"
|
||||
node scripts/write-ci-summary.mjs --mode dependabot --openclaw-label openclaw/openclaw@main
|
||||
node scripts/update-readme-summary.mjs
|
||||
|
||||
- name: Commit refreshed reports
|
||||
run: |
|
||||
if ! git diff --quiet README.md reports/; then
|
||||
git config user.name "github-actions[bot]"
|
||||
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git add README.md reports/
|
||||
git commit -m "chore(reports): refresh dependabot compatibility reports"
|
||||
git push
|
||||
fi
|
||||
|
||||
- name: Merge Dependabot PR
|
||||
- name: Enable Dependabot auto-merge
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
PR_NUMBER: ${{ github.event.pull_request.number }}
|
||||
shell: bash
|
||||
run: |
|
||||
set -euo pipefail
|
||||
for attempt in {1..18}; do
|
||||
state="$(gh pr view "${PR_NUMBER}" --json mergeable,mergeStateStatus,statusCheckRollup --jq '
|
||||
[
|
||||
.mergeable,
|
||||
.mergeStateStatus,
|
||||
([.statusCheckRollup[]?
|
||||
| select((.workflowName // "") != "Dependabot Auto Merge")
|
||||
| select((.status // .state // "") == "IN_PROGRESS" or (.status // .state // "") == "QUEUED" or (.status // .state // "") == "PENDING" or (.status // .state // "") == "EXPECTED")
|
||||
] | length),
|
||||
([.statusCheckRollup[]?
|
||||
| select((.workflowName // "") != "Dependabot Auto Merge")
|
||||
| select((.conclusion // .state // "") == "FAILURE" or (.conclusion // .state // "") == "ERROR" or (.conclusion // .state // "") == "TIMED_OUT" or (.conclusion // .state // "") == "ACTION_REQUIRED" or (.conclusion // .state // "") == "CANCELLED")
|
||||
] | length)
|
||||
] | @tsv
|
||||
')"
|
||||
read -r mergeable merge_state pending_checks failed_checks <<< "${state}"
|
||||
if [ "${failed_checks}" != "0" ]; then
|
||||
echo "::error::PR ${PR_NUMBER} has ${failed_checks} failed status check(s); refusing auto-merge"
|
||||
gh pr view "${PR_NUMBER}" --json url,mergeable,mergeStateStatus,statusCheckRollup
|
||||
exit 1
|
||||
fi
|
||||
if [ "${mergeable}" = "MERGEABLE" ] && [ "${pending_checks}" = "0" ]; then
|
||||
gh pr merge "${PR_NUMBER}" --squash --delete-branch
|
||||
exit 0
|
||||
fi
|
||||
echo "PR ${PR_NUMBER} mergeable=${mergeable} mergeStateStatus=${merge_state} pendingChecks=${pending_checks}; waiting for mergeability and green checks (${attempt}/18)"
|
||||
sleep 10
|
||||
done
|
||||
gh pr view "${PR_NUMBER}" --json url,mergeable,mergeStateStatus,statusCheckRollup
|
||||
exit 1
|
||||
run: gh pr merge "${PR_NUMBER}" --auto --squash --delete-branch
|
||||
|
||||
33
.github/workflows/openclaw-ref-compat.yml
vendored
33
.github/workflows/openclaw-ref-compat.yml
vendored
@ -58,7 +58,7 @@ on:
|
||||
description: "Fail on warning-level contract policy findings"
|
||||
type: boolean
|
||||
required: true
|
||||
default: true
|
||||
default: false
|
||||
strict_perf:
|
||||
description: "Fail on runtime profile threshold regressions when enough samples exist"
|
||||
type: boolean
|
||||
@ -77,7 +77,6 @@ jobs:
|
||||
PROFILE_RUNS: ${{ inputs.profile_runs }}
|
||||
STRICT_CONTRACT: ${{ inputs.strict_contract }}
|
||||
STRICT_PERF: ${{ inputs.strict_perf }}
|
||||
SUITE_POLICY: ${{ inputs.strict_contract && 'release' || 'dashboard' }}
|
||||
steps:
|
||||
- name: Checkout Crabpot
|
||||
uses: actions/checkout@v6
|
||||
@ -101,14 +100,22 @@ jobs:
|
||||
with:
|
||||
node-version: 22
|
||||
|
||||
- run: node scripts/run-static-suite.mjs --openclaw ./openclaw --policy "${SUITE_POLICY}" --profile-runs "${PROFILE_RUNS}" --plugin-inspector-smoke
|
||||
- run: node scripts/sync-fixtures.mjs --materialize
|
||||
- run: npm test
|
||||
- run: node scripts/sync-fixtures.mjs --check
|
||||
- run: node scripts/run-contract-smoke.mjs --strict --openclaw ./openclaw
|
||||
- run: node scripts/inspect-fixtures.mjs --check
|
||||
- run: node scripts/generate-report.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/capture-contracts.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/synthetic-probes.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/cold-import-readiness.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/workspace-plan.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/platform-probes.mjs --check --openclaw ./openclaw
|
||||
- run: node scripts/import-loop-profile.mjs --check
|
||||
- run: node scripts/profile-contract-runtime.mjs --openclaw ./openclaw --runs "${PROFILE_RUNS}"
|
||||
- name: Run runtime profile policy
|
||||
run: node scripts/compare-runtime-profile.mjs ${{ inputs.strict_perf && '--strict' || '' }}
|
||||
- run: node scripts/check-contract-coverage.mjs --openclaw ./openclaw
|
||||
- name: Install OpenClaw lifecycle dependencies
|
||||
run: |
|
||||
corepack enable
|
||||
pnpm --dir openclaw install --frozen-lockfile --ignore-scripts
|
||||
|
||||
- name: Write report artifacts
|
||||
if: always()
|
||||
@ -120,8 +127,7 @@ jobs:
|
||||
node scripts/cold-import-readiness.mjs --openclaw ./openclaw
|
||||
node scripts/workspace-plan.mjs --openclaw ./openclaw
|
||||
node scripts/platform-probes.mjs --openclaw ./openclaw
|
||||
node scripts/check-generated-surface-fixture.mjs --openclaw ./openclaw
|
||||
node scripts/import-loop-profile.mjs --openclaw ./openclaw --runs "${PROFILE_RUNS}"
|
||||
node scripts/import-loop-profile.mjs
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw --runs "${PROFILE_RUNS}"
|
||||
node scripts/compare-runtime-profile.mjs ${{ inputs.strict_perf && '--strict' || '' }}
|
||||
node scripts/check-ci-policy.mjs ${{ inputs.strict_contract && '--strict' || '' }}
|
||||
@ -175,7 +181,7 @@ jobs:
|
||||
with:
|
||||
node-version: 22
|
||||
|
||||
- run: node scripts/sync-fixtures.mjs --materialize --openclaw ./openclaw
|
||||
- run: node scripts/sync-fixtures.mjs --materialize
|
||||
- run: npm test
|
||||
- name: Compare OpenClaw refs
|
||||
run: |
|
||||
@ -305,11 +311,6 @@ jobs:
|
||||
continue-on-error: true
|
||||
run: npm run execution:report
|
||||
|
||||
- name: Reconcile compatibility report with runtime evidence
|
||||
if: always()
|
||||
continue-on-error: true
|
||||
run: node scripts/generate-report.mjs --openclaw ./openclaw --execution-results reports/crabpot-execution-results.json --fixture-set "${{ matrix.id }}"
|
||||
|
||||
- name: Run execution policy
|
||||
id: policy
|
||||
if: always()
|
||||
@ -328,8 +329,6 @@ jobs:
|
||||
name: crabpot-openclaw-ref-isolated-${{ matrix.id }}
|
||||
path: |
|
||||
.crabpot/results/
|
||||
reports/crabpot-report.*
|
||||
reports/crabpot-issues.*
|
||||
reports/crabpot-execution-results.*
|
||||
reports/crabpot-ci-policy.*
|
||||
reports/crabpot-ci-summary.*
|
||||
|
||||
165
.github/workflows/track-dashboard.yml
vendored
165
.github/workflows/track-dashboard.yml
vendored
@ -1,165 +0,0 @@
|
||||
name: Track Dashboard
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# Development follows OpenClaw main, so refresh it often enough to catch
|
||||
# contract drift. The job usually finishes in a few minutes; concurrency
|
||||
# below keeps slower runs from stacking up.
|
||||
- cron: "7,22,37,52 * * * *"
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
track:
|
||||
description: "Crabpot track to refresh"
|
||||
required: true
|
||||
default: development
|
||||
type: choice
|
||||
options:
|
||||
- development
|
||||
- beta
|
||||
- latest
|
||||
- all
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
dashboard:
|
||||
name: Refresh ${{ matrix.track }} dashboard
|
||||
runs-on: ubuntu-latest
|
||||
concurrency:
|
||||
group: crabpot-track-dashboard-${{ matrix.track }}
|
||||
cancel-in-progress: true
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- track: latest
|
||||
branch: main
|
||||
fixture_set: ""
|
||||
plugin_track: latest
|
||||
- track: beta
|
||||
branch: crab-beta
|
||||
fixture_set: ""
|
||||
plugin_track: beta
|
||||
- track: development
|
||||
branch: crab-development
|
||||
fixture_set: openclaw-beta
|
||||
plugin_track: source-pack
|
||||
steps:
|
||||
- name: Select requested track
|
||||
id: select
|
||||
shell: bash
|
||||
run: |
|
||||
run=false
|
||||
if [ "${{ github.event_name }}" = "schedule" ] && [ "${{ matrix.track }}" = "development" ]; then
|
||||
run=true
|
||||
fi
|
||||
if [ "${{ github.event_name }}" = "workflow_dispatch" ] && { [ "${{ inputs.track }}" = "all" ] || [ "${{ inputs.track }}" = "${{ matrix.track }}" ]; }; then
|
||||
run=true
|
||||
fi
|
||||
echo "run=${run}" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- uses: actions/checkout@v6
|
||||
if: ${{ steps.select.outputs.run == 'true' }}
|
||||
with:
|
||||
ref: main
|
||||
submodules: recursive
|
||||
|
||||
- uses: actions/setup-node@v6
|
||||
if: ${{ steps.select.outputs.run == 'true' }}
|
||||
with:
|
||||
node-version: 22
|
||||
cache: npm
|
||||
cache-dependency-path: |
|
||||
plugins/**/package-lock.json
|
||||
|
||||
- name: Resolve OpenClaw track
|
||||
if: ${{ steps.select.outputs.run == 'true' }}
|
||||
id: openclaw-track
|
||||
run: node scripts/resolve-openclaw-track.mjs --track "${{ matrix.track }}" --github-output
|
||||
|
||||
- uses: actions/checkout@v6
|
||||
if: ${{ steps.select.outputs.run == 'true' }}
|
||||
with:
|
||||
repository: openclaw/openclaw
|
||||
ref: ${{ steps.openclaw-track.outputs.ref }}
|
||||
path: openclaw
|
||||
|
||||
- if: ${{ steps.select.outputs.run == 'true' }}
|
||||
run: |
|
||||
node scripts/run-static-suite.mjs \
|
||||
--openclaw ./openclaw \
|
||||
--policy dashboard \
|
||||
--profile-runs 3 \
|
||||
--plugin-inspector-smoke \
|
||||
--openclaw-track "${{ matrix.track }}" \
|
||||
--fixture-set "${{ matrix.fixture_set }}" \
|
||||
--plugin-track "${{ matrix.plugin_track }}"
|
||||
|
||||
- name: Install OpenClaw lifecycle dependencies
|
||||
if: ${{ steps.select.outputs.run == 'true' }}
|
||||
run: |
|
||||
corepack enable
|
||||
pnpm --dir openclaw install --frozen-lockfile --ignore-scripts
|
||||
|
||||
- name: Fetch main dashboard baseline
|
||||
if: ${{ steps.select.outputs.run == 'true' && matrix.track != 'latest' }}
|
||||
run: |
|
||||
mkdir -p .crabpot/baseline
|
||||
git fetch --no-tags --depth=1 origin main
|
||||
git show origin/main:reports/crabpot-dashboard-data.json > .crabpot/baseline/main-dashboard-data.json || true
|
||||
|
||||
- name: Write branch dashboard
|
||||
if: ${{ steps.select.outputs.run == 'true' }}
|
||||
env:
|
||||
CRABPOT_FIXTURE_SET: ${{ matrix.fixture_set }}
|
||||
CRABPOT_OPENCLAW_TRACK: ${{ matrix.track }}
|
||||
CRABPOT_PLUGIN_TRACK: ${{ matrix.plugin_track }}
|
||||
CRABPOT_RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
run: |
|
||||
export CRABPOT_SUMMARY_GENERATED_AT="$(date -u +"%Y-%m-%dT%H:%M:%SZ")"
|
||||
execution_results_arg=""
|
||||
if [ "${{ matrix.track }}" = "development" ]; then
|
||||
CRABPOT_EXECUTE_ISOLATED=1 node scripts/execute-workspace-plan.mjs --fixture-set openclaw-beta --openclaw ./openclaw --continue-on-error
|
||||
node scripts/summarize-execution-results.mjs --write
|
||||
execution_results_arg="--execution-results reports/crabpot-execution-results.json"
|
||||
fi
|
||||
node scripts/generate-report.mjs --openclaw ./openclaw ${execution_results_arg}
|
||||
node scripts/capture-contracts.mjs --openclaw ./openclaw
|
||||
node scripts/synthetic-probes.mjs --openclaw ./openclaw
|
||||
node scripts/cold-import-readiness.mjs --openclaw ./openclaw
|
||||
node scripts/workspace-plan.mjs --openclaw ./openclaw
|
||||
node scripts/platform-probes.mjs --openclaw ./openclaw
|
||||
node scripts/check-generated-surface-fixture.mjs --openclaw ./openclaw
|
||||
node scripts/import-loop-profile.mjs --openclaw ./openclaw --runs 3
|
||||
node scripts/profile-contract-runtime.mjs --openclaw ./openclaw --runs 3
|
||||
node scripts/compare-runtime-profile.mjs
|
||||
node scripts/check-ci-policy.mjs
|
||||
node scripts/write-ci-summary.mjs --mode "track:${{ matrix.track }}" --openclaw-label "${{ steps.openclaw-track.outputs.label }}"
|
||||
node scripts/update-track-metadata.mjs --track "${{ matrix.track }}"
|
||||
baseline_arg=""
|
||||
if [ -f .crabpot/baseline/main-dashboard-data.json ]; then
|
||||
baseline_arg="--baseline-data .crabpot/baseline/main-dashboard-data.json"
|
||||
fi
|
||||
node scripts/update-readme-summary.mjs ${baseline_arg}
|
||||
|
||||
git config user.name "github-actions[bot]"
|
||||
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git add README.md reports/
|
||||
if ! git diff --cached --quiet; then
|
||||
git commit -m "chore(readme): refresh ${{ matrix.track }} dashboard [skip ci]"
|
||||
if [ "${{ matrix.branch }}" = "main" ]; then
|
||||
git push origin HEAD:${{ matrix.branch }}
|
||||
else
|
||||
git fetch --no-tags --depth=1 origin "${{ matrix.branch }}"
|
||||
git push --force-with-lease="refs/heads/${{ matrix.branch }}" origin HEAD:${{ matrix.branch }}
|
||||
fi
|
||||
fi
|
||||
|
||||
- name: Upload track reports
|
||||
if: ${{ always() && steps.select.outputs.run == 'true' }}
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: crabpot-track-${{ matrix.track }}-reports
|
||||
path: reports/
|
||||
if-no-files-found: warn
|
||||
24
.gitmodules
vendored
24
.gitmodules
vendored
@ -90,27 +90,3 @@
|
||||
path = plugins/mocrane-wecom
|
||||
url = https://github.com/TencentCloud-Lighthouse/openclaw-wecom.git
|
||||
shallow = true
|
||||
[submodule "plugins/dingtalk-connector"]
|
||||
path = plugins/dingtalk-connector
|
||||
url = https://github.com/DingTalk-Real-AI/dingtalk-openclaw-connector.git
|
||||
shallow = true
|
||||
[submodule "plugins/kitchen-sink"]
|
||||
path = plugins/kitchen-sink
|
||||
url = https://github.com/openclaw/kitchen-sink.git
|
||||
shallow = true
|
||||
[submodule "plugins/openclaw-telemetry"]
|
||||
path = plugins/openclaw-telemetry
|
||||
url = https://github.com/knostic/openclaw-telemetry.git
|
||||
shallow = true
|
||||
[submodule "plugins/telnyx-sms"]
|
||||
path = plugins/telnyx-sms
|
||||
url = https://github.com/team-telnyx/telnyx-openclaw-sms-channel.git
|
||||
shallow = true
|
||||
[submodule "plugins/clawrouter"]
|
||||
path = plugins/clawrouter
|
||||
url = https://github.com/BlockRunAI/ClawRouter.git
|
||||
shallow = true
|
||||
[submodule "plugins/nemoclaw"]
|
||||
path = plugins/nemoclaw
|
||||
url = https://github.com/NVIDIA/NemoClaw.git
|
||||
shallow = true
|
||||
|
||||
@ -1,4 +0,0 @@
|
||||
# External plugin submodule history/comments that mention retired OpenClaw
|
||||
# metadata. Crabpot-owned files are checked by npm run check:contracts.
|
||||
plugins/agentchat/integrations/openclaw-channel/CHANGELOG.md
|
||||
plugins/nemoclaw/scripts/generate-openclaw-config.py
|
||||
@ -8,9 +8,5 @@
|
||||
opt-in and secrets.
|
||||
- Prefer seam labels over product categories: `dynamic-tool`, `llm-observer`,
|
||||
`gateway-service`, `provider-capability`, and similar.
|
||||
- Treat `openclaw` package dependencies as host-linked inputs owned by the
|
||||
inspector/workspace plan, not as upstream plugin install findings.
|
||||
- When plugin-inspector behavior or package versions change, update both the
|
||||
source ref and generated report/test expectations. After npm publish, update
|
||||
the package pin and run both source-mode and package-mode smoke checks.
|
||||
- When adding a fixture, explain the unique seam it covers in `why`.
|
||||
|
||||
|
||||
122
README.md
122
README.md
@ -1,77 +1,69 @@
|
||||
# 🦀 crabpot
|
||||
# crabpot
|
||||
|
||||
<img width="1376" height="768" alt="crabpot" src="https://github.com/user-attachments/assets/79eb0be1-0736-4a78-a62d-cb66ab080c60" />
|
||||
<p></p>
|
||||
Compatibility trap for OpenClaw plugin contracts.
|
||||
|
||||
**Goto: [Latest Published](https://github.com/openclaw/crabpot/tree/main) | [Latest Beta](https://github.com/openclaw/crabpot/tree/crab-beta) | [Main Development](https://github.com/openclaw/crabpot/tree/crab-development)**
|
||||
`crabpot` keeps a curated set of real community plugins pinned under `plugins/`
|
||||
and runs seam-focused compatibility checks against OpenClaw plugin APIs. The goal
|
||||
is to catch contract drift before external plugin authors do.
|
||||
|
||||
**Compatibility trap for OpenClaw plugin contracts.** `crabpot` keeps a curated set of real community plugins pinned under `plugins/` and runs seam-focused compatibility checks against OpenClaw plugin APIs. The goal is to catch contract drift before external plugin authors do. Built on top of `plugin-inspector`, the testing harness for OpenClaw.
|
||||
|
||||
## Reporting Data
|
||||
|
||||
`main` follows the latest published npm package and npm `latest` plugin artifacts, with bundled OpenClaw fixtures source-packed from the matching checkout. `crab-beta` follows beta npm dist-tags for externalized packages and source-packs bundled fixtures. `crab-development` checks `openclaw/openclaw` main against source-packed official plugin artifacts from that same OpenClaw checkout.
|
||||
- **Last dashboard update:** May 07, 2026, 09:32 UTC
|
||||
<!-- crabpot-tracks:start -->
|
||||
- **Source:** `npm-latest`
|
||||
- **OpenClaw version:** `2026.5.6`
|
||||
- **OpenClaw SHA:** `c97b9f79ec43`
|
||||
- **Dashboard target:** `openclaw@latest + @openclaw/*@latest + bundled source fixtures`
|
||||
- **Plugin artifacts:** `npm latest fixture set plus bundled source-packed fixtures`
|
||||
- **GitHub report run:** [25487512981](https://github.com/openclaw/crabpot/actions/runs/25487512981)
|
||||
<!-- crabpot-tracks:end -->
|
||||
|
||||
<!-- crabpot-summary:start -->
|
||||
## Dashboard
|
||||
|
||||
| Metric | Result |
|
||||
| ---------------------- | ----------------------------------------------------------------------------------------------------------------- |
|
||||
| Fixtures | 57 |
|
||||
| Hard breakages | 0 |
|
||||
| Warnings | 126 |
|
||||
| Suggestions | 155 |
|
||||
| Issues | 281 |
|
||||
| P0 issues | [🔴 P0 0](reports/crabpot-issues.md#p0-live-issues) |
|
||||
| P1 issues | [🟠 P1 15](reports/crabpot-issues.md#triage-summary) |
|
||||
| Live issues | 0 total / 0 P0 |
|
||||
| Compat gaps | 2 |
|
||||
| Deprecation warnings | 42 |
|
||||
| Inspector gaps | 163 |
|
||||
| Upstream metadata | 74 |
|
||||
| Contract probes | 277 |
|
||||
| Policy failures | 0 |
|
||||
| Policy warnings | 19 |
|
||||
| Ref diff failures | 0 |
|
||||
| Profile failures | 0 |
|
||||
| Execution probes | 12 pass / 0 fail / 18 blocked |
|
||||
| Synthetic probes | 434 ready / 0 blocked / 434 total |
|
||||
| Cold import | 6 ready / 97 blocked / 103 entrypoints |
|
||||
| Workspace plan | 103 entrypoints / 43 installs / 11 builds |
|
||||
| Platform risks | 14 Windows / 14 container |
|
||||
| Jiti loader candidates | 25 |
|
||||
| Import loop | p50 2421ms / p95 2471ms / plugin delta RSS 13.3MB / plugin delta CPU 35ms / OpenClaw import 84ms / activate 0.3ms |
|
||||
| Runtime profile | p50 2337ms / command p95 2391ms / max RSS 455.4MB / 3 samples/command |
|
||||
Last dashboard update: Apr 26, 2026, 08:52 UTC
|
||||
|
||||
### OpenClaw Lifecycle Probe
|
||||
State: PASS
|
||||
|
||||
| Phase | p50 | p95 |
|
||||
| -------------------------- | ----- | ------ |
|
||||
| Import (`full`) | 84ms | 88.6ms |
|
||||
| Activate (`full:register`) | 0.3ms | 1.2ms |
|
||||
Mode: check
|
||||
|
||||
OpenClaw: openclaw/openclaw@main
|
||||
|
||||
Run: https://github.com/openclaw/crabpot/actions/runs/24952631216
|
||||
|
||||
### Result Grid
|
||||
|
||||
| Metric | Result |
|
||||
| ---------------------- | ---------------------------------------------------- |
|
||||
| Fixtures | 27 |
|
||||
| Hard breakages | 0 |
|
||||
| Warnings | 51 |
|
||||
| Suggestions | 92 |
|
||||
| Issues | 143 |
|
||||
| P0 issues | [🔴 P0 2](reports/crabpot-issues.md#p0-live-issues) |
|
||||
| P1 issues | [🟠 P1 26](reports/crabpot-issues.md#triage-summary) |
|
||||
| Live issues | 2 total / 2 P0 |
|
||||
| Compat gaps | 1 |
|
||||
| Deprecation warnings | 21 |
|
||||
| Inspector gaps | 97 |
|
||||
| Upstream metadata | 22 |
|
||||
| Contract probes | 141 |
|
||||
| Policy failures | 0 |
|
||||
| Policy warnings | 3 |
|
||||
| Ref diff failures | 0 |
|
||||
| Profile failures | 0 |
|
||||
| Execution probes | 6 pass / 0 fail / 2 blocked |
|
||||
| Synthetic probes | 141 ready / 0 blocked / 141 total |
|
||||
| Cold import | 0 ready / 30 blocked / 30 entrypoints |
|
||||
| Workspace plan | 30 entrypoints / 20 installs / 7 builds |
|
||||
| Platform risks | 153 Windows / 47 container |
|
||||
| Jiti loader candidates | 18 |
|
||||
| Import loop | p50 153ms / p95 165ms / max RSS 46.3MB / CPU 27ms |
|
||||
| Runtime profile | p50 649ms / p95 1329ms / max RSS 68.7MB |
|
||||
|
||||
### Top Discovered Issues
|
||||
|
||||
| Severity | Class | Fixture | Code | Decision | Title |
|
||||
| -------- | ------------- | ----------------- | ------------------------ | ------------------- | --------------------------------------------------------------------------------------------------------------------------- |
|
||||
| 🟠 P1 | compat-gap | clawmetry | sdk-export-missing | core-compat-adapter | [clawmetry: plugin SDK import aliases are missing from target package exports](reports/crabpot-issues.md#compat-gaps) |
|
||||
| 🟠 P1 | inspector-gap | honcho | conversation-access-hook | inspector-follow-up | [honcho: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | compat-gap | honcho | sdk-export-missing | core-compat-adapter | [honcho: plugin SDK import aliases are missing from target package exports](reports/crabpot-issues.md#compat-gaps) |
|
||||
| 🟠 P1 | inspector-gap | kitchen-sink | before-tool-call-probe | inspector-follow-up | [kitchen-sink: before_tool_call needs terminal/block/approval probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | kitchen-sink | conversation-access-hook | inspector-follow-up | [kitchen-sink: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | llm-trace-phoenix | conversation-access-hook | inspector-follow-up | [llm-trace-phoenix: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | memory-lancedb | conversation-access-hook | inspector-follow-up | [memory-lancedb: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | memory-tencentdb | conversation-access-hook | inspector-follow-up | [memory-tencentdb: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | memos-cloud | conversation-access-hook | inspector-follow-up | [memos-cloud: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | nemoclaw | before-tool-call-probe | inspector-follow-up | [nemoclaw: before_tool_call needs terminal/block/approval probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| Severity | Class | Fixture | Code | Decision | Title |
|
||||
| -------- | ------------- | ---------------- | ------------------------ | ------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| 🔴 P0 | live-issue | codex-app-server | sdk-export-missing | core-compat-adapter | [codex-app-server: plugin SDK import aliases are missing from target package exports](reports/crabpot-issues.md#p0-live-issues) |
|
||||
| 🔴 P0 | live-issue | hyperspell | unknown-hook-name | core-compat-adapter | [hyperspell: fixture uses a hook missing from target OpenClaw](reports/crabpot-issues.md#p0-live-issues) |
|
||||
| 🟠 P1 | inspector-gap | a2a-gateway | registration-capture-gap | inspector-follow-up | [a2a-gateway: runtime registrations need capture before contract judgment](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | clawmetry | registration-capture-gap | inspector-follow-up | [clawmetry: runtime registrations need capture before contract judgment](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | compat-gap | codex-app-server | missing-compat-record | core-compat-adapter | [codex-app-server: compat-dependent behavior lacks registry coverage](reports/crabpot-issues.md#compat-gaps) |
|
||||
| 🟠 P1 | inspector-gap | codex-app-server | registration-capture-gap | inspector-follow-up | [codex-app-server: runtime registrations need capture before contract judgment](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | connectclaw | registration-capture-gap | inspector-follow-up | [connectclaw: runtime registrations need capture before contract judgment](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | honcho | conversation-access-hook | inspector-follow-up | [honcho: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | honcho | registration-capture-gap | inspector-follow-up | [honcho: runtime registrations need capture before contract judgment](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
| 🟠 P1 | inspector-gap | hyperspell | conversation-access-hook | inspector-follow-up | [hyperspell: conversation-access hooks need privacy-boundary probes](reports/crabpot-issues.md#inspector-proof-gaps) |
|
||||
<!-- crabpot-summary:end -->
|
||||
## What this tests
|
||||
|
||||
@ -143,13 +135,11 @@ For deeper review, open the reports in this order:
|
||||
| Isolated install/build/capture commands Crabpot would run | `npm run workspace:plan` | `reports/crabpot-workspace-plan.md` |
|
||||
| Results from opt-in isolated fixture execution | `npm run execution:report` | `reports/crabpot-execution-results.md` |
|
||||
| Boot time and RSS against the target OpenClaw registry surface | `npm run profile` | `reports/crabpot-runtime-profile.md` |
|
||||
| README dashboard refresh from all generated JSON reports | `npm run readme:summary` | `README.md`, `reports/crabpot-dashboard-data.json` |
|
||||
| README dashboard refresh from all generated JSON reports | `npm run readme:summary` | `README.md` |
|
||||
|
||||
Each Markdown report has a matching JSON file beside it for CI, dashboards, and
|
||||
future inspector tooling. The JSON is the contract; the Markdown is the review
|
||||
surface. `reports/crabpot-dashboard-data.json` is the compact machine-readable
|
||||
dashboard card used to compare `crab-beta` and `crab-development` against
|
||||
`main`.
|
||||
surface.
|
||||
|
||||
Use the main compatibility report like this:
|
||||
|
||||
|
||||
@ -12,37 +12,9 @@
|
||||
{
|
||||
"id": "service-lifecycle-harness",
|
||||
"seam": "registerService",
|
||||
"reasonIncludes": "includeLifecycle=true",
|
||||
"reasonIncludes": "lifecycle",
|
||||
"decision": "allowed-blocked",
|
||||
"until": "service lifecycle harness lands"
|
||||
},
|
||||
{
|
||||
"id": "provider-capability-harness",
|
||||
"seam": "registerSpeechProvider",
|
||||
"reasonIncludes": "includeProviderCapabilities=true",
|
||||
"decision": "allowed-blocked",
|
||||
"until": "provider capability harness lands"
|
||||
},
|
||||
{
|
||||
"id": "live-network-tool-probes",
|
||||
"seam": "registerTool",
|
||||
"reasonIncludes": "live network access",
|
||||
"decision": "allowed-blocked",
|
||||
"until": "network-capability harness lands"
|
||||
},
|
||||
{
|
||||
"id": "generated-surface-hook-stubs",
|
||||
"seam": "*",
|
||||
"reasonIncludes": "captured hook has no callable handler",
|
||||
"decision": "allowed-blocked",
|
||||
"until": "generated surface runtime harness lands"
|
||||
},
|
||||
{
|
||||
"id": "generated-surface-registration-stubs",
|
||||
"seam": "*",
|
||||
"reasonIncludes": "captured registration has no supported callable probe",
|
||||
"decision": "allowed-blocked",
|
||||
"until": "generated surface runtime harness lands"
|
||||
}
|
||||
],
|
||||
"expectedWarnings": [
|
||||
@ -62,16 +34,6 @@
|
||||
},
|
||||
"fixtureSets": {
|
||||
"smoke": ["wecom", "llm-trace-phoenix", "codex-app-server", "opik-openclaw"],
|
||||
"openclaw-beta": [
|
||||
"brave-plugin",
|
||||
"codex",
|
||||
"diagnostics-prometheus",
|
||||
"google-meet",
|
||||
"diffs",
|
||||
"memory-lancedb",
|
||||
"openclaw-qqbot",
|
||||
"whatsapp"
|
||||
],
|
||||
"sdk-alias": ["codex-app-server"],
|
||||
"side-effect-review": ["hasdata", "llm-trace-phoenix", "web-search-plus"],
|
||||
"build": ["agentchat", "clawmetry", "opik-openclaw"]
|
||||
|
||||
@ -124,26 +124,6 @@
|
||||
},
|
||||
"why": "Opik trace exporter covering LLM spans, tool spans, subagent spans, stale trace cleanup, CLI setup, and persisted tool-result sanitization."
|
||||
},
|
||||
{
|
||||
"id": "openclaw-telemetry",
|
||||
"name": "OpenClaw Telemetry",
|
||||
"repo": "https://github.com/knostic/openclaw-telemetry.git",
|
||||
"path": "plugins/openclaw-telemetry",
|
||||
"priority": "high",
|
||||
"seams": ["diagnostics", "llm-observer", "tool-runtime", "message-lifecycle", "gateway-service"],
|
||||
"expect": {
|
||||
"hooks": [
|
||||
"before_tool_call",
|
||||
"after_tool_call",
|
||||
"message_received",
|
||||
"message_sent",
|
||||
"before_agent_start",
|
||||
"agent_end"
|
||||
],
|
||||
"registrations": ["registerService"]
|
||||
},
|
||||
"why": "Telemetry fixture covering high-volume lifecycle hooks, tool-call capture, message events, JSONL/syslog sinks, redaction, rate limiting, and integrity hash chains."
|
||||
},
|
||||
{
|
||||
"id": "lossless-claw",
|
||||
"name": "Lossless Claw (LCM)",
|
||||
@ -177,11 +157,12 @@
|
||||
"repo": "https://github.com/hyperspell/hyperspell-openclaw.git",
|
||||
"path": "plugins/hyperspell",
|
||||
"priority": "high",
|
||||
"seams": ["dynamic-tool", "external-memory", "cli"],
|
||||
"seams": ["memory-runtime", "prompt-mutation", "session-lifecycle", "file-watch", "cli"],
|
||||
"expect": {
|
||||
"registrations": ["registerCli", "registerCommand", "registerTool"]
|
||||
"hooks": ["before_agent_start", "after_compaction", "session_end", "agent_end", "file_changed"],
|
||||
"registrations": ["registerCli", "registerCommand", "registerService", "registerTool"]
|
||||
},
|
||||
"why": "Memory and context fixture covering CLI setup, command handlers, and tool-backed external memory search/write."
|
||||
"why": "Memory and context fixture covering legacy startup hooks, compaction/session hooks, file-change sync, CLI setup, command handlers, and tool-backed external memory search/write."
|
||||
},
|
||||
{
|
||||
"id": "honcho",
|
||||
@ -223,855 +204,6 @@
|
||||
},
|
||||
"why": "NPM-installed dynamic tool fixture for Composio/MCP integration, prompt context injection, CLI setup, external API auth, and large remote tool catalogs."
|
||||
},
|
||||
{
|
||||
"id": "kitchen-sink",
|
||||
"name": "OpenClaw Kitchen Sink",
|
||||
"repo": "https://github.com/openclaw/kitchen-sink.git",
|
||||
"path": "plugins/kitchen-sink",
|
||||
"priority": "high",
|
||||
"seams": [
|
||||
"plugin-api-surface",
|
||||
"hook",
|
||||
"registration-surface",
|
||||
"manifest-contracts",
|
||||
"provider-capability",
|
||||
"credential-free"
|
||||
],
|
||||
"expect": {
|
||||
"hooks": [
|
||||
"after_compaction",
|
||||
"after_tool_call",
|
||||
"agent_end",
|
||||
"before_agent_finalize",
|
||||
"before_agent_reply",
|
||||
"before_agent_start",
|
||||
"before_compaction",
|
||||
"before_dispatch",
|
||||
"before_install",
|
||||
"before_message_write",
|
||||
"before_model_resolve",
|
||||
"before_prompt_build",
|
||||
"before_reset",
|
||||
"before_tool_call",
|
||||
"gateway_start",
|
||||
"gateway_stop",
|
||||
"inbound_claim",
|
||||
"llm_input",
|
||||
"llm_output",
|
||||
"message_received",
|
||||
"message_sending",
|
||||
"message_sent",
|
||||
"model_call_ended",
|
||||
"model_call_started",
|
||||
"reply_dispatch",
|
||||
"session_end",
|
||||
"session_start",
|
||||
"subagent_delivery_target",
|
||||
"subagent_ended",
|
||||
"subagent_spawned",
|
||||
"subagent_spawning",
|
||||
"tool_result_persist"
|
||||
],
|
||||
"registrations": [
|
||||
"registerAgentHarness",
|
||||
"registerAgentToolResultMiddleware",
|
||||
"registerAutoEnableProbe",
|
||||
"registerChannel",
|
||||
"registerCli",
|
||||
"registerCliBackend",
|
||||
"registerCodexAppServerExtensionFactory",
|
||||
"registerCommand",
|
||||
"registerCompactionProvider",
|
||||
"registerConfigMigration",
|
||||
"registerContextEngine",
|
||||
"registerDetachedTaskRuntime",
|
||||
"registerGatewayDiscoveryService",
|
||||
"registerGatewayMethod",
|
||||
"registerHook",
|
||||
"registerHttpRoute",
|
||||
"registerImageGenerationProvider",
|
||||
"registerInteractiveHandler",
|
||||
"registerMediaUnderstandingProvider",
|
||||
"registerMemoryCapability",
|
||||
"registerMemoryCorpusSupplement",
|
||||
"registerMemoryEmbeddingProvider",
|
||||
"registerMemoryFlushPlan",
|
||||
"registerMemoryPromptSection",
|
||||
"registerMemoryPromptSupplement",
|
||||
"registerMemoryRuntime",
|
||||
"registerMigrationProvider",
|
||||
"registerMusicGenerationProvider",
|
||||
"registerNodeHostCommand",
|
||||
"registerProvider",
|
||||
"registerRealtimeTranscriptionProvider",
|
||||
"registerRealtimeVoiceProvider",
|
||||
"registerReload",
|
||||
"registerSecurityAuditCollector",
|
||||
"registerService",
|
||||
"registerSpeechProvider",
|
||||
"registerTextTransforms",
|
||||
"registerTool",
|
||||
"registerVideoGenerationProvider",
|
||||
"registerWebFetchProvider",
|
||||
"registerWebSearchProvider"
|
||||
],
|
||||
"manifestContracts": [
|
||||
"agentToolResultMiddleware",
|
||||
"documentExtractors",
|
||||
"embeddedExtensionFactories",
|
||||
"externalAuthProviders",
|
||||
"imageGenerationProviders",
|
||||
"mediaUnderstandingProviders",
|
||||
"memoryEmbeddingProviders",
|
||||
"migrationProviders",
|
||||
"musicGenerationProviders",
|
||||
"realtimeTranscriptionProviders",
|
||||
"realtimeVoiceProviders",
|
||||
"speechProviders",
|
||||
"tools",
|
||||
"videoGenerationProviders",
|
||||
"webContentExtractors",
|
||||
"webFetchProviders",
|
||||
"webSearchProviders"
|
||||
]
|
||||
},
|
||||
"why": "Credential-free generated fixture covering the public OpenClaw plugin API surface across hooks, registrars, provider capabilities, setup metadata, manifest contracts, and SDK import compatibility."
|
||||
},
|
||||
{
|
||||
"id": "bluebubbles",
|
||||
"name": "OpenClaw BlueBubbles channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/bluebubbles",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/bluebubbles",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/bluebubbles",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"account-auth",
|
||||
"media",
|
||||
"macos-bridge",
|
||||
"npm-artifact"
|
||||
],
|
||||
"why": "Official OpenClaw BlueBubbles channel package covering macOS/iMessage bridge assumptions, account auth, media-capable channel metadata, and npm artifact packaging from the monorepo.",
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "diagnostics-otel",
|
||||
"name": "OpenClaw diagnostics OpenTelemetry exporter",
|
||||
"package": {
|
||||
"name": "@openclaw/diagnostics-otel",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/diagnostics-otel",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/diagnostics-otel",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"diagnostics",
|
||||
"telemetry",
|
||||
"otel-export",
|
||||
"service",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerService"
|
||||
]
|
||||
},
|
||||
"why": "Official OpenClaw OpenTelemetry diagnostics package covering service registration, telemetry exporter setup, and npm package metadata mapped back to the monorepo source."
|
||||
},
|
||||
{
|
||||
"id": "discord",
|
||||
"name": "OpenClaw Discord channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/discord",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/discord",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/discord",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"subagent-routing",
|
||||
"message-policy",
|
||||
"account-auth",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"hooks": [
|
||||
"subagent_delivery_target",
|
||||
"subagent_ended",
|
||||
"subagent_spawning"
|
||||
],
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official OpenClaw Discord channel package covering subagent routing hooks, message policy, account auth, and npm artifact packaging from the monorepo."
|
||||
},
|
||||
{
|
||||
"id": "lobster",
|
||||
"name": "Lobster workflow tool plugin (typed pipelines + resumable approvals)",
|
||||
"package": {
|
||||
"name": "@openclaw/lobster",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/lobster",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/lobster",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"tool",
|
||||
"workflow",
|
||||
"approval",
|
||||
"async-job",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official Lobster workflow package covering typed pipeline tools, resumable approval semantics, manifest tool contracts, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "matrix",
|
||||
"name": "OpenClaw Matrix channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/matrix",
|
||||
"tag": "latest",
|
||||
"artifactSource": "source-pack"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/matrix",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/matrix",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"gateway-method",
|
||||
"subagent-routing",
|
||||
"cli"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official bundled OpenClaw Matrix channel package covering CLI setup, gateway methods, and subagent routing hooks; Crabpot source-packs it from the OpenClaw monorepo instead of requiring a separate npm dist-tag."
|
||||
},
|
||||
{
|
||||
"id": "msteams",
|
||||
"name": "OpenClaw Microsoft Teams channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/msteams",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/msteams",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/msteams",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"account-auth",
|
||||
"enterprise-chat",
|
||||
"message-policy",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official Microsoft Teams channel package covering enterprise chat auth, channel factory metadata, message policy, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "nextcloud-talk",
|
||||
"name": "OpenClaw Nextcloud Talk channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/nextcloud-talk",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/nextcloud-talk",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/nextcloud-talk",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"account-auth",
|
||||
"self-hosted-chat",
|
||||
"message-policy",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official Nextcloud Talk channel package covering self-hosted chat setup, account auth, channel factory metadata, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "nostr",
|
||||
"name": "OpenClaw Nostr channel plugin for NIP-04 encrypted DMs",
|
||||
"package": {
|
||||
"name": "@openclaw/nostr",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/nostr",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/nostr",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"encrypted-dm",
|
||||
"http-routes",
|
||||
"account-auth",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel",
|
||||
"registerHttpRoute"
|
||||
]
|
||||
},
|
||||
"why": "Official Nostr channel package covering encrypted DM channel behavior, HTTP route registration, account auth, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "voice-call",
|
||||
"name": "OpenClaw voice-call plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/voice-call",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/voice-call",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/voice-call",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"tool",
|
||||
"gateway-method",
|
||||
"service",
|
||||
"config-migration",
|
||||
"cli"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerCli",
|
||||
"registerGatewayMethod",
|
||||
"registerService",
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official voice-call package covering gateway methods, service lifecycle, tool registration, config migration, CLI setup, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "zalo",
|
||||
"name": "OpenClaw Zalo channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/zalo",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/zalo",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/zalo",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"account-auth",
|
||||
"media",
|
||||
"message-policy",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official Zalo channel package covering account auth, media-capable channel metadata, channel factory registration, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "zalouser",
|
||||
"name": "OpenClaw Zalo Personal Account plugin via native zca-js integration",
|
||||
"package": {
|
||||
"name": "@openclaw/zalouser",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/zalouser",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/zalouser",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"native-integration",
|
||||
"account-auth",
|
||||
"tool",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel",
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official Zalo personal account package covering native zca-js integration, channel factory registration, tool contracts, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "feishu",
|
||||
"name": "OpenClaw Feishu/Lark channel plugin (community maintained by @m1heng)",
|
||||
"package": {
|
||||
"name": "@openclaw/feishu",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/feishu",
|
||||
"ref": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
},
|
||||
"path": "plugins/feishu",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"subagent-routing",
|
||||
"tool",
|
||||
"account-auth",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel",
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official Feishu/Lark channel package covering subagent routing hooks, account auth, tool contracts, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "tlon",
|
||||
"name": "OpenClaw Tlon/Urbit channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/tlon",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/tlon",
|
||||
"ref": "35a57bc940833a6c1f594b2308e349e5ee0148db"
|
||||
},
|
||||
"path": "plugins/tlon",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"federated-network",
|
||||
"account-auth",
|
||||
"tool",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official Tlon/Urbit channel package covering federated-network account setup, channel factory registration, tool contracts, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "twitch",
|
||||
"name": "OpenClaw Twitch channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/twitch",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/twitch",
|
||||
"ref": "35a57bc940833a6c1f594b2308e349e5ee0148db"
|
||||
},
|
||||
"path": "plugins/twitch",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"streaming-chat",
|
||||
"account-auth",
|
||||
"message-policy",
|
||||
"npm-artifact"
|
||||
],
|
||||
"why": "Official Twitch channel package covering streaming-chat channel metadata, account auth, message policy, and npm artifact packaging.",
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "mattermost",
|
||||
"name": "OpenClaw Mattermost channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/mattermost",
|
||||
"tag": "latest",
|
||||
"artifactSource": "source-pack"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/mattermost",
|
||||
"ref": "35a57bc940833a6c1f594b2308e349e5ee0148db"
|
||||
},
|
||||
"path": "plugins/mattermost",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"http-routes",
|
||||
"self-hosted-chat",
|
||||
"account-auth"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official bundled Mattermost channel package covering self-hosted chat auth, HTTP route registration, and channel factory metadata; Crabpot source-packs it from the OpenClaw monorepo instead of requiring a separate npm dist-tag."
|
||||
},
|
||||
{
|
||||
"id": "synology-chat",
|
||||
"name": "Synology Chat channel plugin for OpenClaw",
|
||||
"package": {
|
||||
"name": "@openclaw/synology-chat",
|
||||
"tag": "latest"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/synology-chat",
|
||||
"ref": "b19a6ee62db342d400a233903adcaf17f67246c5"
|
||||
},
|
||||
"path": "plugins/synology-chat",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"self-hosted-chat",
|
||||
"account-auth",
|
||||
"message-policy",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerChannel"
|
||||
]
|
||||
},
|
||||
"why": "Official Synology Chat channel package covering self-hosted chat setup, channel factory registration, account auth, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "brave-plugin",
|
||||
"name": "OpenClaw Brave plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/brave-plugin",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/brave",
|
||||
"ref": "a22f06504376e7203a2bec8fde094b7cdcb06c02"
|
||||
},
|
||||
"path": "plugins/brave-plugin",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"provider-capability",
|
||||
"web-search-provider",
|
||||
"external-api",
|
||||
"env-auth",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"definePluginEntry",
|
||||
"registerWebSearchProvider"
|
||||
],
|
||||
"manifestContracts": [
|
||||
"webSearchProviders"
|
||||
]
|
||||
},
|
||||
"why": "Official Brave search package covering web search provider registration, external API/env auth metadata, manifest provider contracts, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "codex",
|
||||
"name": "OpenClaw Codex harness and model provider plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/codex",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/codex",
|
||||
"ref": "a22f06504376e7203a2bec8fde094b7cdcb06c02"
|
||||
},
|
||||
"path": "plugins/codex",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"agent-harness",
|
||||
"provider-capability",
|
||||
"media-understanding",
|
||||
"migration-provider",
|
||||
"channel-bridge"
|
||||
],
|
||||
"expect": {
|
||||
"hooks": [
|
||||
"inbound_claim"
|
||||
],
|
||||
"registrations": [
|
||||
"definePluginEntry",
|
||||
"registerAgentHarness",
|
||||
"registerCommand",
|
||||
"registerMediaUnderstandingProvider",
|
||||
"registerMigrationProvider",
|
||||
"registerProvider"
|
||||
],
|
||||
"manifestContracts": [
|
||||
"mediaUnderstandingProviders",
|
||||
"migrationProviders"
|
||||
]
|
||||
},
|
||||
"why": "Official Codex package covering agent harness registration, model provider wiring, media understanding, migrations, inbound claims, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "diagnostics-prometheus",
|
||||
"name": "OpenClaw diagnostics Prometheus exporter",
|
||||
"package": {
|
||||
"name": "@openclaw/diagnostics-prometheus",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/diagnostics-prometheus",
|
||||
"ref": "f4ef1bf04e9637958418428db0ff9e75e6698159"
|
||||
},
|
||||
"path": "plugins/diagnostics-prometheus",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"diagnostics",
|
||||
"telemetry",
|
||||
"prometheus-export",
|
||||
"http-routes",
|
||||
"service"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"definePluginEntry",
|
||||
"registerHttpRoute",
|
||||
"registerService"
|
||||
]
|
||||
},
|
||||
"why": "Official Prometheus diagnostics package covering service lifecycle, metrics HTTP routes, telemetry export, and monorepo-backed npm packaging."
|
||||
},
|
||||
{
|
||||
"id": "google-meet",
|
||||
"name": "OpenClaw Google Meet participant plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/google-meet",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/google-meet",
|
||||
"ref": "f4ef1bf04e9637958418428db0ff9e75e6698159"
|
||||
},
|
||||
"path": "plugins/google-meet",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"tool",
|
||||
"gateway-method",
|
||||
"node-host-command",
|
||||
"meeting",
|
||||
"cli"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"definePluginEntry",
|
||||
"registerCli",
|
||||
"registerGatewayMethod",
|
||||
"registerNodeHostCommand",
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official Google Meet package covering meeting tools, gateway methods, node host commands, CLI setup, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "diffs",
|
||||
"name": "OpenClaw diff viewer plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/diffs",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/diffs",
|
||||
"ref": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
},
|
||||
"path": "plugins/diffs",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"tool",
|
||||
"http-routes",
|
||||
"prompt-mutation",
|
||||
"diff-viewer",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"hooks": [
|
||||
"before_prompt_build"
|
||||
],
|
||||
"registrations": [
|
||||
"definePluginEntry",
|
||||
"registerHttpRoute",
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official diff viewer package covering prompt mutation, HTTP route UI surface, tool registration, manifest tool contracts, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "memory-lancedb",
|
||||
"name": "OpenClaw LanceDB-backed long-term memory plugin with auto-recall/capture",
|
||||
"package": {
|
||||
"name": "@openclaw/memory-lancedb",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/memory-lancedb",
|
||||
"ref": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
},
|
||||
"path": "plugins/memory-lancedb",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"memory-runtime",
|
||||
"prompt-mutation",
|
||||
"session-lifecycle",
|
||||
"vector-store",
|
||||
"cli"
|
||||
],
|
||||
"expect": {
|
||||
"hooks": [
|
||||
"agent_end",
|
||||
"before_prompt_build",
|
||||
"session_end"
|
||||
],
|
||||
"registrations": [
|
||||
"definePluginEntry",
|
||||
"registerCli",
|
||||
"registerService",
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official LanceDB memory package covering automatic recall/capture hooks, vector-store lifecycle, service/CLI setup, tool contracts, and npm artifact packaging."
|
||||
},
|
||||
{
|
||||
"id": "openclaw-qqbot",
|
||||
"name": "OpenClaw QQ Bot channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/qqbot",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/qqbot",
|
||||
"ref": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
},
|
||||
"path": "plugins/openclaw-qqbot",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"command",
|
||||
"tool",
|
||||
"media",
|
||||
"npm-artifact"
|
||||
],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerCommand",
|
||||
"registerTool"
|
||||
]
|
||||
},
|
||||
"why": "Official OpenClaw QQ Bot npm package covering command/tool registration, channel manifest metadata, media-capable messaging, and monorepo source mapping without replacing the external QQBot fixture."
|
||||
},
|
||||
{
|
||||
"id": "whatsapp",
|
||||
"name": "OpenClaw WhatsApp channel plugin",
|
||||
"package": {
|
||||
"name": "@openclaw/whatsapp",
|
||||
"tag": "beta"
|
||||
},
|
||||
"source": {
|
||||
"repo": "https://github.com/openclaw/openclaw.git",
|
||||
"path": "extensions/whatsapp",
|
||||
"ref": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
},
|
||||
"path": "plugins/whatsapp",
|
||||
"priority": "medium",
|
||||
"seams": [
|
||||
"channel",
|
||||
"account-auth",
|
||||
"media",
|
||||
"message-policy",
|
||||
"npm-artifact"
|
||||
],
|
||||
"why": "Official WhatsApp channel package covering account auth, media-capable channel metadata, message policy, and npm artifact packaging from the monorepo."
|
||||
},
|
||||
{
|
||||
"id": "nemoclaw",
|
||||
"name": "NemoClaw",
|
||||
"repo": "https://github.com/NVIDIA/NemoClaw.git",
|
||||
"path": "plugins/nemoclaw",
|
||||
"subdir": "nemoclaw",
|
||||
"priority": "high",
|
||||
"seams": [
|
||||
"provider-capability",
|
||||
"prompt-mutation",
|
||||
"security-audit",
|
||||
"process-spawn",
|
||||
"command",
|
||||
"config-schema"
|
||||
],
|
||||
"expect": {
|
||||
"hooks": ["before_agent_start", "before_tool_call"],
|
||||
"registrations": ["registerCommand", "registerProvider"]
|
||||
},
|
||||
"why": "NVIDIA OpenShell fixture covering sandbox-aware runtime context injection, managed inference provider registration, slash-command migration/status flows, OpenShell CLI probing, and secret-blocking tool-call policy."
|
||||
},
|
||||
{
|
||||
"id": "memory-tencentdb",
|
||||
"name": "TencentDB Agent Memory",
|
||||
@ -1100,18 +232,6 @@
|
||||
},
|
||||
"why": "DingTalk channel fixture from the latest npm-backed repo, covering enterprise IM auth, channel setup, media handling, and webhook-style message ingress."
|
||||
},
|
||||
{
|
||||
"id": "dingtalk-connector",
|
||||
"name": "DingTalk Connector",
|
||||
"repo": "https://github.com/DingTalk-Real-AI/dingtalk-openclaw-connector.git",
|
||||
"path": "plugins/dingtalk-connector",
|
||||
"priority": "high",
|
||||
"seams": ["channel", "streaming", "account-auth", "interactive-card", "gateway-method"],
|
||||
"expect": {
|
||||
"registrations": ["registerChannel", "registerGatewayMethod"]
|
||||
},
|
||||
"why": "Official DingTalk connector fixture covering Stream-mode channel ingress, AI Card replies, multi-account access policy, gateway RPC methods, and packaged channel skills."
|
||||
},
|
||||
{
|
||||
"id": "mocrane-wecom",
|
||||
"name": "Mocrane WeCom",
|
||||
@ -1136,7 +256,7 @@
|
||||
"priority": "high",
|
||||
"seams": ["channel", "media", "command", "account-auth", "sdk-compat"],
|
||||
"expect": {
|
||||
"registrations": ["createChatChannelPlugin", "registerTool", "registerCommand"]
|
||||
"registrations": ["registerChannel", "registerTool", "registerCommand"]
|
||||
},
|
||||
"why": "NPM-pinned Yuanbao channel fixture covering bot auth, media messaging, built-in commands, command queue state compatibility, and root SDK imports."
|
||||
},
|
||||
@ -1149,11 +269,11 @@
|
||||
},
|
||||
"path": "plugins/openclaw-weixin",
|
||||
"priority": "high",
|
||||
"seams": ["channel", "media", "account-auth", "pairing", "sdk-subpaths", "catalog-discovery"],
|
||||
"seams": ["channel", "media", "account-auth", "pairing", "sdk-subpaths"],
|
||||
"expect": {
|
||||
"registrations": ["registerChannel"]
|
||||
},
|
||||
"why": "NPM-pinned Weixin channel fixture covering scan-login pairing, account isolation, media upload/download, narrow SDK subpath usage, and npm-installed channel catalog discovery."
|
||||
"why": "NPM-pinned Weixin channel fixture covering scan-login pairing, account isolation, media upload/download, and narrow SDK subpath usage."
|
||||
},
|
||||
{
|
||||
"id": "lightclawbot",
|
||||
@ -1170,49 +290,6 @@
|
||||
},
|
||||
"why": "NPM-pinned channel fixture covering cron/proactive messaging metadata, file upload tooling, bundled Socket.IO dependencies, and built JavaScript-only plugin packages."
|
||||
},
|
||||
{
|
||||
"id": "telnyx-sms",
|
||||
"name": "Telnyx SMS",
|
||||
"repo": "https://github.com/team-telnyx/telnyx-openclaw-sms-channel.git",
|
||||
"path": "plugins/telnyx-sms",
|
||||
"priority": "medium",
|
||||
"seams": ["channel", "media", "account-auth", "http-routes", "cli"],
|
||||
"expect": {
|
||||
"registrations": ["defineChannelPluginEntry", "registerCli", "registerHttpRoute"]
|
||||
},
|
||||
"why": "Telnyx-owned SMS/MMS channel fixture covering channel setup entries, multi-account phone-number auth, inbound webhook verification, HTTP route registration, MMS handling, and auto-exposure flows."
|
||||
},
|
||||
{
|
||||
"id": "clawrouter",
|
||||
"name": "ClawRouter",
|
||||
"repo": "https://github.com/BlockRunAI/ClawRouter.git",
|
||||
"path": "plugins/clawrouter",
|
||||
"priority": "medium",
|
||||
"seams": ["provider-capability", "gateway-service", "process-spawn", "command", "dynamic-tool"],
|
||||
"expect": {
|
||||
"registrations": [
|
||||
"registerProvider",
|
||||
"registerImageGenerationProvider",
|
||||
"registerMusicGenerationProvider",
|
||||
"registerVideoGenerationProvider",
|
||||
"registerWebSearchProvider",
|
||||
"registerTool",
|
||||
"registerCommand",
|
||||
"registerService"
|
||||
]
|
||||
},
|
||||
"execution": {
|
||||
"blockedFailures": [
|
||||
{
|
||||
"id": "clawrouter-live-network-tools",
|
||||
"seam": "registerTool",
|
||||
"errorIncludes": "fetch failed",
|
||||
"reason": "captured tool requires live network access"
|
||||
}
|
||||
]
|
||||
},
|
||||
"why": "Model-router fixture covering provider registration, generation/search provider capabilities, proxy sidecar lifecycle, x402 wallet/auth setup, command registration, partner tool surfacing, and config mutation edge cases."
|
||||
},
|
||||
{
|
||||
"id": "memu-engine",
|
||||
"name": "MemU Engine",
|
||||
|
||||
@ -34,18 +34,7 @@
|
||||
"properties": {
|
||||
"name": { "type": "string", "minLength": 1 },
|
||||
"version": { "type": "string", "minLength": 1 },
|
||||
"tag": { "type": "string", "minLength": 1 },
|
||||
"artifactSource": { "enum": ["npm", "source-pack"] }
|
||||
}
|
||||
},
|
||||
"source": {
|
||||
"type": "object",
|
||||
"required": ["repo", "path", "ref"],
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"repo": { "type": "string", "pattern": "^https://github.com/.+\\.git$" },
|
||||
"path": { "type": "string", "pattern": "^[^/].*" },
|
||||
"ref": { "type": "string", "minLength": 1 }
|
||||
"tag": { "type": "string", "minLength": 1 }
|
||||
}
|
||||
},
|
||||
"path": { "type": "string", "pattern": "^plugins/[a-z0-9][a-z0-9-]*$" },
|
||||
|
||||
@ -93,17 +93,13 @@ npm run plugin-inspector:smoke
|
||||
```
|
||||
|
||||
The smoke writes ignored artifacts under `.crabpot/plugin-inspector-smoke/`.
|
||||
By default the smoke runs the published `@openclaw/plugin-inspector@0.1.3`
|
||||
package through `npm exec`. For local plugin-inspector development, set
|
||||
`CRABPOT_PLUGIN_INSPECTOR_CLI=source` to run the sibling or pinned source
|
||||
checkout instead. Set `CRABPOT_PLUGIN_INSPECTOR_BIN=/path/to/plugin-inspector`
|
||||
to test an arbitrary CLI binary.
|
||||
For local development it uses a sibling `../plugin-inspector` checkout when one
|
||||
exists. In CI or standalone checkouts it falls back to the pinned GitHub package
|
||||
source checkout. This intentionally avoids npm publishing until the package
|
||||
boundary is reviewed.
|
||||
|
||||
Current migration state: `scripts/inspect-fixtures.mjs` delegates static source,
|
||||
manifest, and package inspection to `plugin-inspector` while preserving
|
||||
crabpot's existing command output and exported helper names. Crabpot keeps its
|
||||
orchestration, report paths, fixture policy, and opt-in execution guards; the
|
||||
reusable compatibility logic now lives in the published inspector package.
|
||||
Migration path: replace the local static scanner with the packaged inspector
|
||||
while keeping `crabpot.config.json` as the fixture manifest.
|
||||
|
||||
## Compatibility issue workflow
|
||||
|
||||
|
||||
@ -119,11 +119,6 @@ npm run profile -- --check
|
||||
node scripts/check-contract-coverage.mjs --openclaw ../openclaw
|
||||
```
|
||||
|
||||
`npm run plugin-inspector:smoke` uses the published
|
||||
`@openclaw/plugin-inspector@0.1.3` package by default. Use
|
||||
`CRABPOT_PLUGIN_INSPECTOR_CLI=source npm run plugin-inspector:smoke` only when
|
||||
validating local inspector source changes.
|
||||
|
||||
Issue severity means:
|
||||
|
||||
- `P0`: current hard breakage.
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "crabpot",
|
||||
"version": "0.1.4",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"description": "Compatibility testbed for OpenClaw community plugins and plugin seams.",
|
||||
"type": "module",
|
||||
@ -8,9 +8,7 @@
|
||||
"node": ">=22"
|
||||
},
|
||||
"scripts": {
|
||||
"check": "node scripts/run-static-suite.mjs --policy dashboard",
|
||||
"check:contracts": "node scripts/check-openclaw-plugin-contracts.mjs",
|
||||
"check:release": "node scripts/run-static-suite.mjs --policy release",
|
||||
"check": "node scripts/sync-fixtures.mjs --materialize && npm test && node scripts/sync-fixtures.mjs --check && node scripts/run-contract-smoke.mjs && node scripts/inspect-fixtures.mjs --check && node scripts/generate-report.mjs --check && node scripts/capture-contracts.mjs --check && node scripts/synthetic-probes.mjs --check && node scripts/cold-import-readiness.mjs --check && node scripts/workspace-plan.mjs --check && node scripts/platform-probes.mjs --check && node scripts/import-loop-profile.mjs --check && node scripts/profile-contract-runtime.mjs --check && node scripts/check-contract-coverage.mjs",
|
||||
"ci:policy": "node scripts/check-ci-policy.mjs",
|
||||
"ci:summary": "node scripts/write-ci-summary.mjs",
|
||||
"contract:capture": "node scripts/capture-contracts.mjs",
|
||||
@ -25,12 +23,9 @@
|
||||
"fixtures:inspect": "node scripts/inspect-fixtures.mjs",
|
||||
"fixtures:sync": "node scripts/sync-fixtures.mjs --materialize",
|
||||
"import:profile": "node scripts/import-loop-profile.mjs",
|
||||
"import:profile:openclaw": "node scripts/import-loop-profile.mjs --openclaw ../openclaw",
|
||||
"plugin-inspector:smoke": "node scripts/run-plugin-inspector-smoke.mjs --check",
|
||||
"profile": "node scripts/profile-contract-runtime.mjs",
|
||||
"profile:compare": "node scripts/compare-runtime-profile.mjs",
|
||||
"track:metadata": "node scripts/update-track-metadata.mjs",
|
||||
"track:metadata:check": "node scripts/update-track-metadata.mjs --check",
|
||||
"platform:probes": "node scripts/platform-probes.mjs",
|
||||
"readme:summary": "node scripts/update-readme-summary.mjs",
|
||||
"ref:diff": "node scripts/compare-openclaw-refs.mjs",
|
||||
|
||||
@ -4,9 +4,7 @@ Crabpot keeps external plugins under `plugins/`. Most fixtures are git
|
||||
submodules. Npm-only fixtures use committed `plugins/<id>/package.json` shim
|
||||
packages with one exact dependency pin; `node scripts/sync-fixtures.mjs --materialize`
|
||||
unpacks the package payload into ignored `plugins/<id>/.crabpot-package/`
|
||||
directories for static inspection. OpenClaw monorepo npm fixtures also declare
|
||||
`source.repo`, `source.path`, and `source.ref` so report evidence links point at
|
||||
the owning `openclaw/openclaw` source tree. The parent repo owns only pins, fixture
|
||||
directories for static inspection. The parent repo owns only pins, fixture
|
||||
metadata, generated reports, and tests. Plugin source stays upstream-owned.
|
||||
|
||||
Dependabot watches `.gitmodules` with the `gitsubmodule` ecosystem and the npm
|
||||
@ -34,8 +32,6 @@ directory: "/plugins/<id>"
|
||||
- Npm fixtures use `crabpot.config.json` for package identity and
|
||||
`plugins/<id>/package.json` for the exact dependency pin; materialization
|
||||
unpacks the package into ignored `plugins/<id>/.crabpot-package/`.
|
||||
- Monorepo npm fixtures add `source.repo`, `source.path`, and `source.ref`;
|
||||
generated report links map packed payload paths back to the owning source path.
|
||||
- `scripts/inspect-fixtures.mjs` reads source statically and checks expected
|
||||
hooks, registrations, manifests, packages, and SDK imports.
|
||||
- `scripts/generate-report.mjs` compares observed plugin seams with the target
|
||||
@ -56,47 +52,17 @@ directory: "/plugins/<id>"
|
||||
| `mcp-adapter` | `plugins/mcp-adapter` | git | high | dynamic tool, MCP transport, schema passthrough | Dynamic tool discovery from MCP servers with stdio/http transports and schema passthrough. |
|
||||
| `llm-trace-phoenix` | `plugins/llm-trace-phoenix` | git | high | LLM observer, telemetry | Small sharp fixture for `llm_input`/`llm_output` access and raw prompt/output privacy boundaries. |
|
||||
| `opik-openclaw` | `plugins/opik-openclaw` | git | high | LLM observer, tools, subagents | Trace exporter covering LLM spans, tool spans, subagent spans, cleanup, CLI setup, and persisted tool-result sanitization. |
|
||||
| `openclaw-telemetry` | `plugins/openclaw-telemetry` | git | high | diagnostics, lifecycle hooks, telemetry | Telemetry fixture covering lifecycle hooks, tool-call capture, message events, JSONL/syslog sinks, redaction, rate limiting, and integrity hashes. |
|
||||
| `lossless-claw` | `plugins/lossless-claw` | git | high | context engine, prompt mutation, lifecycle | Lossless context-management fixture covering context engine registration, DAG compaction tools, prompt assembly hooks, session cleanup, and gateway lifecycle. |
|
||||
| `connectclaw` | `plugins/connectclaw` | git | high | dynamic tool, gateway service, Hono relay | Contacts/messaging plugin with dynamic tool factories, commands, polling service wakeups, and a Hono relay package. |
|
||||
| `hyperspell` | `plugins/hyperspell` | git | high | memory runtime, prompt mutation, file watch | Memory/context fixture covering startup, compaction/session hooks, file-change sync, CLI, commands, and memory tools. |
|
||||
| `honcho` | `plugins/honcho` | git | high | memory runtime, gateway lifecycle, subagents | Memory-runtime fixture covering plugin-entry aliases, memory runtime/prompt sections, gateway lifecycle, subagent capture, and external memory tools. |
|
||||
| `composio` | `plugins/composio` | git | high | dynamic tool, MCP, external API | NPM-installed dynamic tool fixture for Composio/MCP, prompt context injection, CLI setup, external API auth, and remote tool catalogs. |
|
||||
| `kitchen-sink` | `plugins/kitchen-sink` | git | high | plugin API surface, hooks, manifest contracts | Credential-free generated fixture covering hooks, registrars, provider capabilities, setup metadata, manifest contracts, and SDK import compatibility. |
|
||||
| `bluebubbles` | `plugins/bluebubbles` | npm + source | medium | channel, account auth, media | Official OpenClaw BlueBubbles channel package covering macOS/iMessage bridge assumptions, account auth, media-capable channel metadata, and npm artifact packaging from the monorepo. |
|
||||
| `diagnostics-otel` | `plugins/diagnostics-otel` | npm + source | medium | diagnostics, telemetry, otel export | Official OpenClaw OpenTelemetry diagnostics package covering service registration, telemetry exporter setup, and npm package metadata mapped back to the monorepo source. |
|
||||
| `discord` | `plugins/discord` | npm + source | medium | channel, subagent routing, message policy | Official OpenClaw Discord channel package covering subagent routing hooks, message policy, account auth, and npm artifact packaging from the monorepo. |
|
||||
| `lobster` | `plugins/lobster` | npm + source | medium | tool, workflow, approval | Official Lobster workflow package covering typed pipeline tools, resumable approval semantics, manifest tool contracts, and npm artifact packaging. |
|
||||
| `matrix` | `plugins/matrix` | npm + source | medium | channel, gateway method, subagent routing | Official OpenClaw Matrix channel package covering CLI setup, gateway methods, subagent routing hooks, and monorepo-backed npm packaging. |
|
||||
| `msteams` | `plugins/msteams` | npm + source | medium | channel, account auth, enterprise chat | Official Microsoft Teams channel package covering enterprise chat auth, channel factory metadata, message policy, and npm artifact packaging. |
|
||||
| `nextcloud-talk` | `plugins/nextcloud-talk` | npm + source | medium | channel, account auth, self hosted chat | Official Nextcloud Talk channel package covering self-hosted chat setup, account auth, channel factory metadata, and npm artifact packaging. |
|
||||
| `nostr` | `plugins/nostr` | npm + source | medium | channel, encrypted dm, http routes | Official Nostr channel package covering encrypted DM channel behavior, HTTP route registration, account auth, and npm artifact packaging. |
|
||||
| `voice-call` | `plugins/voice-call` | npm + source | medium | tool, gateway method, service | Official voice-call package covering gateway methods, service lifecycle, tool registration, config migration, CLI setup, and npm artifact packaging. |
|
||||
| `zalo` | `plugins/zalo` | npm + source | medium | channel, account auth, media | Official Zalo channel package covering account auth, media-capable channel metadata, channel factory registration, and npm artifact packaging. |
|
||||
| `zalouser` | `plugins/zalouser` | npm + source | medium | channel, native integration, account auth | Official Zalo personal account package covering native zca-js integration, channel factory registration, tool contracts, and npm artifact packaging. |
|
||||
| `feishu` | `plugins/feishu` | npm + source | medium | channel, subagent routing, tool | Official Feishu/Lark channel package covering subagent routing hooks, account auth, tool contracts, and npm artifact packaging. |
|
||||
| `tlon` | `plugins/tlon` | npm + source | medium | channel, federated network, account auth | Official Tlon/Urbit channel package covering federated-network account setup, channel factory registration, tool contracts, and npm artifact packaging. |
|
||||
| `twitch` | `plugins/twitch` | npm + source | medium | channel, streaming chat, account auth | Official Twitch channel package covering streaming-chat channel metadata, account auth, message policy, and npm artifact packaging. |
|
||||
| `mattermost` | `plugins/mattermost` | npm + source | medium | channel, http routes, self hosted chat | Official Mattermost channel package covering self-hosted chat auth, HTTP route registration, channel factory metadata, and npm artifact packaging. |
|
||||
| `synology-chat` | `plugins/synology-chat` | npm + source | medium | channel, self hosted chat, account auth | Official Synology Chat channel package covering self-hosted chat setup, channel factory registration, account auth, and npm artifact packaging. |
|
||||
| `brave-plugin` | `plugins/brave-plugin` | npm + source | medium | provider capability, web search provider, external api | Official Brave search package covering web search provider registration, external API/env auth metadata, manifest provider contracts, and npm artifact packaging. |
|
||||
| `codex` | `plugins/codex` | npm + source | medium | agent harness, provider capability, media understanding | Official Codex package covering agent harness registration, model provider wiring, media understanding, migrations, inbound claims, and npm artifact packaging. |
|
||||
| `diagnostics-prometheus` | `plugins/diagnostics-prometheus` | npm + source | medium | diagnostics, telemetry, prometheus export | Official Prometheus diagnostics package covering service lifecycle, metrics HTTP routes, telemetry export, and monorepo-backed npm packaging. |
|
||||
| `google-meet` | `plugins/google-meet` | npm + source | medium | tool, gateway method, node host command | Official Google Meet package covering meeting tools, gateway methods, node host commands, CLI setup, and npm artifact packaging. |
|
||||
| `diffs` | `plugins/diffs` | npm + source | medium | tool, http routes, prompt mutation | Official diff viewer package covering prompt mutation, HTTP route UI surface, tool registration, manifest tool contracts, and npm artifact packaging. |
|
||||
| `memory-lancedb` | `plugins/memory-lancedb` | npm + source | medium | memory runtime, prompt mutation, session lifecycle | Official LanceDB memory package covering automatic recall/capture hooks, vector-store lifecycle, service/CLI setup, tool contracts, and npm artifact packaging. |
|
||||
| `openclaw-qqbot` | `plugins/openclaw-qqbot` | npm + source | medium | channel, command, tool | Official OpenClaw QQ Bot npm package covering command/tool registration, channel manifest metadata, media-capable messaging, and monorepo source mapping without replacing the external QQBot fixture. |
|
||||
| `whatsapp` | `plugins/whatsapp` | npm + source | medium | channel, account auth, media | Official WhatsApp channel package covering account auth, media-capable channel metadata, message policy, and npm artifact packaging from the monorepo. |
|
||||
| `nemoclaw` | `plugins/nemoclaw` | git | high | provider capability, runtime context, security policy | NVIDIA OpenShell fixture covering sandbox-aware runtime context injection, managed inference provider registration, slash-command migration/status flows, OpenShell CLI probing, and secret-blocking tool-call policy. |
|
||||
| `memory-tencentdb` | `plugins/memory-tencentdb` | npm | high | memory runtime, vector store, lifecycle | TencentDB memory fixture covering recall/capture hooks, SQLite/TCVDB storage, cleanup lifecycle, and seed/export CLI commands. |
|
||||
| `ddingtalk` | `plugins/ddingtalk` | git | high | channel, media, webhook | DingTalk channel fixture covering enterprise IM auth, channel setup, media handling, and webhook-style ingress. |
|
||||
| `dingtalk-connector` | `plugins/dingtalk-connector` | git | high | channel, streaming, gateway methods | Official DingTalk connector fixture covering Stream-mode ingress, AI Card replies, multi-account access policy, gateway RPC methods, and packaged channel skills. |
|
||||
| `mocrane-wecom` | `plugins/mocrane-wecom` | git | high | channel, MCP, SDK compat | Latest @mocrane/wecom-backed fixture covering WeCom routing, MCP tooling, skill bundles, HTTP routes, and SDK shims. |
|
||||
| `yuanbao` | `plugins/yuanbao` | npm | high | channel, command, SDK compat | Yuanbao bot fixture covering auth, media, tools, command queue compatibility, and root SDK imports. |
|
||||
| `openclaw-weixin` | `plugins/openclaw-weixin` | npm | high | channel, pairing, SDK subpaths, catalog discovery | Weixin channel fixture covering scan-login pairing, account isolation, media, narrow SDK subpath usage, and npm-installed channel catalog discovery. |
|
||||
| `openclaw-weixin` | `plugins/openclaw-weixin` | npm | high | channel, pairing, SDK subpaths | Weixin channel fixture covering scan-login pairing, account isolation, media, and narrow SDK subpath usage. |
|
||||
| `lightclawbot` | `plugins/lightclawbot` | npm | medium | channel, cron, bundled deps | Channel fixture covering cron/proactive messaging metadata, upload tooling, bundled Socket.IO dependencies, and JS-only packages. |
|
||||
| `telnyx-sms` | `plugins/telnyx-sms` | git | medium | channel, HTTP routes, media | Telnyx-owned SMS/MMS channel fixture covering channel setup, multi-account auth, webhook verification, route registration, and auto-exposure flows. |
|
||||
| `clawrouter` | `plugins/clawrouter` | git | medium | provider capability, proxy, commands | Model-router fixture covering provider registration, generation/search capabilities, sidecar lifecycle, x402 wallet setup, commands, and partner tools. |
|
||||
| `memu-engine` | `plugins/memu-engine` | git | medium | memory runtime, Python sidecar | Memory tool fixture with a Python sidecar, session ingestion, filesystem storage migration, and local memory data layout assumptions. |
|
||||
| `secureclaw` | `plugins/secureclaw` | git | medium | security audit, config hardening, gateway lifecycle | Security fixture covering gateway-start scanning, config/credential hardening, filesystem audit behavior, and CLI remediation/reporting. |
|
||||
| `memos-cloud` | `plugins/memos-cloud` | git | medium | memory runtime, legacy hooks, external API | Cloud memory fixture covering legacy `registerHook`, startup/session-end hooks, config UI, env/config precedence, and MemOS API calls. |
|
||||
@ -132,7 +98,6 @@ directory: "/plugins/<id>"
|
||||
6. Add a fixture entry to `crabpot.config.json` with:
|
||||
- `id`, `name`, `path`, and optional `subdir`
|
||||
- exactly one of `repo` or `package: { name, tag }`
|
||||
- optional `source: { repo, path, ref }` for npm packages published from a monorepo
|
||||
- `priority`
|
||||
- seam labels
|
||||
- expected hooks, registrations, or manifest contracts
|
||||
|
||||
33
plugins/bluebubbles/package-lock.json
generated
33
plugins/bluebubbles/package-lock.json
generated
@ -1,33 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-bluebubbles",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-bluebubbles",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/bluebubbles": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/bluebubbles": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/bluebubbles/-/bluebubbles-2026.3.13.tgz",
|
||||
"integrity": "sha512-yfLftVZDZFMjJJGbg1SObi4G81lEHXnlNXnT4Ezx0y0UDw3y11NYj21qNMaz+K1DUYNBQomFVLS6NZ6c74RF7g==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-bluebubbles",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw BlueBubbles channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/bluebubbles": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "bluebubbles",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/bluebubbles",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/bluebubbles",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
20
plugins/brave-plugin/package-lock.json
generated
20
plugins/brave-plugin/package-lock.json
generated
@ -1,20 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-brave-plugin",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-brave-plugin",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/brave-plugin": "2026.5.1-beta.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/brave-plugin": {
|
||||
"version": "2026.5.1-beta.1",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/brave-plugin/-/brave-plugin-2026.5.1-beta.1.tgz",
|
||||
"integrity": "sha512-lPHMp61vX7+q5k6E+qhzJJaUXh+ZtzP4ummCj7t0lR+x7cRqohezSZxTJLM2GlC3UNsnLSxjf30HpvduloOAhA=="
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-brave-plugin",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Brave plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/brave-plugin": "2026.5.1-beta.1"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "brave-plugin",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/brave-plugin",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/brave",
|
||||
"sourceRef": "a22f06504376e7203a2bec8fde094b7cdcb06c02"
|
||||
}
|
||||
}
|
||||
@ -1 +1 @@
|
||||
Subproject commit 7b03924c02a50ddb096407e823e48a6d369247a7
|
||||
Subproject commit b329bb3ed18b651d369bf35321ec58bd47dc33b4
|
||||
@ -1 +0,0 @@
|
||||
Subproject commit bb72bddae4da7fd285e4804a5716f2a226a6f103
|
||||
3720
plugins/codex/package-lock.json
generated
3720
plugins/codex/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-codex",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Codex harness and model provider plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/codex": "2026.5.1-beta.1"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "codex",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/codex",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/codex",
|
||||
"sourceRef": "a22f06504376e7203a2bec8fde094b7cdcb06c02"
|
||||
}
|
||||
}
|
||||
@ -1 +1 @@
|
||||
Subproject commit 7a4e2646e914de075435b3837123cc03c3edae36
|
||||
Subproject commit 6cd516650168890e9b850064afaaa5fe24df5950
|
||||
1464
plugins/diagnostics-otel/package-lock.json
generated
1464
plugins/diagnostics-otel/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-diagnostics-otel",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw diagnostics OpenTelemetry exporter.",
|
||||
"dependencies": {
|
||||
"@openclaw/diagnostics-otel": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "diagnostics-otel",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/diagnostics-otel",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/diagnostics-otel",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
20
plugins/diagnostics-prometheus/package-lock.json
generated
20
plugins/diagnostics-prometheus/package-lock.json
generated
@ -1,20 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-diagnostics-prometheus",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-diagnostics-prometheus",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/diagnostics-prometheus": "2026.5.1-beta.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/diagnostics-prometheus": {
|
||||
"version": "2026.5.1-beta.2",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/diagnostics-prometheus/-/diagnostics-prometheus-2026.5.1-beta.2.tgz",
|
||||
"integrity": "sha512-R0iQAXYT3OFNBDqUxOFnH3TUHVWBvSJqbMC3rZvjdfBJP5q1dEYsoogOJF7wwzACARRaZP3GvOZ9RTwdgqmmdw=="
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-diagnostics-prometheus",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw diagnostics Prometheus exporter.",
|
||||
"dependencies": {
|
||||
"@openclaw/diagnostics-prometheus": "2026.5.1-beta.2"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "diagnostics-prometheus",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/diagnostics-prometheus",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/diagnostics-prometheus",
|
||||
"sourceRef": "f4ef1bf04e9637958418428db0ff9e75e6698159"
|
||||
}
|
||||
}
|
||||
657
plugins/diffs/package-lock.json
generated
657
plugins/diffs/package-lock.json
generated
@ -1,657 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-diffs",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-diffs",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/diffs": "2026.5.1-beta.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/diffs": {
|
||||
"version": "2026.5.1-beta.1",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/diffs/-/diffs-2026.5.1-beta.1.tgz",
|
||||
"integrity": "sha512-OSb+QCBJ+vUY/GGjRsiB+UiTi58m02nR/dVdOjlrLKCQkh7Q5rewDzCgACtwMW9gqjvh4TMZH2xRQccwM9FhDw==",
|
||||
"dependencies": {
|
||||
"@pierre/diffs": "1.1.20",
|
||||
"@pierre/theme": "0.0.29",
|
||||
"playwright-core": "1.59.1",
|
||||
"typebox": "1.1.37"
|
||||
}
|
||||
},
|
||||
"node_modules/@pierre/diffs": {
|
||||
"version": "1.1.20",
|
||||
"resolved": "https://registry.npmjs.org/@pierre/diffs/-/diffs-1.1.20.tgz",
|
||||
"integrity": "sha512-lLi+3sLCm3QDd5/aLO9pw+WbF6UzhrkWm2oTZ5WZJTGemOyUNRJ4DDhcEKmVusu4C4bXx9Nssh6fF+wQcapb5w==",
|
||||
"license": "apache-2.0",
|
||||
"dependencies": {
|
||||
"@pierre/theme": "0.0.28",
|
||||
"@shikijs/transformers": "^3.0.0",
|
||||
"diff": "8.0.3",
|
||||
"hast-util-to-html": "9.0.5",
|
||||
"lru_map": "0.4.1",
|
||||
"shiki": "^3.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"react": "^18.3.1 || ^19.0.0",
|
||||
"react-dom": "^18.3.1 || ^19.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@pierre/diffs/node_modules/@pierre/theme": {
|
||||
"version": "0.0.28",
|
||||
"resolved": "https://registry.npmjs.org/@pierre/theme/-/theme-0.0.28.tgz",
|
||||
"integrity": "sha512-1j/H/fECBuc9dEvntdWI+l435HZapw+RCJTlqCA6BboQ5TjlnE005j/ROWutXIs8aq5OAc82JI2Kwk4A1WWBgw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"vscode": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@pierre/theme": {
|
||||
"version": "0.0.29",
|
||||
"resolved": "https://registry.npmjs.org/@pierre/theme/-/theme-0.0.29.tgz",
|
||||
"integrity": "sha512-ZXce2GikoXHNThHdkaxA2X4ISnzSTL/LmKDYaTwqP1bQqENs+l7B+PheF9RsUWgx4GbphW5GU1i1vO4ttAzCUA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"vscode": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/core": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.23.0.tgz",
|
||||
"integrity": "sha512-NSWQz0riNb67xthdm5br6lAkvpDJRTgB36fxlo37ZzM2yq0PQFFzbd8psqC2XMPgCzo1fW6cVi18+ArJ44wqgA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/types": "3.23.0",
|
||||
"@shikijs/vscode-textmate": "^10.0.2",
|
||||
"@types/hast": "^3.0.4",
|
||||
"hast-util-to-html": "^9.0.5"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/engine-javascript": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.23.0.tgz",
|
||||
"integrity": "sha512-aHt9eiGFobmWR5uqJUViySI1bHMqrAgamWE1TYSUoftkAeCCAiGawPMwM+VCadylQtF4V3VNOZ5LmfItH5f3yA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/types": "3.23.0",
|
||||
"@shikijs/vscode-textmate": "^10.0.2",
|
||||
"oniguruma-to-es": "^4.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/engine-oniguruma": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.23.0.tgz",
|
||||
"integrity": "sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/types": "3.23.0",
|
||||
"@shikijs/vscode-textmate": "^10.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/langs": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.23.0.tgz",
|
||||
"integrity": "sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/types": "3.23.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/themes": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.23.0.tgz",
|
||||
"integrity": "sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/types": "3.23.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/transformers": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.23.0.tgz",
|
||||
"integrity": "sha512-F9msZVxdF+krQNSdQ4V+Ja5QemeAoTQ2jxt7nJCwhDsdF1JWS3KxIQXA3lQbyKwS3J61oHRUSv4jYWv3CkaKTQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/core": "3.23.0",
|
||||
"@shikijs/types": "3.23.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/types": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.23.0.tgz",
|
||||
"integrity": "sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/vscode-textmate": "^10.0.2",
|
||||
"@types/hast": "^3.0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@shikijs/vscode-textmate": {
|
||||
"version": "10.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz",
|
||||
"integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@types/hast": {
|
||||
"version": "3.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz",
|
||||
"integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/mdast": {
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz",
|
||||
"integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/unist": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz",
|
||||
"integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@ungap/structured-clone": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz",
|
||||
"integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/ccount": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz",
|
||||
"integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/character-entities-html4": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz",
|
||||
"integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/character-entities-legacy": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz",
|
||||
"integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/comma-separated-tokens": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz",
|
||||
"integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/dequal": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
|
||||
"integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/devlop": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz",
|
||||
"integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"dequal": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/diff": {
|
||||
"version": "8.0.3",
|
||||
"resolved": "https://registry.npmjs.org/diff/-/diff-8.0.3.tgz",
|
||||
"integrity": "sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==",
|
||||
"license": "BSD-3-Clause",
|
||||
"engines": {
|
||||
"node": ">=0.3.1"
|
||||
}
|
||||
},
|
||||
"node_modules/hast-util-to-html": {
|
||||
"version": "9.0.5",
|
||||
"resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz",
|
||||
"integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/hast": "^3.0.0",
|
||||
"@types/unist": "^3.0.0",
|
||||
"ccount": "^2.0.0",
|
||||
"comma-separated-tokens": "^2.0.0",
|
||||
"hast-util-whitespace": "^3.0.0",
|
||||
"html-void-elements": "^3.0.0",
|
||||
"mdast-util-to-hast": "^13.0.0",
|
||||
"property-information": "^7.0.0",
|
||||
"space-separated-tokens": "^2.0.0",
|
||||
"stringify-entities": "^4.0.0",
|
||||
"zwitch": "^2.0.4"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/hast-util-whitespace": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz",
|
||||
"integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/hast": "^3.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/html-void-elements": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz",
|
||||
"integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/lru_map": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.4.1.tgz",
|
||||
"integrity": "sha512-I+lBvqMMFfqaV8CJCISjI3wbjmwVu/VyOoU7+qtu9d7ioW5klMgsTTiUOUp+DJvfTTzKXoPbyC6YfgkNcyPSOg==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/mdast-util-to-hast": {
|
||||
"version": "13.2.1",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz",
|
||||
"integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/hast": "^3.0.0",
|
||||
"@types/mdast": "^4.0.0",
|
||||
"@ungap/structured-clone": "^1.0.0",
|
||||
"devlop": "^1.0.0",
|
||||
"micromark-util-sanitize-uri": "^2.0.0",
|
||||
"trim-lines": "^3.0.0",
|
||||
"unist-util-position": "^5.0.0",
|
||||
"unist-util-visit": "^5.0.0",
|
||||
"vfile": "^6.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-util-character": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz",
|
||||
"integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "GitHub Sponsors",
|
||||
"url": "https://github.com/sponsors/unifiedjs"
|
||||
},
|
||||
{
|
||||
"type": "OpenCollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"micromark-util-symbol": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-util-encode": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz",
|
||||
"integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "GitHub Sponsors",
|
||||
"url": "https://github.com/sponsors/unifiedjs"
|
||||
},
|
||||
{
|
||||
"type": "OpenCollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/micromark-util-sanitize-uri": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz",
|
||||
"integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "GitHub Sponsors",
|
||||
"url": "https://github.com/sponsors/unifiedjs"
|
||||
},
|
||||
{
|
||||
"type": "OpenCollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-encode": "^2.0.0",
|
||||
"micromark-util-symbol": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-util-symbol": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz",
|
||||
"integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "GitHub Sponsors",
|
||||
"url": "https://github.com/sponsors/unifiedjs"
|
||||
},
|
||||
{
|
||||
"type": "OpenCollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/micromark-util-types": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz",
|
||||
"integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "GitHub Sponsors",
|
||||
"url": "https://github.com/sponsors/unifiedjs"
|
||||
},
|
||||
{
|
||||
"type": "OpenCollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/oniguruma-parser": {
|
||||
"version": "0.12.2",
|
||||
"resolved": "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.2.tgz",
|
||||
"integrity": "sha512-6HVa5oIrgMC6aA6WF6XyyqbhRPJrKR02L20+2+zpDtO5QAzGHAUGw5TKQvwi5vctNnRHkJYmjAhRVQF2EKdTQw==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/oniguruma-to-es": {
|
||||
"version": "4.3.6",
|
||||
"resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.6.tgz",
|
||||
"integrity": "sha512-csuQ9x3Yr0cEIs/Zgx/OEt9iBw9vqIunAPQkx19R/fiMq2oGVTgcMqO/V3Ybqefr1TBvosI6jU539ksaBULJyA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"oniguruma-parser": "^0.12.2",
|
||||
"regex": "^6.1.0",
|
||||
"regex-recursion": "^6.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/playwright-core": {
|
||||
"version": "1.59.1",
|
||||
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz",
|
||||
"integrity": "sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==",
|
||||
"license": "Apache-2.0",
|
||||
"bin": {
|
||||
"playwright-core": "cli.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18"
|
||||
}
|
||||
},
|
||||
"node_modules/property-information": {
|
||||
"version": "7.1.0",
|
||||
"resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz",
|
||||
"integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/react": {
|
||||
"version": "19.2.5",
|
||||
"resolved": "https://registry.npmjs.org/react/-/react-19.2.5.tgz",
|
||||
"integrity": "sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/react-dom": {
|
||||
"version": "19.2.5",
|
||||
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.5.tgz",
|
||||
"integrity": "sha512-J5bAZz+DXMMwW/wV3xzKke59Af6CHY7G4uYLN1OvBcKEsWOs4pQExj86BBKamxl/Ik5bx9whOrvBlSDfWzgSag==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"scheduler": "^0.27.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"react": "^19.2.5"
|
||||
}
|
||||
},
|
||||
"node_modules/regex": {
|
||||
"version": "6.1.0",
|
||||
"resolved": "https://registry.npmjs.org/regex/-/regex-6.1.0.tgz",
|
||||
"integrity": "sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"regex-utilities": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"node_modules/regex-recursion": {
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz",
|
||||
"integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"regex-utilities": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"node_modules/regex-utilities": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz",
|
||||
"integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/scheduler": {
|
||||
"version": "0.27.0",
|
||||
"resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz",
|
||||
"integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==",
|
||||
"license": "MIT",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/shiki": {
|
||||
"version": "3.23.0",
|
||||
"resolved": "https://registry.npmjs.org/shiki/-/shiki-3.23.0.tgz",
|
||||
"integrity": "sha512-55Dj73uq9ZXL5zyeRPzHQsK7Nbyt6Y10k5s7OjuFZGMhpp4r/rsLBH0o/0fstIzX1Lep9VxefWljK/SKCzygIA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@shikijs/core": "3.23.0",
|
||||
"@shikijs/engine-javascript": "3.23.0",
|
||||
"@shikijs/engine-oniguruma": "3.23.0",
|
||||
"@shikijs/langs": "3.23.0",
|
||||
"@shikijs/themes": "3.23.0",
|
||||
"@shikijs/types": "3.23.0",
|
||||
"@shikijs/vscode-textmate": "^10.0.2",
|
||||
"@types/hast": "^3.0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/space-separated-tokens": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz",
|
||||
"integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/stringify-entities": {
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz",
|
||||
"integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"character-entities-html4": "^2.0.0",
|
||||
"character-entities-legacy": "^3.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/trim-lines": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz",
|
||||
"integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/typebox": {
|
||||
"version": "1.1.37",
|
||||
"resolved": "https://registry.npmjs.org/typebox/-/typebox-1.1.37.tgz",
|
||||
"integrity": "sha512-jb7jp6KvOvvy5sd+11AfJ0/e0F0AS9RcOXd55oGi2ZnRHIGmFvrTaNF+ZidRmGBmmNTkM5KKl0Z37KzxJ+owEQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/unist-util-is": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.1.tgz",
|
||||
"integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "^3.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/unist-util-position": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz",
|
||||
"integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "^3.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/unist-util-stringify-position": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz",
|
||||
"integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "^3.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/unist-util-visit": {
|
||||
"version": "5.1.0",
|
||||
"resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz",
|
||||
"integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "^3.0.0",
|
||||
"unist-util-is": "^6.0.0",
|
||||
"unist-util-visit-parents": "^6.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/unist-util-visit-parents": {
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz",
|
||||
"integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "^3.0.0",
|
||||
"unist-util-is": "^6.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/vfile": {
|
||||
"version": "6.0.3",
|
||||
"resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz",
|
||||
"integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "^3.0.0",
|
||||
"vfile-message": "^4.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/vfile-message": {
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.3.tgz",
|
||||
"integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/unist": "^3.0.0",
|
||||
"unist-util-stringify-position": "^4.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/zwitch": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz",
|
||||
"integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-diffs",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw diff viewer plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/diffs": "2026.5.1-beta.1"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "diffs",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/diffs",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/diffs",
|
||||
"sourceRef": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
}
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
Subproject commit 3441bcffc4dee15936ede406ce001ffcf9e2efc3
|
||||
21
plugins/discord/package-lock.json
generated
21
plugins/discord/package-lock.json
generated
@ -1,21 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-discord",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-discord",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/discord": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/discord": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/discord/-/discord-2026.3.13.tgz",
|
||||
"integrity": "sha512-uYCzMmpYVhFPD0TstMmnTNBk9N3Uk/VsZivjr8V/B7g7ajI5HPgsiHBjCLrTmmJZKsVnauo0pAIx/aBcKejYpQ==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later."
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-discord",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Discord channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/discord": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "discord",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/discord",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/discord",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
644
plugins/feishu/package-lock.json
generated
644
plugins/feishu/package-lock.json
generated
@ -1,644 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-feishu",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-feishu",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/feishu": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@larksuiteoapi/node-sdk": {
|
||||
"version": "1.62.1",
|
||||
"resolved": "https://registry.npmjs.org/@larksuiteoapi/node-sdk/-/node-sdk-1.62.1.tgz",
|
||||
"integrity": "sha512-o9oAjv5Ffnp/6iXIJLHrO6N0US/r2ZZy3xmO6ylGegjuVSC05cx0fADA38Dc1h0FV8T9BDK+ariWk84TNMGbKg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"axios": "~1.13.3",
|
||||
"lodash.identity": "^3.0.0",
|
||||
"lodash.merge": "^4.6.2",
|
||||
"lodash.pickby": "^4.6.0",
|
||||
"protobufjs": "^7.2.6",
|
||||
"qs": "^6.14.2",
|
||||
"ws": "^8.19.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/feishu": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/feishu/-/feishu-2026.3.13.tgz",
|
||||
"integrity": "sha512-D5vPkgGZ9lfCQnDFlGrQN6NCSUYRgYW9k7amW3qlm9zBI4Sp+alRZVqLZ4yZ2eCXHjw9RVp/L75wjJ7NBQyfEw==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"@larksuiteoapi/node-sdk": "^1.59.0",
|
||||
"@sinclair/typebox": "0.34.48",
|
||||
"https-proxy-agent": "^8.0.0",
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/@protobufjs/aspromise": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
|
||||
"integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/base64": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
|
||||
"integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/codegen": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.5.tgz",
|
||||
"integrity": "sha512-zgXFLzW3Ap33e6d0Wlj4MGIm6Ce8O89n/apUaGNB/jx+hw+ruWEp7EwGUshdLKVRCxZW12fp9r40E1mQrf/34g==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/eventemitter": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
|
||||
"integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/fetch": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
|
||||
"integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==",
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
"@protobufjs/aspromise": "^1.1.1",
|
||||
"@protobufjs/inquire": "^1.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@protobufjs/float": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
|
||||
"integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/inquire": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.1.tgz",
|
||||
"integrity": "sha512-mnzgDV26ueAvk7rsbt9L7bE0SuAoqyuys/sMMrmVcN5x9VsxpcG3rqAUSgDyLp0UZlmNfIbQ4fHfCtreVBk8Ew==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/path": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
|
||||
"integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/pool": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
|
||||
"integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@protobufjs/utf8": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.1.tgz",
|
||||
"integrity": "sha512-oOAWABowe8EAbMyWKM0tYDKi8Yaox52D+HWZhAIJqQXbqe0xI/GV7FhLWqlEKreMkfDjshR5FKgi3mnle0h6Eg==",
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.48",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz",
|
||||
"integrity": "sha512-kKJTNuK3AQOrgjjotVxMrCn1sUJwM76wMszfq1kdU4uYVJjvEWuFQ6HgvLt4Xz3fSmZlTOxJ/Ie13KnIcWQXFA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "25.6.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.6.0.tgz",
|
||||
"integrity": "sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"undici-types": "~7.19.0"
|
||||
}
|
||||
},
|
||||
"node_modules/agent-base": {
|
||||
"version": "8.0.0",
|
||||
"resolved": "https://registry.npmjs.org/agent-base/-/agent-base-8.0.0.tgz",
|
||||
"integrity": "sha512-QT8i0hCz6C/KQ+KTAbSNwCHDGdmUJl2tp2ZpNlGSWCfhUNVbYG2WLE3MdZGBAgXPV4GAvjGMxo+C1hroyxmZEg==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 14"
|
||||
}
|
||||
},
|
||||
"node_modules/asynckit": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/axios": {
|
||||
"version": "1.13.6",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.13.6.tgz",
|
||||
"integrity": "sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"follow-redirects": "^1.15.11",
|
||||
"form-data": "^4.0.5",
|
||||
"proxy-from-env": "^1.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/call-bind-apply-helpers": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
|
||||
"integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0",
|
||||
"function-bind": "^1.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/call-bound": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
|
||||
"integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"call-bind-apply-helpers": "^1.0.2",
|
||||
"get-intrinsic": "^1.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/combined-stream": {
|
||||
"version": "1.0.8",
|
||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"delayed-stream": "~1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/debug": {
|
||||
"version": "4.4.3",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
|
||||
"integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"ms": "^2.1.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"supports-color": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/delayed-stream": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
||||
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/dunder-proto": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
|
||||
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"call-bind-apply-helpers": "^1.0.1",
|
||||
"es-errors": "^1.3.0",
|
||||
"gopd": "^1.2.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-define-property": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
|
||||
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-errors": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
|
||||
"integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-object-atoms": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
|
||||
"integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-set-tostringtag": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
|
||||
"integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0",
|
||||
"get-intrinsic": "^1.2.6",
|
||||
"has-tostringtag": "^1.0.2",
|
||||
"hasown": "^2.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/follow-redirects": {
|
||||
"version": "1.16.0",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz",
|
||||
"integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "individual",
|
||||
"url": "https://github.com/sponsors/RubenVerborgh"
|
||||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=4.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"debug": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/form-data": {
|
||||
"version": "4.0.5",
|
||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz",
|
||||
"integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"asynckit": "^0.4.0",
|
||||
"combined-stream": "^1.0.8",
|
||||
"es-set-tostringtag": "^2.1.0",
|
||||
"hasown": "^2.0.2",
|
||||
"mime-types": "^2.1.12"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/function-bind": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
|
||||
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/get-intrinsic": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
|
||||
"integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"call-bind-apply-helpers": "^1.0.2",
|
||||
"es-define-property": "^1.0.1",
|
||||
"es-errors": "^1.3.0",
|
||||
"es-object-atoms": "^1.1.1",
|
||||
"function-bind": "^1.1.2",
|
||||
"get-proto": "^1.0.1",
|
||||
"gopd": "^1.2.0",
|
||||
"has-symbols": "^1.1.0",
|
||||
"hasown": "^2.0.2",
|
||||
"math-intrinsics": "^1.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/get-proto": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
|
||||
"integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"dunder-proto": "^1.0.1",
|
||||
"es-object-atoms": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/gopd": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
|
||||
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/has-symbols": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
|
||||
"integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/has-tostringtag": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
|
||||
"integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"has-symbols": "^1.0.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/hasown": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz",
|
||||
"integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/https-proxy-agent": {
|
||||
"version": "8.0.0",
|
||||
"resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-8.0.0.tgz",
|
||||
"integrity": "sha512-YYeW+iCnAS3xhvj2dvVoWgsbca3RfQy/IlaNHHOtDmU0jMqPI9euIq3Y9BJETdxk16h9NHHCKqp/KB9nIMStCQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"agent-base": "8.0.0",
|
||||
"debug": "^4.3.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 14"
|
||||
}
|
||||
},
|
||||
"node_modules/lodash.identity": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.identity/-/lodash.identity-3.0.0.tgz",
|
||||
"integrity": "sha512-AupTIzdLQxJS5wIYUQlgGyk2XRTfGXA+MCghDHqZk0pzUNYvd3EESS6dkChNauNYVIutcb0dfHw1ri9Q1yPV8Q==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/lodash.merge": {
|
||||
"version": "4.6.2",
|
||||
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
|
||||
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/lodash.pickby": {
|
||||
"version": "4.6.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz",
|
||||
"integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/long": {
|
||||
"version": "5.3.2",
|
||||
"resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz",
|
||||
"integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/math-intrinsics": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
|
||||
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/mime-db": {
|
||||
"version": "1.52.0",
|
||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
||||
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.6"
|
||||
}
|
||||
},
|
||||
"node_modules/mime-types": {
|
||||
"version": "2.1.35",
|
||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
||||
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"mime-db": "1.52.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.6"
|
||||
}
|
||||
},
|
||||
"node_modules/ms": {
|
||||
"version": "2.1.3",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
|
||||
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/object-inspect": {
|
||||
"version": "1.13.4",
|
||||
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
|
||||
"integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/protobufjs": {
|
||||
"version": "7.5.6",
|
||||
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.6.tgz",
|
||||
"integrity": "sha512-M71sTMB146U3u0di3yup8iM+zv8yPRNQVr1KK4tyBitl3qFvEGucq/rGDRShD2rsJhtN02RJaJ7j5X5hmy8SJg==",
|
||||
"hasInstallScript": true,
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
"@protobufjs/aspromise": "^1.1.2",
|
||||
"@protobufjs/base64": "^1.1.2",
|
||||
"@protobufjs/codegen": "^2.0.5",
|
||||
"@protobufjs/eventemitter": "^1.1.0",
|
||||
"@protobufjs/fetch": "^1.1.0",
|
||||
"@protobufjs/float": "^1.0.2",
|
||||
"@protobufjs/inquire": "^1.1.1",
|
||||
"@protobufjs/path": "^1.1.2",
|
||||
"@protobufjs/pool": "^1.1.0",
|
||||
"@protobufjs/utf8": "^1.1.1",
|
||||
"@types/node": ">=13.7.0",
|
||||
"long": "^5.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/proxy-from-env": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
|
||||
"integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/qs": {
|
||||
"version": "6.15.1",
|
||||
"resolved": "https://registry.npmjs.org/qs/-/qs-6.15.1.tgz",
|
||||
"integrity": "sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==",
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
"side-channel": "^1.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.6"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/side-channel": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
|
||||
"integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0",
|
||||
"object-inspect": "^1.13.3",
|
||||
"side-channel-list": "^1.0.0",
|
||||
"side-channel-map": "^1.0.1",
|
||||
"side-channel-weakmap": "^1.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/side-channel-list": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
|
||||
"integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0",
|
||||
"object-inspect": "^1.13.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/side-channel-map": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
|
||||
"integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"call-bound": "^1.0.2",
|
||||
"es-errors": "^1.3.0",
|
||||
"get-intrinsic": "^1.2.5",
|
||||
"object-inspect": "^1.13.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/side-channel-weakmap": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
|
||||
"integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"call-bound": "^1.0.2",
|
||||
"es-errors": "^1.3.0",
|
||||
"get-intrinsic": "^1.2.5",
|
||||
"object-inspect": "^1.13.3",
|
||||
"side-channel-map": "^1.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/undici-types": {
|
||||
"version": "7.19.2",
|
||||
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.19.2.tgz",
|
||||
"integrity": "sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/ws": {
|
||||
"version": "8.20.0",
|
||||
"resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz",
|
||||
"integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"bufferutil": "^4.0.1",
|
||||
"utf-8-validate": ">=5.0.2"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"bufferutil": {
|
||||
"optional": true
|
||||
},
|
||||
"utf-8-validate": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-feishu",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Feishu/Lark channel plugin (community maintained by @m1heng).",
|
||||
"dependencies": {
|
||||
"@openclaw/feishu": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "feishu",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/feishu",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/feishu",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
47
plugins/google-meet/package-lock.json
generated
47
plugins/google-meet/package-lock.json
generated
@ -1,47 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-google-meet",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-google-meet",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/google-meet": "2026.5.1-beta.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/google-meet": {
|
||||
"version": "2026.5.1-beta.2",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/google-meet/-/google-meet-2026.5.1-beta.2.tgz",
|
||||
"integrity": "sha512-Kfd0V4vrjL4T1XqHVJZKgydI2GdQpH+jziF100a/+rirYK6i7DKIkKJK/i0IFNq5gf90edkzUlyKMlWrZIJXsA==",
|
||||
"dependencies": {
|
||||
"commander": "^14.0.3",
|
||||
"typebox": "1.1.37"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"openclaw": ">=2026.4.25"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"openclaw": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/commander": {
|
||||
"version": "14.0.3",
|
||||
"resolved": "https://registry.npmjs.org/commander/-/commander-14.0.3.tgz",
|
||||
"integrity": "sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=20"
|
||||
}
|
||||
},
|
||||
"node_modules/typebox": {
|
||||
"version": "1.1.37",
|
||||
"resolved": "https://registry.npmjs.org/typebox/-/typebox-1.1.37.tgz",
|
||||
"integrity": "sha512-jb7jp6KvOvvy5sd+11AfJ0/e0F0AS9RcOXd55oGi2ZnRHIGmFvrTaNF+ZidRmGBmmNTkM5KKl0Z37KzxJ+owEQ==",
|
||||
"license": "MIT"
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-google-meet",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Google Meet participant plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/google-meet": "2026.5.1-beta.2"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "google-meet",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/google-meet",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/google-meet",
|
||||
"sourceRef": "f4ef1bf04e9637958418428db0ff9e75e6698159"
|
||||
}
|
||||
}
|
||||
@ -1 +1 @@
|
||||
Subproject commit e9f01452b781d24b38336ef0738f2c97353c541e
|
||||
Subproject commit f1ac095b5d633d463d57c5cc9735547a73ff9199
|
||||
@ -1 +0,0 @@
|
||||
Subproject commit 6995e72caacdcab1aedc74f20d2118465eaf976e
|
||||
1300
plugins/lightclawbot/package-lock.json
generated
1300
plugins/lightclawbot/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -6,9 +6,6 @@
|
||||
"dependencies": {
|
||||
"lightclawbot": "1.1.2"
|
||||
},
|
||||
"overrides": {
|
||||
"@anthropic-ai/sdk": "0.91.1"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "lightclawbot",
|
||||
"source": "npm",
|
||||
|
||||
30
plugins/lobster/package-lock.json
generated
30
plugins/lobster/package-lock.json
generated
@ -1,30 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-lobster",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-lobster",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/lobster": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/lobster": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/lobster/-/lobster-2026.3.13.tgz",
|
||||
"integrity": "sha512-4ezsGiYPANwzEJ0QAZ0TqhaMfhvdBcXupTc4TPqEALk+0lbuO9+y5MQkeDCZKaRGQfKmeX0yhgHhqOWLTdGwww==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"@sinclair/typebox": "0.34.48"
|
||||
}
|
||||
},
|
||||
"node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.48",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz",
|
||||
"integrity": "sha512-kKJTNuK3AQOrgjjotVxMrCn1sUJwM76wMszfq1kdU4uYVJjvEWuFQ6HgvLt4Xz3fSmZlTOxJ/Ie13KnIcWQXFA==",
|
||||
"license": "MIT"
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-lobster",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for Lobster workflow tool plugin (typed pipelines + resumable approvals).",
|
||||
"dependencies": {
|
||||
"@openclaw/lobster": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "lobster",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/lobster",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/lobster",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
@ -1 +1 @@
|
||||
Subproject commit 4fc60c925c1eed730a73c6bb62144f7af905687f
|
||||
Subproject commit 8d634cdf4b7544c9093c2e701fbbe5075d1e3de6
|
||||
4907
plugins/matrix/package-lock.json
generated
4907
plugins/matrix/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-matrix",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Matrix channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/matrix": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "matrix",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/matrix",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/matrix",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
21
plugins/mattermost/package-lock.json
generated
21
plugins/mattermost/package-lock.json
generated
@ -1,21 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-mattermost",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-mattermost",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/mattermost": "2026.2.21"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/mattermost": {
|
||||
"version": "2026.2.21",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/mattermost/-/mattermost-2026.2.21.tgz",
|
||||
"integrity": "sha512-FUQsyJ3YMRXjFCzjEmtET0hrfUJSDi//GVaAUkixrH6aC0tS/j23rXfaZW4LkT1N+d046jXCl+tmWiieUAa6QA==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later."
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-mattermost",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Mattermost channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/mattermost": "2026.2.21"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "mattermost",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/mattermost",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/mattermost",
|
||||
"sourceRef": "35a57bc940833a6c1f594b2308e349e5ee0148db"
|
||||
}
|
||||
}
|
||||
518
plugins/memory-lancedb/package-lock.json
generated
518
plugins/memory-lancedb/package-lock.json
generated
@ -1,518 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-memory-lancedb",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-memory-lancedb",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/memory-lancedb": "2026.5.1-beta.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb/-/lancedb-0.27.2.tgz",
|
||||
"integrity": "sha512-JQpZHV5KzUzDI3flYCjtZcfHlEbL8lM54E0NT+jrRYe29aKYegfavvPsAsuZp0VdcMwFMZcpMkaBhjQMo/fwvg==",
|
||||
"cpu": [
|
||||
"x64",
|
||||
"arm64"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"os": [
|
||||
"darwin",
|
||||
"linux",
|
||||
"win32"
|
||||
],
|
||||
"dependencies": {
|
||||
"reflect-metadata": "^0.2.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"@lancedb/lancedb-darwin-arm64": "0.27.2",
|
||||
"@lancedb/lancedb-linux-arm64-gnu": "0.27.2",
|
||||
"@lancedb/lancedb-linux-arm64-musl": "0.27.2",
|
||||
"@lancedb/lancedb-linux-x64-gnu": "0.27.2",
|
||||
"@lancedb/lancedb-linux-x64-musl": "0.27.2",
|
||||
"@lancedb/lancedb-win32-arm64-msvc": "0.27.2",
|
||||
"@lancedb/lancedb-win32-x64-msvc": "0.27.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"apache-arrow": ">=15.0.0 <=18.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb-darwin-arm64": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-darwin-arm64/-/lancedb-darwin-arm64-0.27.2.tgz",
|
||||
"integrity": "sha512-+XM68V/Rou8kKWDnUeKvg9ChKS0zGeQC2sKAop+06Ty4LwIjEGkeYBYrK0vMhZkBN5EFaOjTOp8E8hGQxdFwXA==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb-linux-arm64-gnu": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-arm64-gnu/-/lancedb-linux-arm64-gnu-0.27.2.tgz",
|
||||
"integrity": "sha512-laiTTDeMUTzm7t+t6ME5nNQMDoERjmkeuWAFWekbXiFdmp62Dqu34Lvf2BvpWnKwxLMZ5JcBJFIw32WS8/8Jnw==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"libc": [
|
||||
"glibc"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb-linux-arm64-musl": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-arm64-musl/-/lancedb-linux-arm64-musl-0.27.2.tgz",
|
||||
"integrity": "sha512-bK5Mc50EvwGZaaiym5CoPu8Y4GNSyEEvTQ0dTC2AUIm83qdQu1rGw6kkYtc/rTH/hbvAvPQot4agHDZfMVxfYw==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"libc": [
|
||||
"musl"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb-linux-x64-gnu": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-x64-gnu/-/lancedb-linux-x64-gnu-0.27.2.tgz",
|
||||
"integrity": "sha512-qe+ML0YmPru0o84f33RBHqoNk6zsHBjiXTLKsEBDiiFYKks/XMsrkKy9NQYcTxShBrg/nx/MLzCzd7dihqgNYw==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"libc": [
|
||||
"glibc"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb-linux-x64-musl": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-x64-musl/-/lancedb-linux-x64-musl-0.27.2.tgz",
|
||||
"integrity": "sha512-ZpX6Oxn06qvzAdm+D/gNb3SRp/A9lgRAPvPg6nnMmSQk5XamC/hbGO07uK1wwop7nlqXUH/thk4is2y2ieWdTw==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"libc": [
|
||||
"musl"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb-win32-arm64-msvc": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-win32-arm64-msvc/-/lancedb-win32-arm64-msvc-0.27.2.tgz",
|
||||
"integrity": "sha512-4ffpFvh49MiUtkdFJOmBytXEbgUPXORphTOuExnJAgT1VAKwQcu4ZzdsgNoK6mumKBaU+pYQU/MedNkgTzx/Lw==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@lancedb/lancedb-win32-x64-msvc": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-win32-x64-msvc/-/lancedb-win32-x64-msvc-0.27.2.tgz",
|
||||
"integrity": "sha512-XlwiI6CK2Gkqq+FFVAStHojao/XjIJpDPTm7Tb9SpLL64IlwGw3yaT2hnWKTm90W4KlSrpfSldPly+s+y4U7JQ==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/memory-lancedb": {
|
||||
"version": "2026.5.1-beta.1",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/memory-lancedb/-/memory-lancedb-2026.5.1-beta.1.tgz",
|
||||
"integrity": "sha512-PRnMSgplR5+xdOuCMERxemdaGiMTYTgg7dSHz/uLo8B54mf3BHcuKxFQ60755Tc1QzGtrzA8MqPElf07Pn0JsQ==",
|
||||
"dependencies": {
|
||||
"@lancedb/lancedb": "^0.27.2",
|
||||
"openai": "^6.35.0",
|
||||
"typebox": "1.1.37"
|
||||
}
|
||||
},
|
||||
"node_modules/@swc/helpers": {
|
||||
"version": "0.5.21",
|
||||
"resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.21.tgz",
|
||||
"integrity": "sha512-jI/VAmtdjB/RnI8GTnokyX7Ug8c+g+ffD6QRLa6XQewtnGyukKkKSk3wLTM3b5cjt1jNh9x0jfVlagdN2gDKQg==",
|
||||
"license": "Apache-2.0",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"tslib": "^2.8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/command-line-args": {
|
||||
"version": "5.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.3.tgz",
|
||||
"integrity": "sha512-uv0aG6R0Y8WHZLTamZwtfsDLVRnOa+n+n5rEvFWL5Na5gZ8V2Teab/duDPFzIIIhs9qizDpcavCusCLJZu62Kw==",
|
||||
"license": "MIT",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/@types/command-line-usage": {
|
||||
"version": "5.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/command-line-usage/-/command-line-usage-5.0.4.tgz",
|
||||
"integrity": "sha512-BwR5KP3Es/CSht0xqBcUXS3qCAUVXwpRKsV2+arxeb65atasuXG9LykC9Ab10Cw3s2raH92ZqOeILaQbsB2ACg==",
|
||||
"license": "MIT",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "20.19.39",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.39.tgz",
|
||||
"integrity": "sha512-orrrD74MBUyK8jOAD/r0+lfa1I2MO6I+vAkmAWzMYbCcgrN4lCrmK52gRFQq/JRxfYPfonkr4b0jcY7Olqdqbw==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"undici-types": "~6.21.0"
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-styles": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"color-convert": "^2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/apache-arrow": {
|
||||
"version": "18.1.0",
|
||||
"resolved": "https://registry.npmjs.org/apache-arrow/-/apache-arrow-18.1.0.tgz",
|
||||
"integrity": "sha512-v/ShMp57iBnBp4lDgV8Jx3d3Q5/Hac25FWmQ98eMahUiHPXcvwIMKJD0hBIgclm/FCG+LwPkAKtkRO1O/W0YGg==",
|
||||
"license": "Apache-2.0",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"@swc/helpers": "^0.5.11",
|
||||
"@types/command-line-args": "^5.2.3",
|
||||
"@types/command-line-usage": "^5.0.4",
|
||||
"@types/node": "^20.13.0",
|
||||
"command-line-args": "^5.2.1",
|
||||
"command-line-usage": "^7.0.1",
|
||||
"flatbuffers": "^24.3.25",
|
||||
"json-bignum": "^0.0.3",
|
||||
"tslib": "^2.6.2"
|
||||
},
|
||||
"bin": {
|
||||
"arrow2csv": "bin/arrow2csv.js"
|
||||
}
|
||||
},
|
||||
"node_modules/array-back": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz",
|
||||
"integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/chalk": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
|
||||
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"ansi-styles": "^4.1.0",
|
||||
"supports-color": "^7.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/chalk?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/chalk-template": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-0.4.0.tgz",
|
||||
"integrity": "sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"chalk": "^4.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/chalk-template?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/color-convert": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"color-name": "~1.1.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=7.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/color-name": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||
"license": "MIT",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/command-line-args": {
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz",
|
||||
"integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"array-back": "^3.1.0",
|
||||
"find-replace": "^3.0.0",
|
||||
"lodash.camelcase": "^4.3.0",
|
||||
"typical": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/command-line-usage": {
|
||||
"version": "7.0.4",
|
||||
"resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-7.0.4.tgz",
|
||||
"integrity": "sha512-85UdvzTNx/+s5CkSgBm/0hzP80RFHAa7PsfeADE5ezZF3uHz3/Tqj9gIKGT9PTtpycc3Ua64T0oVulGfKxzfqg==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"array-back": "^6.2.2",
|
||||
"chalk-template": "^0.4.0",
|
||||
"table-layout": "^4.1.1",
|
||||
"typical": "^7.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.20.0"
|
||||
}
|
||||
},
|
||||
"node_modules/command-line-usage/node_modules/array-back": {
|
||||
"version": "6.2.3",
|
||||
"resolved": "https://registry.npmjs.org/array-back/-/array-back-6.2.3.tgz",
|
||||
"integrity": "sha512-SGDvmg6QTYiTxCBkYVmThcoa67uLl35pyzRHdpCGBOcqFy6BtwnphoFPk7LhJshD+Yk1Kt35WGWeZPTgwR4Fhw==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=12.17"
|
||||
}
|
||||
},
|
||||
"node_modules/command-line-usage/node_modules/typical": {
|
||||
"version": "7.3.0",
|
||||
"resolved": "https://registry.npmjs.org/typical/-/typical-7.3.0.tgz",
|
||||
"integrity": "sha512-ya4mg/30vm+DOWfBg4YK3j2WD6TWtRkCbasOJr40CseYENzCUby/7rIvXA99JGsQHeNxLbnXdyLLxKSv3tauFw==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=12.17"
|
||||
}
|
||||
},
|
||||
"node_modules/find-replace": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz",
|
||||
"integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"array-back": "^3.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/flatbuffers": {
|
||||
"version": "24.12.23",
|
||||
"resolved": "https://registry.npmjs.org/flatbuffers/-/flatbuffers-24.12.23.tgz",
|
||||
"integrity": "sha512-dLVCAISd5mhls514keQzmEG6QHmUUsNuWsb4tFafIUwvvgDjXhtfAYSKOzt5SWOy+qByV5pbsDZ+Vb7HUOBEdA==",
|
||||
"license": "Apache-2.0",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/has-flag": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/json-bignum": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/json-bignum/-/json-bignum-0.0.3.tgz",
|
||||
"integrity": "sha512-2WHyXj3OfHSgNyuzDbSxI1w2jgw5gkWSWhS7Qg4bWXx1nLk3jnbwfUeS0PSba3IzpTUWdHxBieELUzXRjQB2zg==",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/lodash.camelcase": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz",
|
||||
"integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==",
|
||||
"license": "MIT",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/openai": {
|
||||
"version": "6.35.0",
|
||||
"resolved": "https://registry.npmjs.org/openai/-/openai-6.35.0.tgz",
|
||||
"integrity": "sha512-L/skwIGnt5xQZHb0UfTu9uAUKbis3ehKypOuJKi20QvG7UStV6C8IC3myGYHcdiF4kms/bAvOJ9UqqNWqi8x/Q==",
|
||||
"license": "Apache-2.0",
|
||||
"bin": {
|
||||
"openai": "bin/cli"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"ws": "^8.18.0",
|
||||
"zod": "^3.25 || ^4.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"ws": {
|
||||
"optional": true
|
||||
},
|
||||
"zod": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/reflect-metadata": {
|
||||
"version": "0.2.2",
|
||||
"resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz",
|
||||
"integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==",
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/supports-color": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
||||
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"has-flag": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/table-layout": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/table-layout/-/table-layout-4.1.1.tgz",
|
||||
"integrity": "sha512-iK5/YhZxq5GO5z8wb0bY1317uDF3Zjpha0QFFLA8/trAoiLbQD0HUbMesEaxyzUgDxi2QlcbM8IvqOlEjgoXBA==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"array-back": "^6.2.2",
|
||||
"wordwrapjs": "^5.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.17"
|
||||
}
|
||||
},
|
||||
"node_modules/table-layout/node_modules/array-back": {
|
||||
"version": "6.2.3",
|
||||
"resolved": "https://registry.npmjs.org/array-back/-/array-back-6.2.3.tgz",
|
||||
"integrity": "sha512-SGDvmg6QTYiTxCBkYVmThcoa67uLl35pyzRHdpCGBOcqFy6BtwnphoFPk7LhJshD+Yk1Kt35WGWeZPTgwR4Fhw==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=12.17"
|
||||
}
|
||||
},
|
||||
"node_modules/tslib": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
|
||||
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
|
||||
"license": "0BSD",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/typebox": {
|
||||
"version": "1.1.37",
|
||||
"resolved": "https://registry.npmjs.org/typebox/-/typebox-1.1.37.tgz",
|
||||
"integrity": "sha512-jb7jp6KvOvvy5sd+11AfJ0/e0F0AS9RcOXd55oGi2ZnRHIGmFvrTaNF+ZidRmGBmmNTkM5KKl0Z37KzxJ+owEQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/typical": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz",
|
||||
"integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/undici-types": {
|
||||
"version": "6.21.0",
|
||||
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
|
||||
"integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
|
||||
"license": "MIT",
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/wordwrapjs": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-5.1.1.tgz",
|
||||
"integrity": "sha512-0yweIbkINJodk27gX9LBGMzyQdBDan3s/dEAiwBOj+Mf0PPyWL6/rikalkv8EeD0E8jm4o5RXEOrFTP3NXbhJg==",
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=12.17"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-memory-lancedb",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw LanceDB-backed long-term memory plugin with auto-recall/capture.",
|
||||
"dependencies": {
|
||||
"@openclaw/memory-lancedb": "2026.5.1-beta.1"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "memory-lancedb",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/memory-lancedb",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/memory-lancedb",
|
||||
"sourceRef": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
}
|
||||
}
|
||||
@ -1 +1 @@
|
||||
Subproject commit e931499a2589af06ee543ce07df2bdda29ac8085
|
||||
Subproject commit 03fcc33c5fd285971d4b3dbaa8bbb31cb727db7c
|
||||
1404
plugins/msteams/package-lock.json
generated
1404
plugins/msteams/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-msteams",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Microsoft Teams channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/msteams": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "msteams",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/msteams",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/msteams",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
Subproject commit 3351fbdd4eb7d9b80ec471545083956327da2b10
|
||||
33
plugins/nextcloud-talk/package-lock.json
generated
33
plugins/nextcloud-talk/package-lock.json
generated
@ -1,33 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-nextcloud-talk",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-nextcloud-talk",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/nextcloud-talk": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/nextcloud-talk": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/nextcloud-talk/-/nextcloud-talk-2026.3.13.tgz",
|
||||
"integrity": "sha512-zw5uy5FZd6PFp2LqrAR9R9Pn610DHHHbk1p5ZlIadCyW5ECuXDYsEpUzJpcL0P7MN5vCMOkVL+5QDbKGB6R4gQ==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-nextcloud-talk",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Nextcloud Talk channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/nextcloud-talk": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "nextcloud-talk",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/nextcloud-talk",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/nextcloud-talk",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
138
plugins/nostr/package-lock.json
generated
138
plugins/nostr/package-lock.json
generated
@ -1,138 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-nostr",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-nostr",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/nostr": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@noble/ciphers": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@noble/ciphers/-/ciphers-2.1.1.tgz",
|
||||
"integrity": "sha512-bysYuiVfhxNJuldNXlFEitTVdNnYUc+XNJZd7Qm2a5j1vZHgY+fazadNFWFaMK/2vye0JVlxV3gHmC0WDfAOQw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 20.19.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/@noble/curves": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@noble/curves/-/curves-2.0.1.tgz",
|
||||
"integrity": "sha512-vs1Az2OOTBiP4q0pwjW5aF0xp9n4MxVrmkFBxc6EKZc6ddYx5gaZiAsZoq0uRRXWbi3AT/sBqn05eRPtn1JCPw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@noble/hashes": "2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 20.19.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/@noble/hashes": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-2.0.1.tgz",
|
||||
"integrity": "sha512-XlOlEbQcE9fmuXxrVTXCTlG2nlRXa9Rj3rr5Ue/+tX+nmkgbX720YHh0VR3hBF9xDvwnb8D2shVGOwNx+ulArw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 20.19.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/nostr": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/nostr/-/nostr-2026.3.13.tgz",
|
||||
"integrity": "sha512-5KLRCPbQ/K5O7Qk7yFDTr/MeJI73SHYnRN3vA6Te3IbfWiCrcJN8dn3r/ZdZF6IGyZI3McNnmR622xo0AiDs8w==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"nostr-tools": "^2.23.3",
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/@scure/base": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@scure/base/-/base-2.0.0.tgz",
|
||||
"integrity": "sha512-3E1kpuZginKkek01ovG8krQ0Z44E3DHPjc5S2rjJw9lZn3KSQOs8S7wqikF/AH7iRanHypj85uGyxk0XAyC37w==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/@scure/bip32": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-2.0.1.tgz",
|
||||
"integrity": "sha512-4Md1NI5BzoVP+bhyJaY3K6yMesEFzNS1sE/cP+9nuvE7p/b0kx9XbpDHHFl8dHtufcbdHRUUQdRqLIPHN/s7yA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@noble/curves": "2.0.1",
|
||||
"@noble/hashes": "2.0.1",
|
||||
"@scure/base": "2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/@scure/bip39": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-2.0.1.tgz",
|
||||
"integrity": "sha512-PsxdFj/d2AcJcZDX1FXN3dDgitDDTmwf78rKZq1a6c1P1Nan1X/Sxc7667zU3U+AN60g7SxxP0YCVw2H/hBycg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@noble/hashes": "2.0.1",
|
||||
"@scure/base": "2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/nostr-tools": {
|
||||
"version": "2.23.3",
|
||||
"resolved": "https://registry.npmjs.org/nostr-tools/-/nostr-tools-2.23.3.tgz",
|
||||
"integrity": "sha512-AALyt9k8xPdF4UV2mlLJ2mgCn4kpTB0DZ8t2r6wjdUh6anfx2cTVBsHUlo9U0EY/cKC5wcNyiMAmRJV5OVEalA==",
|
||||
"license": "Unlicense",
|
||||
"dependencies": {
|
||||
"@noble/ciphers": "2.1.1",
|
||||
"@noble/curves": "2.0.1",
|
||||
"@noble/hashes": "2.0.1",
|
||||
"@scure/base": "2.0.0",
|
||||
"@scure/bip32": "2.0.1",
|
||||
"@scure/bip39": "2.0.1",
|
||||
"nostr-wasm": "0.1.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": ">=5.0.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"typescript": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/nostr-wasm": {
|
||||
"version": "0.1.0",
|
||||
"resolved": "https://registry.npmjs.org/nostr-wasm/-/nostr-wasm-0.1.0.tgz",
|
||||
"integrity": "sha512-78BTryCLcLYv96ONU8Ws3Q1JzjlAt+43pWQhIl86xZmWeegYCNLPml7yQ+gG3vR6V5h4XGj+TxO+SS5dsThQIA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-nostr",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Nostr channel plugin for NIP-04 encrypted DMs.",
|
||||
"dependencies": {
|
||||
"@openclaw/nostr": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "nostr",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/nostr",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/nostr",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
133
plugins/openclaw-qqbot/package-lock.json
generated
133
plugins/openclaw-qqbot/package-lock.json
generated
@ -1,133 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-openclaw-qqbot",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-openclaw-qqbot",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/qqbot": "2026.5.1-beta.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@eshaz/web-worker": {
|
||||
"version": "1.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@eshaz/web-worker/-/web-worker-1.2.2.tgz",
|
||||
"integrity": "sha512-WxXiHFmD9u/owrzempiDlBB1ZYqiLnm9s6aPc8AlFQalq2tKmqdmMr9GXOupDgzXtqnBipj8Un0gkIm7Sjf8mw==",
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/@openclaw/qqbot": {
|
||||
"version": "2026.5.1-beta.1",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/qqbot/-/qqbot-2026.5.1-beta.1.tgz",
|
||||
"integrity": "sha512-TNG40RLtcvUIqd397YBIUICugtgZ+8jHVyPHt2homG6d5Ola/uVrurkZFcs9mq4JcB0VFhKyXXqXzLGy+GG/Zw==",
|
||||
"dependencies": {
|
||||
"@tencent-connect/qqbot-connector": "^1.1.0",
|
||||
"mpg123-decoder": "^1.0.3",
|
||||
"silk-wasm": "^3.7.1",
|
||||
"ws": "^8.20.0",
|
||||
"zod": "^4.4.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"openclaw": ">=2026.4.27"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"openclaw": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/@tencent-connect/qqbot-connector": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@tencent-connect/qqbot-connector/-/qqbot-connector-1.1.0.tgz",
|
||||
"integrity": "sha512-3nQ2mdyzPRKpBHjd3QiKZDwNzw1F7fBN+rSq8Xms2gg+JWZR4SY2Zdf+doqTyXdyVjG4Y0QM7IA4U42zT9xxzw==",
|
||||
"license": "UNLICENSED",
|
||||
"dependencies": {
|
||||
"qrcode-terminal": "^0.12"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@wasm-audio-decoders/common": {
|
||||
"version": "9.0.7",
|
||||
"resolved": "https://registry.npmjs.org/@wasm-audio-decoders/common/-/common-9.0.7.tgz",
|
||||
"integrity": "sha512-WRaUuWSKV7pkttBygml/a6dIEpatq2nnZGFIoPTc5yPLkxL6Wk4YaslPM98OPQvWacvNZ+Py9xROGDtrFBDzag==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@eshaz/web-worker": "1.2.2",
|
||||
"simple-yenc": "^1.0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/mpg123-decoder": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/mpg123-decoder/-/mpg123-decoder-1.0.3.tgz",
|
||||
"integrity": "sha512-+fjxnWigodWJm3+4pndi+KUg9TBojgn31DPk85zEsim7C6s0X5Ztc/hQYdytXkwuGXH+aB0/aEkG40Emukv6oQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@wasm-audio-decoders/common": "9.0.7"
|
||||
},
|
||||
"funding": {
|
||||
"type": "individual",
|
||||
"url": "https://github.com/sponsors/eshaz"
|
||||
}
|
||||
},
|
||||
"node_modules/qrcode-terminal": {
|
||||
"version": "0.12.0",
|
||||
"resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz",
|
||||
"integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==",
|
||||
"bin": {
|
||||
"qrcode-terminal": "bin/qrcode-terminal.js"
|
||||
}
|
||||
},
|
||||
"node_modules/silk-wasm": {
|
||||
"version": "3.7.1",
|
||||
"resolved": "https://registry.npmjs.org/silk-wasm/-/silk-wasm-3.7.1.tgz",
|
||||
"integrity": "sha512-mXPwLRtZxrYV3TZx41jMAeKc80wvmyrcXIcs8HctFxK15Ahz2OJQENYhNgEPeCEOdI6Mbx1NxQsqxzwc3DKerw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=16.11.0"
|
||||
}
|
||||
},
|
||||
"node_modules/simple-yenc": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/simple-yenc/-/simple-yenc-1.0.4.tgz",
|
||||
"integrity": "sha512-5gvxpSd79e9a3V4QDYUqnqxeD4HGlhCakVpb6gMnDD7lexJggSBJRBO5h52y/iJrdXRilX9UCuDaIJhSWm5OWw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "individual",
|
||||
"url": "https://github.com/sponsors/eshaz"
|
||||
}
|
||||
},
|
||||
"node_modules/ws": {
|
||||
"version": "8.20.0",
|
||||
"resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz",
|
||||
"integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"bufferutil": "^4.0.1",
|
||||
"utf-8-validate": ">=5.0.2"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"bufferutil": {
|
||||
"optional": true
|
||||
},
|
||||
"utf-8-validate": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-openclaw-qqbot",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw QQ Bot channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/qqbot": "2026.5.1-beta.1"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "openclaw-qqbot",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/qqbot",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/qqbot",
|
||||
"sourceRef": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
}
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
Subproject commit 86c2458a0dfe82d639c208c5220396feb9d53c45
|
||||
8
plugins/openclaw-weixin/package-lock.json
generated
8
plugins/openclaw-weixin/package-lock.json
generated
@ -8,13 +8,13 @@
|
||||
"name": "@crabpot/fixture-openclaw-weixin",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@tencent-weixin/openclaw-weixin": "2.3.1"
|
||||
"@tencent-weixin/openclaw-weixin": "2.1.10"
|
||||
}
|
||||
},
|
||||
"node_modules/@tencent-weixin/openclaw-weixin": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@tencent-weixin/openclaw-weixin/-/openclaw-weixin-2.3.1.tgz",
|
||||
"integrity": "sha512-plOrZq5Oj4YkmP2/yclVnlPuPruUfXxk7BmHfnJFcFPmaXpt9X3gMF1WyQ6ebnEqtCvIpAIsntufgKShZemxCA==",
|
||||
"version": "2.1.10",
|
||||
"resolved": "https://registry.npmjs.org/@tencent-weixin/openclaw-weixin/-/openclaw-weixin-2.1.10.tgz",
|
||||
"integrity": "sha512-cEG6Iw5g2qqlA+8/TcmV+E8aFUEX0ruxF0+a5LgVy5wv56/qP07KoapfRa7YTRPzhRW5UDaz6zsZQArt/4ZNnA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"qrcode-terminal": "0.12.0",
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Weixin.",
|
||||
"dependencies": {
|
||||
"@tencent-weixin/openclaw-weixin": "2.3.1"
|
||||
"@tencent-weixin/openclaw-weixin": "2.1.10"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "openclaw-weixin",
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit 0f62b10688428f288eaff9b99e0ee7a9334137e7
|
||||
Subproject commit f8987269d3f2121f52ace4f60c80629266c0dfd7
|
||||
33
plugins/synology-chat/package-lock.json
generated
33
plugins/synology-chat/package-lock.json
generated
@ -1,33 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-synology-chat",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-synology-chat",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/synology-chat": "2026.2.22"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/synology-chat": {
|
||||
"version": "2026.2.22",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/synology-chat/-/synology-chat-2026.2.22.tgz",
|
||||
"integrity": "sha512-MtNiSs5wIDoQ1k/5PH6qRBYkydZTzjjhfp/4RpIiI0q1cBLl8l8qUASvXSDwm8iUxsCgLDizirxgYh3CyHBOqw==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-synology-chat",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for Synology Chat channel plugin for OpenClaw.",
|
||||
"dependencies": {
|
||||
"@openclaw/synology-chat": "2026.2.22"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "synology-chat",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/synology-chat",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/synology-chat",
|
||||
"sourceRef": "b19a6ee62db342d400a233903adcaf17f67246c5"
|
||||
}
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
Subproject commit dee567716ca56d49464bf6354393f3656d92a2b3
|
||||
34
plugins/tlon/package-lock.json
generated
34
plugins/tlon/package-lock.json
generated
@ -1,34 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-tlon",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-tlon",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/tlon": "2026.2.21"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/tlon": {
|
||||
"version": "2026.2.21",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/tlon/-/tlon-2026.2.21.tgz",
|
||||
"integrity": "sha512-RTm9SFRwabR36jdVm7YZpZcpqf3m+Yu2AsGRsmWLK2qVmz6RLWrv1fWRapirL2LlUYJTEPJkYwanhjrQqssHrg==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"@urbit/aura": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@urbit/aura": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@urbit/aura/-/aura-3.0.0.tgz",
|
||||
"integrity": "sha512-N8/FHc/lmlMDCumMuTXyRHCxlov5KZY6unmJ9QR2GOw+OpROZMBsXYGwE+ZMtvN21ql9+Xb8KhGNBj08IrG3Wg==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=16",
|
||||
"npm": ">=8"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-tlon",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Tlon/Urbit channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/tlon": "2026.2.21"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "tlon",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/tlon",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/tlon",
|
||||
"sourceRef": "35a57bc940833a6c1f594b2308e349e5ee0148db"
|
||||
}
|
||||
}
|
||||
326
plugins/twitch/package-lock.json
generated
326
plugins/twitch/package-lock.json
generated
@ -1,326 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-twitch",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-twitch",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/twitch": "2026.2.21"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/cache-decorators": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/cache-decorators/-/cache-decorators-4.0.1.tgz",
|
||||
"integrity": "sha512-HNYLBLWs/t28GFZZeqdIBqq8f37mqDIFO6xNPof94VjpKvuP6ROqCZGafx88dk5zZUlBfViV9jD8iNNlXfc4CA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/shared-utils": "^3.6.3",
|
||||
"tslib": "^2.6.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/connection": {
|
||||
"version": "10.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/connection/-/connection-10.0.1.tgz",
|
||||
"integrity": "sha512-CRP/azUPxwWpR4yT8wOQoM9XFliTVWVAJ8h1SlFnVRAgMlPNyg88/vbDEqZ+udtSB5m8uS10XafZxMUcegMBlQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/isomorphic-ws": "^7.0.0",
|
||||
"@d-fischer/logger": "^4.2.1",
|
||||
"@d-fischer/shared-utils": "^3.5.0",
|
||||
"@d-fischer/typed-event-emitter": "^3.3.0",
|
||||
"@types/node": "^20.19.37",
|
||||
"@types/ws": "^8.5.4",
|
||||
"tslib": "^2.4.1",
|
||||
"ws": "^8.11.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/deprecate": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/deprecate/-/deprecate-2.0.2.tgz",
|
||||
"integrity": "sha512-wlw3HwEanJFJKctwLzhfOM6LKwR70FPfGZGoKOhWBKyOPXk+3a9Cc6S9zhm6tka7xKtpmfxVIReGUwPnMbIaZg==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@d-fischer/detect-node": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/detect-node/-/detect-node-3.0.1.tgz",
|
||||
"integrity": "sha512-0Rf3XwTzuTh8+oPZW9SfxTIiL+26RRJ0BRPwj5oVjZFyFKmsj9RGfN2zuTRjOuA3FCK/jYm06HOhwNK+8Pfv8w==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@d-fischer/escape-string-regexp": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
|
||||
"integrity": "sha512-7eoxnxcto5eVPW5h1T+ePnVFukmI9f/ZR9nlBLh1t3kyzJDUNor2C+YW9H/Terw3YnbZSDgDYrpCJCHtOtAQHw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/isomorphic-ws": {
|
||||
"version": "7.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/isomorphic-ws/-/isomorphic-ws-7.0.2.tgz",
|
||||
"integrity": "sha512-xK+qIJUF0ne3dsjq5Y3BviQ4M+gx9dzkN+dPP7abBMje4YRfow+X9jBgeEoTe5e+Q6+8hI9R0b37Okkk8Vf0hQ==",
|
||||
"license": "MIT",
|
||||
"peerDependencies": {
|
||||
"ws": "^8.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/logger": {
|
||||
"version": "4.2.4",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/logger/-/logger-4.2.4.tgz",
|
||||
"integrity": "sha512-TFMZ/SVW8xyQtyJw9Rcuci4betSKy0qbQn2B5+1+72vVXeO8Qb1pYvuwF5qr0vDGundmSWq7W8r19nVPnXXSvA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/detect-node": "^3.0.1",
|
||||
"@d-fischer/shared-utils": "^3.6.1",
|
||||
"tslib": "^2.5.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/rate-limiter": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/rate-limiter/-/rate-limiter-1.1.0.tgz",
|
||||
"integrity": "sha512-O5HgACwApyCZhp4JTEBEtbv/W3eAwEkrARFvgWnEsDmXgCMWjIHwohWoHre5BW6IYXFSHBGsuZB/EvNL3942kQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/logger": "^4.2.3",
|
||||
"@d-fischer/shared-utils": "^3.6.3",
|
||||
"tslib": "^2.6.2"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/shared-utils": {
|
||||
"version": "3.6.4",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/shared-utils/-/shared-utils-3.6.4.tgz",
|
||||
"integrity": "sha512-BPkVLHfn2Lbyo/ENDBwtEB8JVQ+9OzkjJhUunLaxkw4k59YFlQxUUwlDBejVSFcpQT0t+D3CQlX+ySZnQj0wxw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"tslib": "^2.4.1"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@d-fischer/typed-event-emitter": {
|
||||
"version": "3.3.3",
|
||||
"resolved": "https://registry.npmjs.org/@d-fischer/typed-event-emitter/-/typed-event-emitter-3.3.3.tgz",
|
||||
"integrity": "sha512-OvSEOa8icfdWDqcRtjSEZtgJTFOFNgTjje7zaL0+nAtu2/kZtRCSK5wUMrI/aXtCH8o0Qz2vA8UqkhWUTARFQQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"tslib": "^2.4.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/twitch": {
|
||||
"version": "2026.2.21",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/twitch/-/twitch-2026.2.21.tgz",
|
||||
"integrity": "sha512-uCtkUVUqj08LMwfBF2E6c0S6Pyu/kvLy/kWelsIqrpMJwzUgFrcsAwVb8YuRdmrQxFzQqZ5QQ8KEbYk7R9orPg==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"@twurple/api": "^8.0.3",
|
||||
"@twurple/auth": "^8.0.3",
|
||||
"@twurple/chat": "^8.0.3",
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/@twurple/api": {
|
||||
"version": "8.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@twurple/api/-/api-8.1.3.tgz",
|
||||
"integrity": "sha512-DTa/VX+h7kciDz3ZBQmrpVy1nPIepRMv4BtldaXKfDERlXRQBt4V2d6KfNn/hdUkRkxJ2Xi8x4PfBFE79VSrBw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/cache-decorators": "^4.0.0",
|
||||
"@d-fischer/detect-node": "^3.0.1",
|
||||
"@d-fischer/logger": "^4.2.1",
|
||||
"@d-fischer/rate-limiter": "^1.1.0",
|
||||
"@d-fischer/shared-utils": "^3.6.1",
|
||||
"@d-fischer/typed-event-emitter": "^3.3.3",
|
||||
"@twurple/api-call": "8.1.3",
|
||||
"@twurple/common": "8.1.3",
|
||||
"retry": "^0.13.1",
|
||||
"tslib": "^2.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@twurple/auth": "8.1.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@twurple/api-call": {
|
||||
"version": "8.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@twurple/api-call/-/api-call-8.1.3.tgz",
|
||||
"integrity": "sha512-eKIoIRHyPsyJwCOpofE+/J+C5O+bPnxtq3bPUzMsS4EzZOF268WocbkaKLW1Fh3tepyxj3TvTNxEvKA6jbJr0A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/shared-utils": "^3.6.1",
|
||||
"@twurple/common": "8.1.3",
|
||||
"tslib": "^2.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@twurple/auth": {
|
||||
"version": "8.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@twurple/auth/-/auth-8.1.3.tgz",
|
||||
"integrity": "sha512-UklOtXzQUnZskFsvt3h3kmkjXsILqNXe4NCMR1SYPicsYVnVMElS1uMiVI/H5mzJhVR5MFx5wQQyI15b5YtBxw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/logger": "^4.2.1",
|
||||
"@d-fischer/shared-utils": "^3.6.1",
|
||||
"@d-fischer/typed-event-emitter": "^3.3.3",
|
||||
"@twurple/api-call": "8.1.3",
|
||||
"@twurple/common": "8.1.3",
|
||||
"tslib": "^2.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@twurple/chat": {
|
||||
"version": "8.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@twurple/chat/-/chat-8.1.3.tgz",
|
||||
"integrity": "sha512-BTamweCTlv8Bdkx1um0dSn0sDXBm3CX4js0GbatWPsX6mrMWljny2pQgIj+PSkTtHfsR4fmGEIayAticEydxnQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/cache-decorators": "^4.0.0",
|
||||
"@d-fischer/deprecate": "^2.0.2",
|
||||
"@d-fischer/logger": "^4.2.1",
|
||||
"@d-fischer/rate-limiter": "^1.1.0",
|
||||
"@d-fischer/shared-utils": "^3.6.1",
|
||||
"@d-fischer/typed-event-emitter": "^3.3.3",
|
||||
"@twurple/common": "8.1.3",
|
||||
"ircv3": "^0.33.0",
|
||||
"tslib": "^2.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@twurple/auth": "8.1.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@twurple/common": {
|
||||
"version": "8.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@twurple/common/-/common-8.1.3.tgz",
|
||||
"integrity": "sha512-B2BT42fJAEYqSPGjTd6qyZoUv6kgFzIvUJuTIrOUcBiJxcvZh8tD+WLRd5xfMKhtLbUFgesYlHxdPhmdar8/zw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/shared-utils": "^3.6.1",
|
||||
"klona": "^2.0.4",
|
||||
"tslib": "^2.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "20.19.39",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.39.tgz",
|
||||
"integrity": "sha512-orrrD74MBUyK8jOAD/r0+lfa1I2MO6I+vAkmAWzMYbCcgrN4lCrmK52gRFQq/JRxfYPfonkr4b0jcY7Olqdqbw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"undici-types": "~6.21.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/ws": {
|
||||
"version": "8.18.1",
|
||||
"resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz",
|
||||
"integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/ircv3": {
|
||||
"version": "0.33.1",
|
||||
"resolved": "https://registry.npmjs.org/ircv3/-/ircv3-0.33.1.tgz",
|
||||
"integrity": "sha512-FPUj/q6zsLgIX6QDdLMjPRBObw0xK+k6eiI62dcTRwdl5aezYV0nuMhpmafyHOD6ZDqfw8DW4ayrvDfmYO65JQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@d-fischer/connection": "^10.0.1",
|
||||
"@d-fischer/escape-string-regexp": "^5.0.0",
|
||||
"@d-fischer/logger": "^4.2.1",
|
||||
"@d-fischer/shared-utils": "^3.5.0",
|
||||
"@d-fischer/typed-event-emitter": "^3.3.0",
|
||||
"klona": "^2.0.5",
|
||||
"tslib": "^2.4.1"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/d-fischer"
|
||||
}
|
||||
},
|
||||
"node_modules/klona": {
|
||||
"version": "2.0.6",
|
||||
"resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz",
|
||||
"integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/retry": {
|
||||
"version": "0.13.1",
|
||||
"resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
|
||||
"integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 4"
|
||||
}
|
||||
},
|
||||
"node_modules/tslib": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
|
||||
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
|
||||
"license": "0BSD"
|
||||
},
|
||||
"node_modules/undici-types": {
|
||||
"version": "6.21.0",
|
||||
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
|
||||
"integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/ws": {
|
||||
"version": "8.20.0",
|
||||
"resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz",
|
||||
"integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"bufferutil": "^4.0.1",
|
||||
"utf-8-validate": ">=5.0.2"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"bufferutil": {
|
||||
"optional": true
|
||||
},
|
||||
"utf-8-validate": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-twitch",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Twitch channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/twitch": "2026.2.21"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "twitch",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/twitch",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/twitch",
|
||||
"sourceRef": "35a57bc940833a6c1f594b2308e349e5ee0148db"
|
||||
}
|
||||
}
|
||||
72
plugins/voice-call/package-lock.json
generated
72
plugins/voice-call/package-lock.json
generated
@ -1,72 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-voice-call",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-voice-call",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/voice-call": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/voice-call": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/voice-call/-/voice-call-2026.3.13.tgz",
|
||||
"integrity": "sha512-AgXSfIn4KnX3b851z9FQ3dMora02CxAL0EJOTmbj1Pxxe8XMHjISORfaR82VEmQ7MLjSUek63QDYL8k6754MdQ==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"@sinclair/typebox": "0.34.48",
|
||||
"commander": "^14.0.3",
|
||||
"ws": "^8.19.0",
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.48",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz",
|
||||
"integrity": "sha512-kKJTNuK3AQOrgjjotVxMrCn1sUJwM76wMszfq1kdU4uYVJjvEWuFQ6HgvLt4Xz3fSmZlTOxJ/Ie13KnIcWQXFA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/commander": {
|
||||
"version": "14.0.3",
|
||||
"resolved": "https://registry.npmjs.org/commander/-/commander-14.0.3.tgz",
|
||||
"integrity": "sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=20"
|
||||
}
|
||||
},
|
||||
"node_modules/ws": {
|
||||
"version": "8.20.0",
|
||||
"resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz",
|
||||
"integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"bufferutil": "^4.0.1",
|
||||
"utf-8-validate": ">=5.0.2"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"bufferutil": {
|
||||
"optional": true
|
||||
},
|
||||
"utf-8-validate": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-voice-call",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw voice-call plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/voice-call": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "voice-call",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/voice-call",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/voice-call",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
@ -1 +1 @@
|
||||
Subproject commit dd3cab6e11f16eaa3fcee0ce67d3a809b155341a
|
||||
Subproject commit 6e4c765cd04eb449c806748c3130793fe0b05e5e
|
||||
@ -1 +1 @@
|
||||
Subproject commit 503a1d5403bc3a57763b9ef17c60a9d5e31b53d9
|
||||
Subproject commit b7849ac055c8fa699d01b48e83cf24028907307d
|
||||
2068
plugins/whatsapp/package-lock.json
generated
2068
plugins/whatsapp/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-whatsapp",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw WhatsApp channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/whatsapp": "2026.5.1-beta.1"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "whatsapp",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/whatsapp",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/whatsapp",
|
||||
"sourceRef": "355680f1f21af3782c8ffbb5f3cec281dc584af6"
|
||||
}
|
||||
}
|
||||
1760
plugins/yuanbao/package-lock.json
generated
1760
plugins/yuanbao/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -4,17 +4,7 @@
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for Tencent Yuanbao Bot.",
|
||||
"dependencies": {
|
||||
"openclaw-plugin-yuanbao": "3.0.1"
|
||||
},
|
||||
"overrides": {
|
||||
"@anthropic-ai/sdk": "0.91.1",
|
||||
"conf": "10.2.0",
|
||||
"cos-nodejs-sdk-v5": "2.16.0-beta.8",
|
||||
"fast-xml-parser": "5.7.2",
|
||||
"form-data": "4.0.5",
|
||||
"qs": "6.15.1",
|
||||
"tough-cookie": "6.0.1",
|
||||
"uuid": "14.0.0"
|
||||
"openclaw-plugin-yuanbao": "2.11.0"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "yuanbao",
|
||||
|
||||
43
plugins/zalo/package-lock.json
generated
43
plugins/zalo/package-lock.json
generated
@ -1,43 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-zalo",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-zalo",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/zalo": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/zalo": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/zalo/-/zalo-2026.3.13.tgz",
|
||||
"integrity": "sha512-v/NQezfoCpFxIlOpLXJHdT1zkldql1D/E0lccqCfbu2OeldePMNpgOgA7B5TDHsC1FlNMR+M2FR5pU212k+wLw==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"undici": "7.24.1",
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/undici": {
|
||||
"version": "7.24.1",
|
||||
"resolved": "https://registry.npmjs.org/undici/-/undici-7.24.1.tgz",
|
||||
"integrity": "sha512-5xoBibbmnjlcR3jdqtY2Lnx7WbrD/tHlT01TmvqZUFVc9Q1w4+j5hbnapTqbcXITMH1ovjq/W7BkqBilHiVAaA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=20.18.1"
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-zalo",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Zalo channel plugin.",
|
||||
"dependencies": {
|
||||
"@openclaw/zalo": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "zalo",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/zalo",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/zalo",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
401
plugins/zalouser/package-lock.json
generated
401
plugins/zalouser/package-lock.json
generated
@ -1,401 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-zalouser",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@crabpot/fixture-zalouser",
|
||||
"version": "0.0.0",
|
||||
"dependencies": {
|
||||
"@openclaw/zalouser": "2026.3.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@openclaw/zalouser": {
|
||||
"version": "2026.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@openclaw/zalouser/-/zalouser-2026.3.13.tgz",
|
||||
"integrity": "sha512-bhgN94P/LYwD8Xdj7bapG9AfhNz5Y4GPKi9X5prVbwaiP71BXezbs6SRxnLlu9B9KWjUDnyAwoOCFD2cnlTE/w==",
|
||||
"deprecated": "Deprecated: obsolete OpenClaw plugin package version. Use current OpenClaw bundled/plugin distribution; newer npm releases may return later.",
|
||||
"dependencies": {
|
||||
"@sinclair/typebox": "0.34.48",
|
||||
"zca-js": "2.1.1",
|
||||
"zod": "^4.3.6"
|
||||
}
|
||||
},
|
||||
"node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.48",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz",
|
||||
"integrity": "sha512-kKJTNuK3AQOrgjjotVxMrCn1sUJwM76wMszfq1kdU4uYVJjvEWuFQ6HgvLt4Xz3fSmZlTOxJ/Ie13KnIcWQXFA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/asynckit": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/bignumber.js": {
|
||||
"version": "9.3.1",
|
||||
"resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz",
|
||||
"integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/call-bind-apply-helpers": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
|
||||
"integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0",
|
||||
"function-bind": "^1.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/combined-stream": {
|
||||
"version": "1.0.8",
|
||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"delayed-stream": "~1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/crypto-js": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz",
|
||||
"integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/delayed-stream": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
||||
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/dunder-proto": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
|
||||
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"call-bind-apply-helpers": "^1.0.1",
|
||||
"es-errors": "^1.3.0",
|
||||
"gopd": "^1.2.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-define-property": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
|
||||
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-errors": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
|
||||
"integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-object-atoms": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
|
||||
"integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/es-set-tostringtag": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
|
||||
"integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"es-errors": "^1.3.0",
|
||||
"get-intrinsic": "^1.2.6",
|
||||
"has-tostringtag": "^1.0.2",
|
||||
"hasown": "^2.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/form-data": {
|
||||
"version": "4.0.5",
|
||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz",
|
||||
"integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"asynckit": "^0.4.0",
|
||||
"combined-stream": "^1.0.8",
|
||||
"es-set-tostringtag": "^2.1.0",
|
||||
"hasown": "^2.0.2",
|
||||
"mime-types": "^2.1.12"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/function-bind": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
|
||||
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/get-intrinsic": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
|
||||
"integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"call-bind-apply-helpers": "^1.0.2",
|
||||
"es-define-property": "^1.0.1",
|
||||
"es-errors": "^1.3.0",
|
||||
"es-object-atoms": "^1.1.1",
|
||||
"function-bind": "^1.1.2",
|
||||
"get-proto": "^1.0.1",
|
||||
"gopd": "^1.2.0",
|
||||
"has-symbols": "^1.1.0",
|
||||
"hasown": "^2.0.2",
|
||||
"math-intrinsics": "^1.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/get-proto": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
|
||||
"integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"dunder-proto": "^1.0.1",
|
||||
"es-object-atoms": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/gopd": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
|
||||
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/has-symbols": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
|
||||
"integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/has-tostringtag": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
|
||||
"integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"has-symbols": "^1.0.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/hasown": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz",
|
||||
"integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/json-bigint": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
|
||||
"integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"bignumber.js": "^9.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/math-intrinsics": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
|
||||
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/mime-db": {
|
||||
"version": "1.52.0",
|
||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
||||
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 0.6"
|
||||
}
|
||||
},
|
||||
"node_modules/mime-types": {
|
||||
"version": "2.1.35",
|
||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
||||
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"mime-db": "1.52.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.6"
|
||||
}
|
||||
},
|
||||
"node_modules/pako": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz",
|
||||
"integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==",
|
||||
"license": "(MIT AND Zlib)"
|
||||
},
|
||||
"node_modules/semver": {
|
||||
"version": "7.7.4",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
|
||||
"integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
|
||||
"license": "ISC",
|
||||
"bin": {
|
||||
"semver": "bin/semver.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/spark-md5": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz",
|
||||
"integrity": "sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==",
|
||||
"license": "(WTFPL OR MIT)"
|
||||
},
|
||||
"node_modules/tldts": {
|
||||
"version": "6.1.86",
|
||||
"resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz",
|
||||
"integrity": "sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"tldts-core": "^6.1.86"
|
||||
},
|
||||
"bin": {
|
||||
"tldts": "bin/cli.js"
|
||||
}
|
||||
},
|
||||
"node_modules/tldts-core": {
|
||||
"version": "6.1.86",
|
||||
"resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz",
|
||||
"integrity": "sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/tough-cookie": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.2.tgz",
|
||||
"integrity": "sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==",
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
"tldts": "^6.1.32"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16"
|
||||
}
|
||||
},
|
||||
"node_modules/ws": {
|
||||
"version": "8.20.0",
|
||||
"resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz",
|
||||
"integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"bufferutil": "^4.0.1",
|
||||
"utf-8-validate": ">=5.0.2"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"bufferutil": {
|
||||
"optional": true
|
||||
},
|
||||
"utf-8-validate": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/zca-js": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/zca-js/-/zca-js-2.1.1.tgz",
|
||||
"integrity": "sha512-6zCmaIIWg/1eYlvCvO4rVsFt6SQ8MRodro3dCzMkk+LNgB3MyaEMBywBJfsw44WhODmOh8iMlPv4xDTNTMWDWA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"crypto-js": "^4.2.0",
|
||||
"form-data": "^4.0.4",
|
||||
"json-bigint": "^1.0.0",
|
||||
"pako": "^2.1.0",
|
||||
"semver": "^7.6.3",
|
||||
"spark-md5": "^3.0.2",
|
||||
"tough-cookie": "^5.0.0",
|
||||
"ws": "^8.18.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/zod": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz",
|
||||
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/colinhacks"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "@crabpot/fixture-zalouser",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"description": "Crabpot npm fixture shim for OpenClaw Zalo Personal Account plugin via native zca-js integration.",
|
||||
"dependencies": {
|
||||
"@openclaw/zalouser": "2026.3.13"
|
||||
},
|
||||
"crabpot": {
|
||||
"fixture": "zalouser",
|
||||
"source": "npm",
|
||||
"package": "@openclaw/zalouser",
|
||||
"sourceRepo": "https://github.com/openclaw/openclaw.git",
|
||||
"sourcePath": "extensions/zalouser",
|
||||
"sourceRef": "2ce6b77205187c76ce7cde6cb0913de14d4452fa"
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -3,11 +3,10 @@
|
||||
"status": "pass",
|
||||
"strict": false,
|
||||
"policy": {
|
||||
"allowedBlocked": 6,
|
||||
"allowedBlocked": 2,
|
||||
"expectedWarnings": 1,
|
||||
"fixtureSets": [
|
||||
"build",
|
||||
"openclaw-beta",
|
||||
"sdk-alias",
|
||||
"side-effect-review",
|
||||
"smoke"
|
||||
@ -20,216 +19,41 @@
|
||||
}
|
||||
},
|
||||
"summary": {
|
||||
"checkCount": 25,
|
||||
"checkCount": 9,
|
||||
"failCount": 0,
|
||||
"warnCount": 19,
|
||||
"warnCount": 3,
|
||||
"passCount": 6
|
||||
},
|
||||
"checks": [
|
||||
{
|
||||
"id": "execution-results.audit-findings",
|
||||
"id": "compatibility-report.live-p0-issues",
|
||||
"action": "warn",
|
||||
"message": "12 package audit findings",
|
||||
"message": "2 live P0 issues tracked",
|
||||
"evidence": [
|
||||
"clawrouter:12"
|
||||
"codex-app-server:sdk-export-missing:untracked",
|
||||
"hyperspell:unknown-hook-name:none"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerService.29",
|
||||
"id": "execution-results.blocked.wecom.registerChannel.0",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured registration requires includeLifecycle=true",
|
||||
"message": "allowed-blocked: captured registration requires includeChannelRuntime=true",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerService",
|
||||
"captured registration requires includeLifecycle=true",
|
||||
"service-lifecycle-harness"
|
||||
".crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json",
|
||||
"registerChannel",
|
||||
"captured registration requires includeChannelRuntime=true",
|
||||
"channel-runtime-harness"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.10",
|
||||
"id": "execution-results.blocked.wecom.registerTool.2",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"message": "expected-warning: captured registration has no object descriptor",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
".crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.11",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.12",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.13",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.14",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.15",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.16",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.17",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.18",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.19",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.20",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.21",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.5",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.6",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.7",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.8",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.9",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
"captured registration has no object descriptor",
|
||||
"tool-factory-descriptor"
|
||||
]
|
||||
},
|
||||
{
|
||||
@ -241,73 +65,63 @@
|
||||
{
|
||||
"id": "compatibility-report.deprecation-warnings",
|
||||
"action": "pass",
|
||||
"message": "42 deprecated compat seams tracked",
|
||||
"message": "21 deprecated compat seams tracked",
|
||||
"evidence": [
|
||||
"a2a-gateway:legacy-root-sdk-import",
|
||||
"agentchat:channel-env-vars",
|
||||
"apify:legacy-root-sdk-import",
|
||||
"brave-plugin:provider-auth-env-vars",
|
||||
"codex-app-server:legacy-root-sdk-import",
|
||||
"composio:legacy-root-sdk-import",
|
||||
"connectclaw:legacy-before-agent-start",
|
||||
"connectclaw:legacy-root-sdk-import",
|
||||
"dingtalk-connector:legacy-root-sdk-import",
|
||||
"discord:channel-env-vars",
|
||||
"feishu:channel-env-vars",
|
||||
"hasdata:provider-auth-env-vars",
|
||||
"honcho:legacy-before-agent-start",
|
||||
"honcho:legacy-root-sdk-import",
|
||||
"hyperspell:legacy-before-agent-start",
|
||||
"hyperspell:legacy-root-sdk-import",
|
||||
"inworld-tts:provider-auth-env-vars",
|
||||
"kitchen-sink:legacy-before-agent-start",
|
||||
"kitchen-sink:legacy-root-sdk-import",
|
||||
"llm-trace-phoenix:legacy-root-sdk-import",
|
||||
"lossless-claw:legacy-root-sdk-import",
|
||||
"matrix:channel-env-vars",
|
||||
"mattermost:channel-env-vars",
|
||||
"memory-tencentdb:legacy-root-sdk-import",
|
||||
"memos-cloud:legacy-before-agent-start",
|
||||
"memu-engine:legacy-root-sdk-import",
|
||||
"mocrane-wecom:legacy-root-sdk-import",
|
||||
"msteams:channel-env-vars",
|
||||
"nemoclaw:legacy-before-agent-start",
|
||||
"nextcloud-talk:channel-env-vars",
|
||||
"nostr:channel-env-vars",
|
||||
"openclaw-qqbot:channel-env-vars",
|
||||
"openclaw-telemetry:legacy-before-agent-start",
|
||||
"openclaw-telemetry:legacy-root-sdk-import",
|
||||
"opik-openclaw:legacy-root-sdk-import",
|
||||
"qqbot:legacy-root-sdk-import",
|
||||
"synology-chat:channel-env-vars",
|
||||
"telnyx-sms:channel-env-vars",
|
||||
"twitch:channel-env-vars",
|
||||
"voice-call:channel-env-vars",
|
||||
"yuanbao:channel-env-vars",
|
||||
"zalo:channel-env-vars",
|
||||
"zalouser:channel-env-vars"
|
||||
"yuanbao:legacy-root-sdk-import"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "compatibility-report.inspector-gaps",
|
||||
"action": "pass",
|
||||
"message": "163 inspector proof gaps tracked",
|
||||
"message": "97 inspector proof gaps tracked",
|
||||
"evidence": [
|
||||
"a2a-gateway:registration-capture-gap",
|
||||
"clawmetry:registration-capture-gap",
|
||||
"codex-app-server:registration-capture-gap",
|
||||
"connectclaw:registration-capture-gap",
|
||||
"honcho:conversation-access-hook",
|
||||
"kitchen-sink:before-tool-call-probe",
|
||||
"kitchen-sink:conversation-access-hook",
|
||||
"honcho:registration-capture-gap",
|
||||
"hyperspell:conversation-access-hook",
|
||||
"hyperspell:registration-capture-gap",
|
||||
"lightclawbot:registration-capture-gap",
|
||||
"llm-trace-phoenix:conversation-access-hook",
|
||||
"memory-lancedb:conversation-access-hook",
|
||||
"lossless-claw:registration-capture-gap",
|
||||
"mcp-adapter:registration-capture-gap",
|
||||
"memory-tencentdb:conversation-access-hook",
|
||||
"memos-cloud:conversation-access-hook",
|
||||
"nemoclaw:before-tool-call-probe",
|
||||
"openclaw-telemetry:before-tool-call-probe",
|
||||
"openclaw-telemetry:conversation-access-hook",
|
||||
"memos-cloud:registration-capture-gap",
|
||||
"mocrane-wecom:registration-capture-gap",
|
||||
"openclaw-weixin:registration-capture-gap",
|
||||
"opik-openclaw:before-tool-call-probe",
|
||||
"opik-openclaw:conversation-access-hook",
|
||||
"opik-openclaw:registration-capture-gap",
|
||||
"qqbot:registration-capture-gap",
|
||||
"secureclaw:registration-capture-gap",
|
||||
"wecom:before-tool-call-probe",
|
||||
"wecom:registration-capture-gap",
|
||||
"yuanbao:registration-capture-gap",
|
||||
"a2a-gateway:package-dependency-install-required",
|
||||
"a2a-gateway:package-typescript-source-entrypoint",
|
||||
"a2a-gateway:registration-capture-gap",
|
||||
"a2a-gateway:runtime-tool-capture",
|
||||
"agentchat:channel-contract-probe",
|
||||
"agentchat:package-build-artifact-entrypoint",
|
||||
@ -315,176 +129,110 @@
|
||||
"apify:package-dependency-install-required",
|
||||
"apify:package-typescript-source-entrypoint",
|
||||
"apify:runtime-tool-capture",
|
||||
"bluebubbles:channel-contract-probe",
|
||||
"clawmetry:package-build-artifact-entrypoint",
|
||||
"clawmetry:package-dependency-install-required",
|
||||
"clawmetry:package-typescript-source-entrypoint",
|
||||
"clawmetry:registration-capture-gap",
|
||||
"clawrouter:package-dependency-install-required",
|
||||
"clawrouter:registration-capture-gap",
|
||||
"clawrouter:runtime-tool-capture",
|
||||
"codex:package-dependency-install-required",
|
||||
"codex:registration-capture-gap",
|
||||
"codex-app-server:package-dependency-install-required",
|
||||
"codex-app-server:package-typescript-source-entrypoint",
|
||||
"codex-app-server:registration-capture-gap",
|
||||
"composio:package-dependency-install-required",
|
||||
"composio:package-typescript-source-entrypoint",
|
||||
"composio:runtime-tool-capture",
|
||||
"connectclaw:package-dependency-install-required",
|
||||
"connectclaw:package-typescript-source-entrypoint",
|
||||
"connectclaw:registration-capture-gap",
|
||||
"connectclaw:runtime-tool-capture",
|
||||
"ddingtalk:channel-contract-probe",
|
||||
"ddingtalk:package-dependency-install-required",
|
||||
"ddingtalk:package-typescript-source-entrypoint",
|
||||
"diagnostics-otel:package-dependency-install-required",
|
||||
"diagnostics-otel:registration-capture-gap",
|
||||
"diagnostics-prometheus:registration-capture-gap",
|
||||
"diffs:package-dependency-install-required",
|
||||
"diffs:registration-capture-gap",
|
||||
"dingtalk-connector:channel-contract-probe",
|
||||
"dingtalk-connector:package-build-artifact-entrypoint",
|
||||
"dingtalk-connector:package-dependency-install-required",
|
||||
"dingtalk-connector:registration-capture-gap",
|
||||
"discord:channel-contract-probe",
|
||||
"discord:package-dependency-install-required",
|
||||
"feishu:channel-contract-probe",
|
||||
"feishu:package-dependency-install-required",
|
||||
"google-meet:package-dependency-install-required",
|
||||
"google-meet:registration-capture-gap",
|
||||
"hasdata:package-dependency-install-required",
|
||||
"hasdata:package-typescript-source-entrypoint",
|
||||
"honcho:package-build-artifact-entrypoint",
|
||||
"honcho:package-dependency-install-required",
|
||||
"honcho:registration-capture-gap",
|
||||
"honcho:runtime-tool-capture",
|
||||
"hyperspell:package-dependency-install-required",
|
||||
"hyperspell:package-typescript-source-entrypoint",
|
||||
"hyperspell:registration-capture-gap",
|
||||
"hyperspell:runtime-tool-capture",
|
||||
"inworld-tts:package-dependency-install-required",
|
||||
"inworld-tts:package-typescript-source-entrypoint",
|
||||
"kitchen-sink:channel-contract-probe",
|
||||
"kitchen-sink:registration-capture-gap",
|
||||
"lightclawbot:channel-contract-probe",
|
||||
"lightclawbot:package-dependency-install-required",
|
||||
"lightclawbot:registration-capture-gap",
|
||||
"lightclawbot:runtime-tool-capture",
|
||||
"llm-trace-phoenix:package-typescript-source-entrypoint",
|
||||
"lobster:package-dependency-install-required",
|
||||
"lossless-claw:package-build-artifact-entrypoint",
|
||||
"lossless-claw:package-dependency-install-required",
|
||||
"lossless-claw:registration-capture-gap",
|
||||
"matrix:package-dependency-install-required",
|
||||
"matrix:package-typescript-source-entrypoint",
|
||||
"matrix:registration-capture-gap",
|
||||
"mattermost:channel-contract-probe",
|
||||
"mattermost:package-dependency-install-required",
|
||||
"mattermost:package-typescript-source-entrypoint",
|
||||
"mattermost:registration-capture-gap",
|
||||
"lossless-claw:runtime-tool-capture",
|
||||
"mcp-adapter:package-dependency-install-required",
|
||||
"mcp-adapter:package-typescript-source-entrypoint",
|
||||
"mcp-adapter:registration-capture-gap",
|
||||
"mcp-adapter:runtime-tool-capture",
|
||||
"memory-lancedb:package-dependency-install-required",
|
||||
"memory-lancedb:registration-capture-gap",
|
||||
"memory-tencentdb:package-dependency-install-required",
|
||||
"memory-tencentdb:package-typescript-source-entrypoint",
|
||||
"memory-tencentdb:registration-capture-gap",
|
||||
"memos-cloud:registration-capture-gap",
|
||||
"memory-tencentdb:runtime-tool-capture",
|
||||
"memu-engine:package-typescript-source-entrypoint",
|
||||
"memu-engine:runtime-tool-capture",
|
||||
"mocrane-wecom:channel-contract-probe",
|
||||
"mocrane-wecom:package-dependency-install-required",
|
||||
"mocrane-wecom:package-typescript-source-entrypoint",
|
||||
"mocrane-wecom:registration-capture-gap",
|
||||
"mocrane-wecom:runtime-tool-capture",
|
||||
"msteams:channel-contract-probe",
|
||||
"msteams:package-dependency-install-required",
|
||||
"nemoclaw:package-build-artifact-entrypoint",
|
||||
"nemoclaw:package-dependency-install-required",
|
||||
"nemoclaw:registration-capture-gap",
|
||||
"nextcloud-talk:channel-contract-probe",
|
||||
"nextcloud-talk:package-dependency-install-required",
|
||||
"nostr:channel-contract-probe",
|
||||
"nostr:package-dependency-install-required",
|
||||
"nostr:registration-capture-gap",
|
||||
"openclaw-qqbot:package-dependency-install-required",
|
||||
"openclaw-qqbot:registration-capture-gap",
|
||||
"openclaw-telemetry:package-typescript-source-entrypoint",
|
||||
"openclaw-telemetry:registration-capture-gap",
|
||||
"openclaw-weixin:channel-contract-probe",
|
||||
"openclaw-weixin:package-dependency-install-required",
|
||||
"openclaw-weixin:package-typescript-source-entrypoint",
|
||||
"openclaw-weixin:registration-capture-gap",
|
||||
"opik-openclaw:package-build-artifact-entrypoint",
|
||||
"opik-openclaw:package-dependency-install-required",
|
||||
"opik-openclaw:package-typescript-source-entrypoint",
|
||||
"opik-openclaw:registration-capture-gap",
|
||||
"qqbot:channel-contract-probe",
|
||||
"qqbot:package-dependency-install-required",
|
||||
"qqbot:registration-capture-gap",
|
||||
"qqbot:runtime-tool-capture",
|
||||
"secureclaw:package-build-artifact-entrypoint",
|
||||
"secureclaw:package-dependency-install-required",
|
||||
"secureclaw:registration-capture-gap",
|
||||
"synology-chat:channel-contract-probe",
|
||||
"synology-chat:package-dependency-install-required",
|
||||
"telnyx-sms:channel-contract-probe",
|
||||
"telnyx-sms:package-build-artifact-entrypoint",
|
||||
"telnyx-sms:registration-capture-gap",
|
||||
"tlon:channel-contract-probe",
|
||||
"tlon:package-dependency-install-required",
|
||||
"twitch:channel-contract-probe",
|
||||
"twitch:package-dependency-install-required",
|
||||
"voice-call:package-dependency-install-required",
|
||||
"voice-call:registration-capture-gap",
|
||||
"web-search-plus:package-dependency-install-required",
|
||||
"web-search-plus:package-typescript-source-entrypoint",
|
||||
"web-search-plus:runtime-tool-capture",
|
||||
"wecom:channel-contract-probe",
|
||||
"wecom:package-dependency-install-required",
|
||||
"wecom:registration-capture-gap",
|
||||
"wecom:runtime-tool-capture",
|
||||
"whatsapp:channel-contract-probe",
|
||||
"whatsapp:package-dependency-install-required",
|
||||
"yuanbao:channel-contract-probe",
|
||||
"yuanbao:package-dependency-install-required",
|
||||
"yuanbao:package-typescript-source-entrypoint",
|
||||
"yuanbao:registration-capture-gap",
|
||||
"yuanbao:runtime-tool-capture",
|
||||
"zalo:channel-contract-probe",
|
||||
"zalo:package-dependency-install-required",
|
||||
"zalouser:channel-contract-probe",
|
||||
"zalouser:package-dependency-install-required"
|
||||
"yuanbao:runtime-tool-capture"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "compatibility-report.live-p0-issues",
|
||||
"action": "pass",
|
||||
"message": "0 live P0 issues tracked",
|
||||
"evidence": []
|
||||
},
|
||||
{
|
||||
"id": "compatibility-report.p1-issues",
|
||||
"action": "pass",
|
||||
"message": "15 P1 issues tracked",
|
||||
"message": "26 P1 issues tracked",
|
||||
"evidence": [
|
||||
"clawmetry:sdk-export-missing",
|
||||
"a2a-gateway:registration-capture-gap",
|
||||
"clawmetry:registration-capture-gap",
|
||||
"codex-app-server:missing-compat-record",
|
||||
"codex-app-server:registration-capture-gap",
|
||||
"connectclaw:registration-capture-gap",
|
||||
"honcho:conversation-access-hook",
|
||||
"honcho:sdk-export-missing",
|
||||
"kitchen-sink:before-tool-call-probe",
|
||||
"kitchen-sink:conversation-access-hook",
|
||||
"honcho:registration-capture-gap",
|
||||
"hyperspell:conversation-access-hook",
|
||||
"hyperspell:registration-capture-gap",
|
||||
"lightclawbot:registration-capture-gap",
|
||||
"llm-trace-phoenix:conversation-access-hook",
|
||||
"memory-lancedb:conversation-access-hook",
|
||||
"lossless-claw:registration-capture-gap",
|
||||
"mcp-adapter:registration-capture-gap",
|
||||
"memory-tencentdb:conversation-access-hook",
|
||||
"memos-cloud:conversation-access-hook",
|
||||
"nemoclaw:before-tool-call-probe",
|
||||
"openclaw-telemetry:before-tool-call-probe",
|
||||
"openclaw-telemetry:conversation-access-hook",
|
||||
"memos-cloud:registration-capture-gap",
|
||||
"mocrane-wecom:registration-capture-gap",
|
||||
"openclaw-weixin:registration-capture-gap",
|
||||
"opik-openclaw:before-tool-call-probe",
|
||||
"opik-openclaw:conversation-access-hook",
|
||||
"wecom:before-tool-call-probe"
|
||||
"opik-openclaw:registration-capture-gap",
|
||||
"qqbot:registration-capture-gap",
|
||||
"secureclaw:registration-capture-gap",
|
||||
"wecom:before-tool-call-probe",
|
||||
"wecom:registration-capture-gap",
|
||||
"yuanbao:registration-capture-gap"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.audit-findings",
|
||||
"action": "pass",
|
||||
"message": "0 package audit findings",
|
||||
"evidence": []
|
||||
},
|
||||
{
|
||||
"id": "execution-results.failures",
|
||||
"action": "pass",
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,54 +1,95 @@
|
||||
{
|
||||
"generatedAt": "deterministic",
|
||||
"title": "Crabpot CI Summary",
|
||||
"mode": "dependabot",
|
||||
"openclawLabel": "openclaw@latest (2026.5.6, c97b9f79ec43)",
|
||||
"mode": "local",
|
||||
"openclawLabel": "",
|
||||
"status": "pass",
|
||||
"summary": {
|
||||
"breakages": 0,
|
||||
"warnings": 126,
|
||||
"suggestions": 155,
|
||||
"issues": 281,
|
||||
"p0Issues": 0,
|
||||
"p1Issues": 15,
|
||||
"liveIssues": 0,
|
||||
"liveP0Issues": 0,
|
||||
"compatGaps": 2,
|
||||
"deprecationWarnings": 42,
|
||||
"inspectorGaps": 163,
|
||||
"upstreamIssues": 74,
|
||||
"warnings": 51,
|
||||
"suggestions": 92,
|
||||
"issues": 143,
|
||||
"p0Issues": 2,
|
||||
"p1Issues": 26,
|
||||
"liveIssues": 2,
|
||||
"liveP0Issues": 2,
|
||||
"compatGaps": 1,
|
||||
"deprecationWarnings": 21,
|
||||
"inspectorGaps": 97,
|
||||
"upstreamIssues": 22,
|
||||
"refDiffFailures": 0,
|
||||
"refDiffWarnings": 0,
|
||||
"policyFailures": 0,
|
||||
"policyWarnings": 19,
|
||||
"policyWarnings": 3,
|
||||
"profileFailures": 0,
|
||||
"profileWarnings": 2,
|
||||
"executionPass": 12,
|
||||
"profileWarnings": 1,
|
||||
"executionPass": 6,
|
||||
"executionFail": 0,
|
||||
"executionBlocked": 18,
|
||||
"platformWindowsRisks": 14,
|
||||
"platformContainerRisks": 14,
|
||||
"loaderJitiCandidates": 25,
|
||||
"importLoopP50Ms": 2421,
|
||||
"importLoopP95Ms": 2471,
|
||||
"importLoopOpenClawLifecycleCount": 3,
|
||||
"importLoopOpenClawImportP50Ms": 84,
|
||||
"importLoopOpenClawActivationP50Ms": 0.3,
|
||||
"importLoopMetricBasis": "baseline-adjusted",
|
||||
"importLoopMaxRssMb": 13.3,
|
||||
"importLoopMaxCpuMs": 35,
|
||||
"importLoopRssSampleCount": 287,
|
||||
"importLoopCpuSampleCount": 287
|
||||
"executionBlocked": 2,
|
||||
"platformWindowsRisks": 153,
|
||||
"platformContainerRisks": 47,
|
||||
"loaderJitiCandidates": 18,
|
||||
"importLoopP50Ms": 950,
|
||||
"importLoopP95Ms": 1023,
|
||||
"importLoopMaxRssMb": 45.5,
|
||||
"importLoopMaxCpuMs": 208
|
||||
},
|
||||
"topIssues": [
|
||||
{
|
||||
"severity": "P0",
|
||||
"issueClass": "live-issue",
|
||||
"fixture": "codex-app-server",
|
||||
"code": "sdk-export-missing",
|
||||
"title": "codex-app-server: plugin SDK import aliases are missing from target package exports",
|
||||
"decision": "core-compat-adapter"
|
||||
},
|
||||
{
|
||||
"severity": "P0",
|
||||
"issueClass": "live-issue",
|
||||
"fixture": "hyperspell",
|
||||
"code": "unknown-hook-name",
|
||||
"title": "hyperspell: fixture uses a hook missing from target OpenClaw",
|
||||
"decision": "core-compat-adapter"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "a2a-gateway",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "a2a-gateway: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "clawmetry",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "clawmetry: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "compat-gap",
|
||||
"fixture": "clawmetry",
|
||||
"code": "sdk-export-missing",
|
||||
"title": "clawmetry: plugin SDK import aliases are missing from target package exports",
|
||||
"fixture": "codex-app-server",
|
||||
"code": "missing-compat-record",
|
||||
"title": "codex-app-server: compat-dependent behavior lacks registry coverage",
|
||||
"decision": "core-compat-adapter"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "codex-app-server",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "codex-app-server: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "connectclaw",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "connectclaw: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
@ -57,28 +98,36 @@
|
||||
"title": "honcho: conversation-access hooks need privacy-boundary probes",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "compat-gap",
|
||||
"fixture": "honcho",
|
||||
"code": "sdk-export-missing",
|
||||
"title": "honcho: plugin SDK import aliases are missing from target package exports",
|
||||
"decision": "core-compat-adapter"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "kitchen-sink",
|
||||
"code": "before-tool-call-probe",
|
||||
"title": "kitchen-sink: before_tool_call needs terminal/block/approval probes",
|
||||
"fixture": "honcho",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "honcho: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "kitchen-sink",
|
||||
"fixture": "hyperspell",
|
||||
"code": "conversation-access-hook",
|
||||
"title": "kitchen-sink: conversation-access hooks need privacy-boundary probes",
|
||||
"title": "hyperspell: conversation-access hooks need privacy-boundary probes",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "hyperspell",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "hyperspell: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "lightclawbot",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "lightclawbot: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
@ -92,9 +141,17 @@
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "memory-lancedb",
|
||||
"code": "conversation-access-hook",
|
||||
"title": "memory-lancedb: conversation-access hooks need privacy-boundary probes",
|
||||
"fixture": "lossless-claw",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "lossless-claw: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "mcp-adapter",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "mcp-adapter: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
@ -116,258 +173,59 @@
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "nemoclaw",
|
||||
"code": "before-tool-call-probe",
|
||||
"title": "nemoclaw: before_tool_call needs terminal/block/approval probes",
|
||||
"fixture": "memos-cloud",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "memos-cloud: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "openclaw-telemetry",
|
||||
"code": "before-tool-call-probe",
|
||||
"title": "openclaw-telemetry: before_tool_call needs terminal/block/approval probes",
|
||||
"fixture": "mocrane-wecom",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "mocrane-wecom: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "openclaw-telemetry",
|
||||
"code": "conversation-access-hook",
|
||||
"title": "openclaw-telemetry: conversation-access hooks need privacy-boundary probes",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "opik-openclaw",
|
||||
"code": "before-tool-call-probe",
|
||||
"title": "opik-openclaw: before_tool_call needs terminal/block/approval probes",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "opik-openclaw",
|
||||
"code": "conversation-access-hook",
|
||||
"title": "opik-openclaw: conversation-access hooks need privacy-boundary probes",
|
||||
"decision": "inspector-follow-up"
|
||||
},
|
||||
{
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "wecom",
|
||||
"code": "before-tool-call-probe",
|
||||
"title": "wecom: before_tool_call needs terminal/block/approval probes",
|
||||
"fixture": "openclaw-weixin",
|
||||
"code": "registration-capture-gap",
|
||||
"title": "openclaw-weixin: runtime registrations need capture before contract judgment",
|
||||
"decision": "inspector-follow-up"
|
||||
}
|
||||
],
|
||||
"refRegressions": [],
|
||||
"policyFindings": [
|
||||
{
|
||||
"id": "execution-results.audit-findings",
|
||||
"id": "compatibility-report.live-p0-issues",
|
||||
"action": "warn",
|
||||
"message": "12 package audit findings",
|
||||
"message": "2 live P0 issues tracked",
|
||||
"evidence": [
|
||||
"clawrouter:12"
|
||||
"codex-app-server:sdk-export-missing:untracked",
|
||||
"hyperspell:unknown-hook-name:none"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerService.29",
|
||||
"id": "execution-results.blocked.wecom.registerChannel.0",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured registration requires includeLifecycle=true",
|
||||
"message": "allowed-blocked: captured registration requires includeChannelRuntime=true",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerService",
|
||||
"captured registration requires includeLifecycle=true",
|
||||
"service-lifecycle-harness"
|
||||
".crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json",
|
||||
"registerChannel",
|
||||
"captured registration requires includeChannelRuntime=true",
|
||||
"channel-runtime-harness"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.10",
|
||||
"id": "execution-results.blocked.wecom.registerTool.2",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"message": "expected-warning: captured registration has no object descriptor",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
".crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.11",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.12",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.13",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.14",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.15",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.16",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.17",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.18",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.19",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.20",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.21",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.5",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.6",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.7",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.8",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "execution-results.blocked.clawrouter.registerTool.9",
|
||||
"action": "warn",
|
||||
"message": "allowed-blocked: captured tool requires live network access",
|
||||
"evidence": [
|
||||
".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"registerTool",
|
||||
"captured tool requires live network access",
|
||||
"live-network-tool-probes"
|
||||
"captured registration has no object descriptor",
|
||||
"tool-factory-descriptor"
|
||||
]
|
||||
}
|
||||
],
|
||||
@ -376,20 +234,11 @@
|
||||
"id": "profile.wall-p95",
|
||||
"action": "warn",
|
||||
"metric": "p95WallMs",
|
||||
"message": "p95WallMs regressed 87.8% over baseline",
|
||||
"message": "p95WallMs regressed 262.5% over baseline",
|
||||
"baseline": 1273,
|
||||
"current": 2391,
|
||||
"delta": 1118,
|
||||
"percent": 87.8
|
||||
},
|
||||
{
|
||||
"id": "profile.peak-rss",
|
||||
"action": "warn",
|
||||
"metric": "maxPeakRssMb",
|
||||
"message": "maxPeakRssMb regressed 390.29999999999995 over baseline",
|
||||
"baseline": 65.1,
|
||||
"current": 455.4,
|
||||
"delta": 390.29999999999995
|
||||
"current": 4615,
|
||||
"delta": 3342,
|
||||
"percent": 262.5
|
||||
}
|
||||
],
|
||||
"artifacts": {
|
||||
|
||||
@ -1,59 +1,64 @@
|
||||
# Crabpot CI Summary
|
||||
|
||||
Generated: deterministic
|
||||
Mode: dependabot
|
||||
OpenClaw: openclaw@latest (2026.5.6, c97b9f79ec43)
|
||||
Mode: local
|
||||
OpenClaw: -
|
||||
Status: PASS
|
||||
|
||||
## Counts
|
||||
|
||||
| Metric | Value |
|
||||
| --------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
|
||||
| Breakages | 0 |
|
||||
| Warnings | 126 |
|
||||
| Suggestions | 155 |
|
||||
| Issues | 281 |
|
||||
| P0 issues | 0 |
|
||||
| P1 issues | 15 |
|
||||
| Live issues | 0 |
|
||||
| Live P0 issues | 0 |
|
||||
| Compat gaps | 2 |
|
||||
| Deprecation warnings | 42 |
|
||||
| Inspector gaps | 163 |
|
||||
| Upstream metadata | 74 |
|
||||
| Ref diff failures | 0 |
|
||||
| Ref diff warnings | 0 |
|
||||
| Policy failures | 0 |
|
||||
| Policy warnings | 19 |
|
||||
| Profile failures | 0 |
|
||||
| Profile warnings | 2 |
|
||||
| Execution pass | 12 |
|
||||
| Execution fail | 0 |
|
||||
| Execution blocked | 18 |
|
||||
| Windows portability risks | 14 |
|
||||
| Container portability risks | 14 |
|
||||
| Jiti loader candidates | 25 |
|
||||
| Import loop | p50 2421 ms / p95 2471 ms / plugin delta RSS 13.3 MB / plugin delta CPU 35 ms / OpenClaw import 84 ms / activate 0.3 ms |
|
||||
| Metric | Value |
|
||||
| --------------------------- | ------------------------------------------------------- |
|
||||
| Breakages | 0 |
|
||||
| Warnings | 51 |
|
||||
| Suggestions | 92 |
|
||||
| Issues | 143 |
|
||||
| P0 issues | 2 |
|
||||
| P1 issues | 26 |
|
||||
| Live issues | 2 |
|
||||
| Live P0 issues | 2 |
|
||||
| Compat gaps | 1 |
|
||||
| Deprecation warnings | 21 |
|
||||
| Inspector gaps | 97 |
|
||||
| Upstream metadata | 22 |
|
||||
| Ref diff failures | 0 |
|
||||
| Ref diff warnings | 0 |
|
||||
| Policy failures | 0 |
|
||||
| Policy warnings | 3 |
|
||||
| Profile failures | 0 |
|
||||
| Profile warnings | 1 |
|
||||
| Execution pass | 6 |
|
||||
| Execution fail | 0 |
|
||||
| Execution blocked | 2 |
|
||||
| Windows portability risks | 153 |
|
||||
| Container portability risks | 47 |
|
||||
| Jiti loader candidates | 18 |
|
||||
| Import loop | p50 950 ms / p95 1023 ms / max RSS 45.5 MB / CPU 208 ms |
|
||||
|
||||
## Top Issues
|
||||
|
||||
| Severity | Class | Fixture | Code | Decision | Title |
|
||||
| -------- | ------------- | ------------------ | ------------------------ | ------------------- | ---------------------------------------------------------------------------- |
|
||||
| P1 | compat-gap | clawmetry | sdk-export-missing | core-compat-adapter | clawmetry: plugin SDK import aliases are missing from target package exports |
|
||||
| P1 | inspector-gap | honcho | conversation-access-hook | inspector-follow-up | honcho: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | compat-gap | honcho | sdk-export-missing | core-compat-adapter | honcho: plugin SDK import aliases are missing from target package exports |
|
||||
| P1 | inspector-gap | kitchen-sink | before-tool-call-probe | inspector-follow-up | kitchen-sink: before_tool_call needs terminal/block/approval probes |
|
||||
| P1 | inspector-gap | kitchen-sink | conversation-access-hook | inspector-follow-up | kitchen-sink: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | llm-trace-phoenix | conversation-access-hook | inspector-follow-up | llm-trace-phoenix: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | memory-lancedb | conversation-access-hook | inspector-follow-up | memory-lancedb: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | memory-tencentdb | conversation-access-hook | inspector-follow-up | memory-tencentdb: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | memos-cloud | conversation-access-hook | inspector-follow-up | memos-cloud: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | nemoclaw | before-tool-call-probe | inspector-follow-up | nemoclaw: before_tool_call needs terminal/block/approval probes |
|
||||
| P1 | inspector-gap | openclaw-telemetry | before-tool-call-probe | inspector-follow-up | openclaw-telemetry: before_tool_call needs terminal/block/approval probes |
|
||||
| P1 | inspector-gap | openclaw-telemetry | conversation-access-hook | inspector-follow-up | openclaw-telemetry: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | opik-openclaw | before-tool-call-probe | inspector-follow-up | opik-openclaw: before_tool_call needs terminal/block/approval probes |
|
||||
| P1 | inspector-gap | opik-openclaw | conversation-access-hook | inspector-follow-up | opik-openclaw: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | wecom | before-tool-call-probe | inspector-follow-up | wecom: before_tool_call needs terminal/block/approval probes |
|
||||
| Severity | Class | Fixture | Code | Decision | Title |
|
||||
| -------- | ------------- | ----------------- | ------------------------ | ------------------- | ----------------------------------------------------------------------------------- |
|
||||
| P0 | live-issue | codex-app-server | sdk-export-missing | core-compat-adapter | codex-app-server: plugin SDK import aliases are missing from target package exports |
|
||||
| P0 | live-issue | hyperspell | unknown-hook-name | core-compat-adapter | hyperspell: fixture uses a hook missing from target OpenClaw |
|
||||
| P1 | inspector-gap | a2a-gateway | registration-capture-gap | inspector-follow-up | a2a-gateway: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | clawmetry | registration-capture-gap | inspector-follow-up | clawmetry: runtime registrations need capture before contract judgment |
|
||||
| P1 | compat-gap | codex-app-server | missing-compat-record | core-compat-adapter | codex-app-server: compat-dependent behavior lacks registry coverage |
|
||||
| P1 | inspector-gap | codex-app-server | registration-capture-gap | inspector-follow-up | codex-app-server: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | connectclaw | registration-capture-gap | inspector-follow-up | connectclaw: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | honcho | conversation-access-hook | inspector-follow-up | honcho: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | honcho | registration-capture-gap | inspector-follow-up | honcho: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | hyperspell | conversation-access-hook | inspector-follow-up | hyperspell: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | hyperspell | registration-capture-gap | inspector-follow-up | hyperspell: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | lightclawbot | registration-capture-gap | inspector-follow-up | lightclawbot: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | llm-trace-phoenix | conversation-access-hook | inspector-follow-up | llm-trace-phoenix: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | lossless-claw | registration-capture-gap | inspector-follow-up | lossless-claw: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | mcp-adapter | registration-capture-gap | inspector-follow-up | mcp-adapter: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | memory-tencentdb | conversation-access-hook | inspector-follow-up | memory-tencentdb: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | memos-cloud | conversation-access-hook | inspector-follow-up | memos-cloud: conversation-access hooks need privacy-boundary probes |
|
||||
| P1 | inspector-gap | memos-cloud | registration-capture-gap | inspector-follow-up | memos-cloud: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | mocrane-wecom | registration-capture-gap | inspector-follow-up | mocrane-wecom: runtime registrations need capture before contract judgment |
|
||||
| P1 | inspector-gap | openclaw-weixin | registration-capture-gap | inspector-follow-up | openclaw-weixin: runtime registrations need capture before contract judgment |
|
||||
|
||||
## Ref Regressions
|
||||
|
||||
@ -61,34 +66,17 @@ _none_
|
||||
|
||||
## Policy Findings
|
||||
|
||||
| Action | ID | Message | Evidence |
|
||||
| ------ | ------------------------------------------------------- | --------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| warn | execution-results.audit-findings | 12 package audit findings | clawrouter:12 |
|
||||
| warn | execution-results.blocked.clawrouter.registerService.29 | allowed-blocked: captured registration requires includeLifecycle=true | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerService, captured registration requires includeLifecycle=true, service-lifecycle-harness |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.10 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.11 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.12 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.13 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.14 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.15 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.16 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.17 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.18 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.19 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.20 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.21 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.5 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.6 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.7 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.8 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| warn | execution-results.blocked.clawrouter.registerTool.9 | allowed-blocked: captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json, registerTool, captured tool requires live network access, live-network-tool-probes |
|
||||
| Action | ID | Message | Evidence |
|
||||
| ------ | ------------------------------------------------- | -------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| warn | compatibility-report.live-p0-issues | 2 live P0 issues tracked | codex-app-server:sdk-export-missing:untracked, hyperspell:unknown-hook-name:none |
|
||||
| warn | execution-results.blocked.wecom.registerChannel.0 | allowed-blocked: captured registration requires includeChannelRuntime=true | .crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json, registerChannel, captured registration requires includeChannelRuntime=true, channel-runtime-harness |
|
||||
| warn | execution-results.blocked.wecom.registerTool.2 | expected-warning: captured registration has no object descriptor | .crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json, registerTool, captured registration has no object descriptor, tool-factory-descriptor |
|
||||
|
||||
## Profile Findings
|
||||
|
||||
| Action | ID | Metric | Baseline | Current | Message |
|
||||
| ------ | ---------------- | ------------ | -------- | ------- | ------------------------------------------------------- |
|
||||
| warn | profile.wall-p95 | p95WallMs | 1273 | 2391 | p95WallMs regressed 87.8% over baseline |
|
||||
| warn | profile.peak-rss | maxPeakRssMb | 65.1 | 455.4 | maxPeakRssMb regressed 390.29999999999995 over baseline |
|
||||
| Action | ID | Metric | Baseline | Current | Message |
|
||||
| ------ | ---------------- | --------- | -------- | ------- | ---------------------------------------- |
|
||||
| warn | profile.wall-p95 | p95WallMs | 1273 | 4615 | p95WallMs regressed 262.5% over baseline |
|
||||
|
||||
## Artifacts
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -6,119 +6,46 @@ Generated: deterministic
|
||||
|
||||
| Metric | Value |
|
||||
| --------------------------- | ----- |
|
||||
| Fixtures | 57 |
|
||||
| Entrypoints | 103 |
|
||||
| Ready | 6 |
|
||||
| Blocked | 97 |
|
||||
| TypeScript loader required | 24 |
|
||||
| Build required | 9 |
|
||||
| Dependency install required | 43 |
|
||||
| SDK alias required | 3 |
|
||||
| Fixtures | 27 |
|
||||
| Entrypoints | 30 |
|
||||
| Ready | 0 |
|
||||
| Blocked | 30 |
|
||||
| TypeScript loader required | 17 |
|
||||
| Build required | 7 |
|
||||
| Dependency install required | 20 |
|
||||
| SDK alias required | 1 |
|
||||
|
||||
## Entrypoints
|
||||
|
||||
| Fixture | Kind | Status | Path | Blockers | Assertions |
|
||||
| ---------------------- | ---------------- | --------------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| agentchat | extension | build-required | plugins/agentchat/integrations/openclaw-channel/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| agentchat | setupEntry | build-required | plugins/agentchat/integrations/openclaw-channel/dist/setup-entry.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| wecom | extension | dependency-install-required | plugins/wecom/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| qqbot | extension | dependency-install-required | plugins/qqbot/preload.cjs | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| a2a-gateway | extension | ts-loader-required | plugins/a2a-gateway/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| hasdata | extension | ts-loader-required | plugins/hasdata/src/index.ts | ts-loader-required, top-level-side-effect-review, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| mcp-adapter | extension | ts-loader-required | plugins/mcp-adapter/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| llm-trace-phoenix | extension | ts-loader-required | plugins/llm-trace-phoenix/index.ts | ts-loader-required, top-level-side-effect-review | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture |
|
||||
| opik-openclaw | extension | ts-loader-required | plugins/opik-openclaw/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| opik-openclaw | runtimeExtension | build-required | plugins/opik-openclaw/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| openclaw-telemetry | extension | ts-loader-required | plugins/openclaw-telemetry/index.ts | ts-loader-required | TypeScript source entrypoint is compiled or loaded before cold import |
|
||||
| lossless-claw | extension | build-required | plugins/lossless-claw/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| connectclaw | extension | ts-loader-required | plugins/connectclaw/packages/plugin/index.ts | ts-loader-required | TypeScript source entrypoint is compiled or loaded before cold import |
|
||||
| hyperspell | extension | ts-loader-required | plugins/hyperspell/index.ts | ts-loader-required, top-level-side-effect-review, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| honcho | extension | sdk-alias-required | plugins/honcho/dist/index.js | build-required, sdk-alias-required | plugin build or source alias resolution runs before cold import; target OpenClaw exports the imported SDK alias or provides a migration shim |
|
||||
| composio | extension | ts-loader-required | plugins/composio/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| kitchen-sink | extension | ready | plugins/kitchen-sink/src/index.js | - | entrypoint can be imported by Node without fixture credentials; registration capture shim receives plugin registrations |
|
||||
| kitchen-sink | runtimeExtension | ready | plugins/kitchen-sink/src/index.js | - | entrypoint can be imported by Node without fixture credentials; registration capture shim receives plugin registrations |
|
||||
| kitchen-sink | setupEntry | ready | plugins/kitchen-sink/src/setup.js | - | entrypoint can be imported by Node without fixture credentials; registration capture shim receives plugin registrations |
|
||||
| bluebubbles | extension | missing | plugins/bluebubbles/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| bluebubbles | runtimeExtension | ready | plugins/bluebubbles/.crabpot-package/dist/index.js | - | entrypoint can be imported by Node without fixture credentials; registration capture shim receives plugin registrations |
|
||||
| bluebubbles | setupEntry | missing | plugins/bluebubbles/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| diagnostics-otel | extension | missing | plugins/diagnostics-otel/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| diagnostics-otel | runtimeExtension | dependency-install-required | plugins/diagnostics-otel/.crabpot-package/dist/index.js | top-level-side-effect-review, dependency-install-required | cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| discord | extension | missing | plugins/discord/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| discord | runtimeExtension | dependency-install-required | plugins/discord/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| discord | setupEntry | missing | plugins/discord/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| lobster | extension | missing | plugins/lobster/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| lobster | runtimeExtension | dependency-install-required | plugins/lobster/.crabpot-package/dist/index.js | top-level-side-effect-review, dependency-install-required | cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| matrix | extension | ts-loader-required | plugins/matrix/.crabpot-package/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| matrix | setupEntry | ts-loader-required | plugins/matrix/.crabpot-package/setup-entry.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| msteams | extension | missing | plugins/msteams/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| msteams | runtimeExtension | dependency-install-required | plugins/msteams/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| msteams | setupEntry | missing | plugins/msteams/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| nextcloud-talk | extension | missing | plugins/nextcloud-talk/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| nextcloud-talk | runtimeExtension | dependency-install-required | plugins/nextcloud-talk/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| nextcloud-talk | setupEntry | missing | plugins/nextcloud-talk/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| nostr | extension | missing | plugins/nostr/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| nostr | runtimeExtension | dependency-install-required | plugins/nostr/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| nostr | setupEntry | missing | plugins/nostr/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| voice-call | extension | missing | plugins/voice-call/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| voice-call | runtimeExtension | dependency-install-required | plugins/voice-call/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| zalo | extension | missing | plugins/zalo/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| zalo | runtimeExtension | dependency-install-required | plugins/zalo/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| zalo | setupEntry | missing | plugins/zalo/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| zalouser | extension | missing | plugins/zalouser/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| zalouser | runtimeExtension | dependency-install-required | plugins/zalouser/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| zalouser | setupEntry | missing | plugins/zalouser/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| feishu | extension | missing | plugins/feishu/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| feishu | runtimeExtension | dependency-install-required | plugins/feishu/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| feishu | setupEntry | missing | plugins/feishu/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| tlon | extension | missing | plugins/tlon/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| tlon | runtimeExtension | dependency-install-required | plugins/tlon/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| tlon | setupEntry | missing | plugins/tlon/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| twitch | extension | missing | plugins/twitch/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| twitch | runtimeExtension | dependency-install-required | plugins/twitch/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| twitch | setupEntry | missing | plugins/twitch/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| mattermost | extension | ts-loader-required | plugins/mattermost/.crabpot-package/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| mattermost | setupEntry | ts-loader-required | plugins/mattermost/.crabpot-package/setup-entry.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| synology-chat | extension | missing | plugins/synology-chat/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| synology-chat | runtimeExtension | dependency-install-required | plugins/synology-chat/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| synology-chat | setupEntry | missing | plugins/synology-chat/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| brave-plugin | extension | missing | plugins/brave-plugin/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| brave-plugin | runtimeExtension | ready | plugins/brave-plugin/.crabpot-package/dist/index.js | - | entrypoint can be imported by Node without fixture credentials; registration capture shim receives plugin registrations |
|
||||
| codex | extension | missing | plugins/codex/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| codex | runtimeExtension | dependency-install-required | plugins/codex/.crabpot-package/dist/index.js | top-level-side-effect-review, dependency-install-required | cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| diagnostics-prometheus | extension | missing | plugins/diagnostics-prometheus/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| diagnostics-prometheus | runtimeExtension | ready | plugins/diagnostics-prometheus/.crabpot-package/dist/index.js | - | entrypoint can be imported by Node without fixture credentials; registration capture shim receives plugin registrations |
|
||||
| google-meet | extension | missing | plugins/google-meet/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| google-meet | runtimeExtension | dependency-install-required | plugins/google-meet/.crabpot-package/dist/index.js | top-level-side-effect-review, dependency-install-required | cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| diffs | extension | missing | plugins/diffs/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| diffs | runtimeExtension | dependency-install-required | plugins/diffs/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| memory-lancedb | extension | missing | plugins/memory-lancedb/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| memory-lancedb | runtimeExtension | dependency-install-required | plugins/memory-lancedb/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| openclaw-qqbot | extension | missing | plugins/openclaw-qqbot/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| openclaw-qqbot | runtimeExtension | dependency-install-required | plugins/openclaw-qqbot/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| openclaw-qqbot | setupEntry | missing | plugins/openclaw-qqbot/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| whatsapp | extension | missing | plugins/whatsapp/.crabpot-package/index.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| whatsapp | runtimeExtension | dependency-install-required | plugins/whatsapp/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| whatsapp | setupEntry | missing | plugins/whatsapp/.crabpot-package/setup-entry.ts | missing-entrypoint | plugin package metadata points at an existing OpenClaw entrypoint |
|
||||
| nemoclaw | extension | build-required | plugins/nemoclaw/nemoclaw/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| memory-tencentdb | extension | ts-loader-required | plugins/memory-tencentdb/.crabpot-package/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| ddingtalk | extension | ts-loader-required | plugins/ddingtalk/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| dingtalk-connector | extension | build-required | plugins/dingtalk-connector/dist/index.mjs | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| mocrane-wecom | extension | ts-loader-required | plugins/mocrane-wecom/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| yuanbao | extension | ts-loader-required | plugins/yuanbao/.crabpot-package/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| yuanbao | setupEntry | ts-loader-required | plugins/yuanbao/.crabpot-package/setup-entry.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| openclaw-weixin | extension | ts-loader-required | plugins/openclaw-weixin/.crabpot-package/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| openclaw-weixin | runtimeExtension | dependency-install-required | plugins/openclaw-weixin/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| lightclawbot | extension | dependency-install-required | plugins/lightclawbot/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| telnyx-sms | extension | build-required | plugins/telnyx-sms/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| telnyx-sms | setupEntry | build-required | plugins/telnyx-sms/dist/setup-entry.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| clawrouter | extension | dependency-install-required | plugins/clawrouter/dist/index.js | top-level-side-effect-review, dependency-install-required | cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| memu-engine | extension | ts-loader-required | plugins/memu-engine/index.ts | ts-loader-required, top-level-side-effect-review | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture |
|
||||
| secureclaw | extension | build-required | plugins/secureclaw/secureclaw/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| memos-cloud | extension | review-required | plugins/memos-cloud/index.js | top-level-side-effect-review | cold import sandbox blocks network/process side effects before register capture |
|
||||
| clawmetry | extension | sdk-alias-required | plugins/clawmetry/clawhub-plugin/index.ts | ts-loader-required, dependency-install-required, sdk-alias-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import; target OpenClaw exports the imported SDK alias or provides a migration shim |
|
||||
| clawmetry | runtimeExtension | sdk-alias-required | plugins/clawmetry/clawhub-plugin/dist/index.js | build-required, sdk-alias-required | plugin build or source alias resolution runs before cold import; target OpenClaw exports the imported SDK alias or provides a migration shim |
|
||||
| codex-app-server | extension | ts-loader-required | plugins/codex-app-server/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| web-search-plus | extension | ts-loader-required | plugins/web-search-plus/index.ts | ts-loader-required, top-level-side-effect-review | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture |
|
||||
| web-search-plus | runtimeExtension | review-required | plugins/web-search-plus/dist/index.js | top-level-side-effect-review | cold import sandbox blocks network/process side effects before register capture |
|
||||
| apify | extension | ts-loader-required | plugins/apify/src/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| inworld-tts | extension | ts-loader-required | plugins/inworld-tts/index.ts | ts-loader-required | TypeScript source entrypoint is compiled or loaded before cold import |
|
||||
| Fixture | Kind | Status | Path | Blockers | Assertions |
|
||||
| ----------------- | ---------------- | --------------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| agentchat | extension | build-required | plugins/agentchat/integrations/openclaw-channel/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| agentchat | setupEntry | build-required | plugins/agentchat/integrations/openclaw-channel/dist/setup-entry.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| wecom | extension | dependency-install-required | plugins/wecom/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| qqbot | extension | dependency-install-required | plugins/qqbot/preload.cjs | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| a2a-gateway | extension | ts-loader-required | plugins/a2a-gateway/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| hasdata | extension | ts-loader-required | plugins/hasdata/src/index.ts | ts-loader-required, top-level-side-effect-review, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| mcp-adapter | extension | ts-loader-required | plugins/mcp-adapter/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| llm-trace-phoenix | extension | ts-loader-required | plugins/llm-trace-phoenix/index.ts | ts-loader-required, top-level-side-effect-review | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture |
|
||||
| opik-openclaw | extension | ts-loader-required | plugins/opik-openclaw/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| opik-openclaw | runtimeExtension | build-required | plugins/opik-openclaw/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| lossless-claw | extension | build-required | plugins/lossless-claw/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| connectclaw | extension | ts-loader-required | plugins/connectclaw/packages/plugin/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| hyperspell | extension | ts-loader-required | plugins/hyperspell/index.ts | ts-loader-required, top-level-side-effect-review, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| honcho | extension | build-required | plugins/honcho/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| composio | extension | ts-loader-required | plugins/composio/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| memory-tencentdb | extension | ts-loader-required | plugins/memory-tencentdb/.crabpot-package/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| ddingtalk | extension | ts-loader-required | plugins/ddingtalk/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| mocrane-wecom | extension | ts-loader-required | plugins/mocrane-wecom/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| yuanbao | extension | dependency-install-required | plugins/yuanbao/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| openclaw-weixin | extension | ts-loader-required | plugins/openclaw-weixin/.crabpot-package/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| lightclawbot | extension | dependency-install-required | plugins/lightclawbot/.crabpot-package/dist/index.js | dependency-install-required | fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| memu-engine | extension | ts-loader-required | plugins/memu-engine/index.ts | ts-loader-required, top-level-side-effect-review | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture |
|
||||
| secureclaw | extension | build-required | plugins/secureclaw/secureclaw/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| memos-cloud | extension | review-required | plugins/memos-cloud/index.js | top-level-side-effect-review | cold import sandbox blocks network/process side effects before register capture |
|
||||
| clawmetry | extension | ts-loader-required | plugins/clawmetry/clawhub-plugin/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| clawmetry | runtimeExtension | build-required | plugins/clawmetry/clawhub-plugin/dist/index.js | build-required | plugin build or source alias resolution runs before cold import |
|
||||
| codex-app-server | extension | sdk-alias-required | plugins/codex-app-server/index.ts | ts-loader-required, dependency-install-required, sdk-alias-required, sdk-alias-required, sdk-alias-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import; target OpenClaw exports the imported SDK alias or provides a migration shim; target OpenClaw exports the imported SDK alias or provides a migration shim; target OpenClaw exports the imported SDK alias or provides a migration shim |
|
||||
| web-search-plus | extension | ts-loader-required | plugins/web-search-plus/index.ts | ts-loader-required, top-level-side-effect-review, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; cold import sandbox blocks network/process side effects before register capture; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| apify | extension | ts-loader-required | plugins/apify/src/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
| inworld-tts | extension | ts-loader-required | plugins/inworld-tts/index.ts | ts-loader-required, dependency-install-required | TypeScript source entrypoint is compiled or loaded before cold import; fixture dependencies are installed in an isolated workspace before cold import |
|
||||
|
||||
@ -1,169 +0,0 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"generatedAt": "2026-05-07T09:32:17Z",
|
||||
"runUrl": "https://github.com/openclaw/crabpot/actions/runs/25487512981",
|
||||
"mode": "dependabot",
|
||||
"openclawLabel": "openclaw@latest (2026.5.6, c97b9f79ec43)",
|
||||
"status": "pass",
|
||||
"metrics": {
|
||||
"fixtures": 57,
|
||||
"hardBreakages": 0,
|
||||
"warnings": 126,
|
||||
"suggestions": 155,
|
||||
"issues": 281,
|
||||
"p0Issues": 0,
|
||||
"p1Issues": 15,
|
||||
"liveIssues": 0,
|
||||
"liveP0Issues": 0,
|
||||
"compatGaps": 2,
|
||||
"deprecationWarnings": 42,
|
||||
"inspectorGaps": 163,
|
||||
"upstreamIssues": 74,
|
||||
"contractProbes": 277,
|
||||
"policyFailures": 0,
|
||||
"policyWarnings": 19,
|
||||
"refDiffFailures": 0,
|
||||
"profileFailures": 0,
|
||||
"executionPass": 12,
|
||||
"executionFail": 0,
|
||||
"executionBlocked": 18,
|
||||
"syntheticReady": 434,
|
||||
"syntheticBlocked": 0,
|
||||
"syntheticTotal": 434,
|
||||
"coldReady": 6,
|
||||
"coldBlocked": 97,
|
||||
"coldTotal": 103,
|
||||
"workspaceEntrypoints": 103,
|
||||
"workspaceInstalls": 43,
|
||||
"workspaceBuilds": 11,
|
||||
"platformWindowsRisks": 14,
|
||||
"platformContainerRisks": 14,
|
||||
"loaderJitiCandidates": 25,
|
||||
"importLoopP50Ms": 2421,
|
||||
"importLoopP95Ms": 2471,
|
||||
"importLoopOpenClawLifecycleCount": 3,
|
||||
"importLoopOpenClawImportP50Ms": 84,
|
||||
"importLoopOpenClawImportP95Ms": 88.6,
|
||||
"importLoopOpenClawActivationP50Ms": 0.3,
|
||||
"importLoopOpenClawActivationP95Ms": 1.2,
|
||||
"importLoopMetricBasis": "baseline-adjusted",
|
||||
"importLoopMaxRssMb": 13.3,
|
||||
"importLoopMaxCpuMs": 35,
|
||||
"importLoopRssSampleCount": 287,
|
||||
"importLoopCpuSampleCount": 287,
|
||||
"runtimeP50Ms": 2337,
|
||||
"runtimeP95Ms": 2391,
|
||||
"runtimeMaxRssMb": 455.4,
|
||||
"runtimeRssSampleCount": 1993,
|
||||
"runtimeCpuSampleCount": 1993,
|
||||
"runtimeSamplesPerCommand": 3,
|
||||
"runtimeWallTimeBasis": "command-median-p95"
|
||||
},
|
||||
"baseline": null,
|
||||
"topIssues": [
|
||||
{
|
||||
"id": "CRABPOT-54E8B3D1",
|
||||
"severity": "P1",
|
||||
"issueClass": "compat-gap",
|
||||
"fixture": "clawmetry",
|
||||
"code": "sdk-export-missing",
|
||||
"decision": "core-compat-adapter",
|
||||
"title": "clawmetry: plugin SDK import aliases are missing from target package exports"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-2D165A73",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "honcho",
|
||||
"code": "conversation-access-hook",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "honcho: conversation-access hooks need privacy-boundary probes"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-85AD745B",
|
||||
"severity": "P1",
|
||||
"issueClass": "compat-gap",
|
||||
"fixture": "honcho",
|
||||
"code": "sdk-export-missing",
|
||||
"decision": "core-compat-adapter",
|
||||
"title": "honcho: plugin SDK import aliases are missing from target package exports"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-66F07BB5",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "kitchen-sink",
|
||||
"code": "before-tool-call-probe",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "kitchen-sink: before_tool_call needs terminal/block/approval probes"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-ADFE9067",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "kitchen-sink",
|
||||
"code": "conversation-access-hook",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "kitchen-sink: conversation-access hooks need privacy-boundary probes"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-5D9C0F25",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "llm-trace-phoenix",
|
||||
"code": "conversation-access-hook",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "llm-trace-phoenix: conversation-access hooks need privacy-boundary probes"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-0C34E538",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "memory-lancedb",
|
||||
"code": "conversation-access-hook",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "memory-lancedb: conversation-access hooks need privacy-boundary probes"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-5072796E",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "memory-tencentdb",
|
||||
"code": "conversation-access-hook",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "memory-tencentdb: conversation-access hooks need privacy-boundary probes"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-A1A9B1D2",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "memos-cloud",
|
||||
"code": "conversation-access-hook",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "memos-cloud: conversation-access hooks need privacy-boundary probes"
|
||||
},
|
||||
{
|
||||
"id": "CRABPOT-120FF1E0",
|
||||
"severity": "P1",
|
||||
"issueClass": "inspector-gap",
|
||||
"fixture": "nemoclaw",
|
||||
"code": "before-tool-call-probe",
|
||||
"decision": "inspector-follow-up",
|
||||
"title": "nemoclaw: before_tool_call needs terminal/block/approval probes"
|
||||
}
|
||||
],
|
||||
"artifactPaths": {
|
||||
"compatibility": "reports/crabpot-report.json",
|
||||
"ciSummary": "reports/crabpot-ci-summary.json",
|
||||
"synthetic": "reports/crabpot-synthetic-probes.json",
|
||||
"coldImport": "reports/crabpot-cold-import.json",
|
||||
"workspace": "reports/crabpot-workspace-plan.json",
|
||||
"platform": "reports/crabpot-platform-probes.json",
|
||||
"importLoop": "reports/crabpot-import-loop-profile.json",
|
||||
"execution": "reports/crabpot-execution-results.json",
|
||||
"runtimeProfile": "reports/crabpot-runtime-profile.json",
|
||||
"refDiff": "reports/crabpot-ref-diff.json",
|
||||
"profileDiff": "reports/crabpot-profile-diff.json",
|
||||
"ciPolicy": "reports/crabpot-ci-policy.json"
|
||||
}
|
||||
}
|
||||
@ -2,362 +2,64 @@
|
||||
"generatedAt": "deterministic",
|
||||
"resultsDir": ".crabpot/results",
|
||||
"summary": {
|
||||
"artifactCount": 4,
|
||||
"artifactCount": 2,
|
||||
"captureArtifactCount": 1,
|
||||
"syntheticArtifactCount": 1,
|
||||
"auditArtifactCount": 1,
|
||||
"profileArtifactCount": 1,
|
||||
"capturedRegistrationCount": 30,
|
||||
"auditFindingCount": 12,
|
||||
"executionWallMs": 27807,
|
||||
"maxPeakRssMb": 1123.9,
|
||||
"maxCpuMsEstimate": 17790,
|
||||
"passCount": 12,
|
||||
"capturedRegistrationCount": 8,
|
||||
"passCount": 6,
|
||||
"failCount": 0,
|
||||
"blockedCount": 18
|
||||
"blockedCount": 2
|
||||
},
|
||||
"artifacts": [
|
||||
{
|
||||
"artifactPath": ".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.capture.json",
|
||||
"fixture": "clawrouter",
|
||||
"artifactPath": ".crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.capture.json",
|
||||
"fixture": "wecom",
|
||||
"kind": "capture",
|
||||
"entrypoint": ".crabpot/workspaces/clawrouter/dist/index.js",
|
||||
"entrypoint": ".crabpot/workspaces/wecom/index.js",
|
||||
"status": "captured",
|
||||
"capturedCount": 30,
|
||||
"capturedCount": 8,
|
||||
"captured": [
|
||||
"registration:registerProvider",
|
||||
"registration:registerImageGenerationProvider",
|
||||
"registration:registerMusicGenerationProvider",
|
||||
"registration:registerVideoGenerationProvider",
|
||||
"registration:registerWebSearchProvider",
|
||||
"registration:registerChannel",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerTool",
|
||||
"registration:registerCommand",
|
||||
"registration:registerCommand",
|
||||
"registration:registerCommand",
|
||||
"registration:registerCommand",
|
||||
"registration:registerCommand",
|
||||
"registration:registerCommand",
|
||||
"registration:registerCommand",
|
||||
"registration:registerService"
|
||||
"hook:before_prompt_build",
|
||||
"hook:subagent_delivery_target",
|
||||
"hook:subagent_spawned",
|
||||
"hook:subagent_ended",
|
||||
"hook:before_tool_call"
|
||||
]
|
||||
},
|
||||
{
|
||||
"artifactPath": ".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"fixture": "clawrouter",
|
||||
"artifactPath": ".crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json",
|
||||
"fixture": "wecom",
|
||||
"kind": "synthetic",
|
||||
"entrypoint": ".crabpot/workspaces/clawrouter/dist/index.js",
|
||||
"entrypoint": ".crabpot/workspaces/wecom/index.js",
|
||||
"status": "captured",
|
||||
"summary": {
|
||||
"probeCount": 30,
|
||||
"passCount": 12,
|
||||
"probeCount": 8,
|
||||
"passCount": 6,
|
||||
"failCount": 0,
|
||||
"blockedCount": 18
|
||||
"blockedCount": 2
|
||||
},
|
||||
"failures": [],
|
||||
"blocked": [
|
||||
{
|
||||
"captureIndex": 5,
|
||||
"captureIndex": 0,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"seam": "registerChannel",
|
||||
"label": "registerChannel",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
"reason": "captured registration requires includeChannelRuntime=true"
|
||||
},
|
||||
{
|
||||
"captureIndex": 6,
|
||||
"captureIndex": 2,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"label": "registerTool",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 7,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 8,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 9,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 10,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 11,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 12,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 13,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 14,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 15,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 16,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 17,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 18,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 19,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 20,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 21,
|
||||
"kind": "registration",
|
||||
"seam": "registerTool",
|
||||
"label": "registerTool.execute",
|
||||
"status": "blocked",
|
||||
"error": "fetch failed",
|
||||
"reason": "captured tool requires live network access",
|
||||
"blockedBy": "clawrouter-live-network-tools"
|
||||
},
|
||||
{
|
||||
"captureIndex": 29,
|
||||
"kind": "registration",
|
||||
"seam": "registerService",
|
||||
"label": "registerService",
|
||||
"status": "blocked",
|
||||
"reason": "captured registration requires includeLifecycle=true"
|
||||
"reason": "captured registration has no object descriptor"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"artifactPath": ".crabpot/results/clawrouter/execution-profile.json",
|
||||
"fixture": "clawrouter",
|
||||
"kind": "profile",
|
||||
"entrypoint": "-",
|
||||
"status": "pass",
|
||||
"summary": {
|
||||
"stepCount": 7,
|
||||
"failCount": 0,
|
||||
"totalWallMs": 27807,
|
||||
"maxPeakRssMb": 1123.9,
|
||||
"maxCpuMsEstimate": 17790
|
||||
},
|
||||
"slowestSteps": [
|
||||
{
|
||||
"fixture": "clawrouter",
|
||||
"entrypoint": "cold-import.extension:clawrouter:plugins-clawrouter-dist-index-js",
|
||||
"packagePath": "plugins/clawrouter/package.json",
|
||||
"status": "dependency-install-required",
|
||||
"kind": "synthetic-probe",
|
||||
"command": "CRABPOT_EXECUTE_ISOLATED=1 node ../../../scripts/synthetic-probes.mjs --entrypoint ./dist/index.js --mock-sdk --output ../../results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"cwd": ".crabpot/workspaces/clawrouter",
|
||||
"artifactPath": ".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json",
|
||||
"exitCode": 0,
|
||||
"wallMs": 12125,
|
||||
"peakRssMb": 139,
|
||||
"peakCpuPercent": 42.3,
|
||||
"cpuMsEstimate": 593
|
||||
},
|
||||
{
|
||||
"fixture": "clawrouter",
|
||||
"entrypoint": "cold-import.extension:clawrouter:plugins-clawrouter-dist-index-js",
|
||||
"packagePath": "plugins/clawrouter/package.json",
|
||||
"status": "dependency-install-required",
|
||||
"kind": "install",
|
||||
"command": "npm install --ignore-scripts",
|
||||
"cwd": ".crabpot/workspaces/clawrouter",
|
||||
"artifactPath": null,
|
||||
"exitCode": 0,
|
||||
"wallMs": 7565,
|
||||
"peakRssMb": 1123.9,
|
||||
"peakCpuPercent": 349.6,
|
||||
"cpuMsEstimate": 17790
|
||||
},
|
||||
{
|
||||
"fixture": "clawrouter",
|
||||
"entrypoint": "cold-import.extension:clawrouter:plugins-clawrouter-dist-index-js",
|
||||
"packagePath": "plugins/clawrouter/package.json",
|
||||
"status": "dependency-install-required",
|
||||
"kind": "prepare",
|
||||
"command": "mkdir -p .crabpot/workspaces/clawrouter && rsync -a --delete plugins/clawrouter/ .crabpot/workspaces/clawrouter/",
|
||||
"cwd": ".",
|
||||
"artifactPath": null,
|
||||
"exitCode": 0,
|
||||
"wallMs": 4427,
|
||||
"peakRssMb": 0,
|
||||
"peakCpuPercent": 0,
|
||||
"cpuMsEstimate": 0
|
||||
},
|
||||
{
|
||||
"fixture": "clawrouter",
|
||||
"entrypoint": "cold-import.extension:clawrouter:plugins-clawrouter-dist-index-js",
|
||||
"packagePath": "plugins/clawrouter/package.json",
|
||||
"status": "dependency-install-required",
|
||||
"kind": "audit",
|
||||
"command": "npm audit --json > ../../results/clawrouter/package-audit.json || true",
|
||||
"cwd": ".crabpot/workspaces/clawrouter",
|
||||
"artifactPath": ".crabpot/results/clawrouter/package-audit.json",
|
||||
"exitCode": 0,
|
||||
"rawExitCode": 1,
|
||||
"wallMs": 1526,
|
||||
"peakRssMb": 110.3,
|
||||
"peakCpuPercent": 40.8,
|
||||
"cpuMsEstimate": 477
|
||||
},
|
||||
{
|
||||
"fixture": "clawrouter",
|
||||
"entrypoint": "cold-import.extension:clawrouter:plugins-clawrouter-dist-index-js",
|
||||
"packagePath": "plugins/clawrouter/package.json",
|
||||
"status": "dependency-install-required",
|
||||
"kind": "capture",
|
||||
"command": "CRABPOT_EXECUTE_ISOLATED=1 node ../../../scripts/run-cold-import-capture.mjs ./dist/index.js --mock-sdk --output ../../results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.capture.json",
|
||||
"cwd": ".crabpot/workspaces/clawrouter",
|
||||
"artifactPath": ".crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.capture.json",
|
||||
"exitCode": 0,
|
||||
"wallMs": 1225,
|
||||
"peakRssMb": 78.7,
|
||||
"peakCpuPercent": 16.8,
|
||||
"cpuMsEstimate": 145
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"artifactPath": ".crabpot/results/clawrouter/package-audit.json",
|
||||
"fixture": "clawrouter",
|
||||
"kind": "audit",
|
||||
"entrypoint": "-",
|
||||
"status": "warning",
|
||||
"findingCount": 12,
|
||||
"vulnerabilities": {
|
||||
"info": 0,
|
||||
"low": 0,
|
||||
"moderate": 11,
|
||||
"high": 1,
|
||||
"critical": 0,
|
||||
"total": 12
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@ -5,70 +5,30 @@ Results dir: .crabpot/results
|
||||
|
||||
## Summary
|
||||
|
||||
| Metric | Value |
|
||||
| ---------------------------- | --------- |
|
||||
| Artifacts | 4 |
|
||||
| Capture artifacts | 1 |
|
||||
| Synthetic artifacts | 1 |
|
||||
| Audit artifacts | 1 |
|
||||
| Profile artifacts | 1 |
|
||||
| Captured registrations/hooks | 30 |
|
||||
| Audit findings | 12 |
|
||||
| Execution wall | 27807 ms |
|
||||
| Max peak RSS | 1123.9 MB |
|
||||
| Max CPU estimate | 17790 ms |
|
||||
| Pass | 12 |
|
||||
| Fail | 0 |
|
||||
| Blocked | 18 |
|
||||
| Metric | Value |
|
||||
| ---------------------------- | ----- |
|
||||
| Artifacts | 2 |
|
||||
| Capture artifacts | 1 |
|
||||
| Synthetic artifacts | 1 |
|
||||
| Captured registrations/hooks | 8 |
|
||||
| Pass | 6 |
|
||||
| Fail | 0 |
|
||||
| Blocked | 2 |
|
||||
|
||||
## Artifacts
|
||||
|
||||
| Fixture | Kind | Status | Entrypoint | Result | Artifact |
|
||||
| ---------- | --------- | -------- | -------------------------------------------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------ |
|
||||
| clawrouter | capture | captured | .crabpot/workspaces/clawrouter/dist/index.js | 30 captured | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.capture.json |
|
||||
| clawrouter | synthetic | captured | .crabpot/workspaces/clawrouter/dist/index.js | 12 pass / 0 fail / 18 blocked | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | profile | pass | - | 7 steps / 27807 ms / 1123.9 MB | .crabpot/results/clawrouter/execution-profile.json |
|
||||
| clawrouter | audit | warning | - | 12 audit findings | .crabpot/results/clawrouter/package-audit.json |
|
||||
| Fixture | Kind | Status | Entrypoint | Result | Artifact |
|
||||
| ------- | --------- | -------- | ---------------------------------- | --------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
| wecom | capture | captured | .crabpot/workspaces/wecom/index.js | 8 captured | .crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.capture.json |
|
||||
| wecom | synthetic | captured | .crabpot/workspaces/wecom/index.js | 6 pass / 0 fail / 2 blocked | .crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json |
|
||||
|
||||
## Blocked Synthetic Probes
|
||||
|
||||
| Fixture | Kind | Seam | Label | Reason | Artifact |
|
||||
| ---------- | ------------ | --------------- | -------------------- | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerTool | registerTool.execute | captured tool requires live network access | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | registration | registerService | registerService | captured registration requires includeLifecycle=true | .crabpot/results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| Fixture | Kind | Seam | Label | Reason | Artifact |
|
||||
| ------- | ------------ | --------------- | --------------- | --------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
| wecom | registration | registerChannel | registerChannel | captured registration requires includeChannelRuntime=true | .crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json |
|
||||
| wecom | registration | registerTool | registerTool | captured registration has no object descriptor | .crabpot/results/wecom/cold-import-extension-wecom-plugins-wecom-index-js.synthetic.json |
|
||||
|
||||
## Failed Synthetic Probes
|
||||
|
||||
_none_
|
||||
|
||||
## Dependency Audit Artifacts
|
||||
|
||||
| Fixture | Findings | Vulnerabilities | Artifact |
|
||||
| ---------- | -------- | ----------------------------------------------------------------- | ---------------------------------------------- |
|
||||
| clawrouter | 12 | {"info":0,"low":0,"moderate":11,"high":1,"critical":0,"total":12} | .crabpot/results/clawrouter/package-audit.json |
|
||||
|
||||
## Execution Profiles
|
||||
|
||||
| Fixture | Step | Wall | Peak RSS | CPU Estimate | Command |
|
||||
| ---------- | --------------- | -------- | --------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| clawrouter | synthetic-probe | 12125 ms | 139 MB | 593 ms | CRABPOT_EXECUTE_ISOLATED=1 node ../../../scripts/synthetic-probes.mjs --entrypoint ./dist/index.js --mock-sdk --output ../../results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.synthetic.json |
|
||||
| clawrouter | install | 7565 ms | 1123.9 MB | 17790 ms | npm install --ignore-scripts |
|
||||
| clawrouter | prepare | 4427 ms | 0 MB | 0 ms | mkdir -p .crabpot/workspaces/clawrouter && rsync -a --delete plugins/clawrouter/ .crabpot/workspaces/clawrouter/ |
|
||||
| clawrouter | audit | 1526 ms | 110.3 MB | 477 ms | npm audit --json > ../../results/clawrouter/package-audit.json || true |
|
||||
| clawrouter | capture | 1225 ms | 78.7 MB | 145 ms | CRABPOT_EXECUTE_ISOLATED=1 node ../../../scripts/run-cold-import-capture.mjs ./dist/index.js --mock-sdk --output ../../results/clawrouter/cold-import-extension-clawrouter-plugins-clawrouter-dist-index-js.capture.json |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,35 +0,0 @@
|
||||
# Crabpot Generated Surface Fixture
|
||||
|
||||
Generated: 2026-05-05T03:26:53.567Z
|
||||
Status: PASS
|
||||
|
||||
## Summary
|
||||
|
||||
| Metric | Value |
|
||||
| --------------------------- | ----- |
|
||||
| Expected hooks | 35 |
|
||||
| Expected registrars | 49 |
|
||||
| Expected direct callbacks | 1 |
|
||||
| Expected SDK exports | 296 |
|
||||
| Expected manifest contracts | 17 |
|
||||
| Static hooks | 35 |
|
||||
| Static registrars | 49 |
|
||||
| Static SDK imports | 296 |
|
||||
| Static manifest contracts | 17 |
|
||||
| Runtime hooks | 35 |
|
||||
| Runtime registrars | 49 |
|
||||
| Runtime direct callbacks | 1 |
|
||||
| Missing static surface | 0 |
|
||||
| Missing runtime surface | 0 |
|
||||
|
||||
## Missing Static Surface
|
||||
|
||||
_none_
|
||||
|
||||
## Missing Runtime Surface
|
||||
|
||||
_none_
|
||||
|
||||
## Errors
|
||||
|
||||
_none_
|
||||
@ -1,162 +1,13 @@
|
||||
{
|
||||
"generatedAt": "deterministic",
|
||||
"mode": "openclaw-loader-lifecycle-profile",
|
||||
"mode": "subprocess-cold-import-loop",
|
||||
"entrypoint": "test/fixtures/lazy-import-plugin.mjs",
|
||||
"baseline": {
|
||||
"mode": "minimal-plugin-capture",
|
||||
"runs": 3,
|
||||
"entrypoint": ".crabpot/import-loop/baseline-plugin.mjs",
|
||||
"reference": {
|
||||
"wallMs": 2442,
|
||||
"peakRssMb": 334.6,
|
||||
"cpuMsEstimate": 4745
|
||||
},
|
||||
"max": {
|
||||
"wallMs": 2958,
|
||||
"peakRssMb": 347.9,
|
||||
"cpuMsEstimate": 5384
|
||||
},
|
||||
"statSampleCount": 306,
|
||||
"rssSampleCount": 306,
|
||||
"cpuSampleCount": 306,
|
||||
"failCount": 0,
|
||||
"samples": [
|
||||
{
|
||||
"index": 0,
|
||||
"exitCode": 0,
|
||||
"status": "captured",
|
||||
"capturedCount": 2,
|
||||
"openClawLifecycle": {
|
||||
"status": "loaded",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"importPhase": "full",
|
||||
"activationPhase": "full:register",
|
||||
"importMs": 84.8,
|
||||
"activationMs": 0.3,
|
||||
"openclawPath": "/home/runner/work/crabpot/crabpot/openclaw",
|
||||
"phases": [
|
||||
{
|
||||
"phase": "full",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 84.8,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-g9AntI/index.mjs"
|
||||
},
|
||||
{
|
||||
"phase": "full:register",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 0.3,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-g9AntI/index.mjs"
|
||||
}
|
||||
]
|
||||
},
|
||||
"wallMs": 2958,
|
||||
"peakRssMb": 334.6,
|
||||
"peakCpuPercent": 201,
|
||||
"cpuMsEstimate": 5384,
|
||||
"statSampleCount": 116,
|
||||
"rssSampleCount": 116,
|
||||
"cpuSampleCount": 116,
|
||||
"stderrPreview": ""
|
||||
},
|
||||
{
|
||||
"index": 1,
|
||||
"exitCode": 0,
|
||||
"status": "captured",
|
||||
"capturedCount": 2,
|
||||
"openClawLifecycle": {
|
||||
"status": "loaded",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"importPhase": "full",
|
||||
"activationPhase": "full:register",
|
||||
"importMs": 80.5,
|
||||
"activationMs": 0.3,
|
||||
"openclawPath": "/home/runner/work/crabpot/crabpot/openclaw",
|
||||
"phases": [
|
||||
{
|
||||
"phase": "full",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 80.5,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-xTmlDT/index.mjs"
|
||||
},
|
||||
{
|
||||
"phase": "full:register",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 0.3,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-xTmlDT/index.mjs"
|
||||
}
|
||||
]
|
||||
},
|
||||
"wallMs": 2384,
|
||||
"peakRssMb": 323.7,
|
||||
"peakCpuPercent": 223,
|
||||
"cpuMsEstimate": 4656,
|
||||
"statSampleCount": 94,
|
||||
"rssSampleCount": 94,
|
||||
"cpuSampleCount": 94,
|
||||
"stderrPreview": ""
|
||||
},
|
||||
{
|
||||
"index": 2,
|
||||
"exitCode": 0,
|
||||
"status": "captured",
|
||||
"capturedCount": 2,
|
||||
"openClawLifecycle": {
|
||||
"status": "loaded",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"importPhase": "full",
|
||||
"activationPhase": "full:register",
|
||||
"importMs": 93,
|
||||
"activationMs": 0.4,
|
||||
"openclawPath": "/home/runner/work/crabpot/crabpot/openclaw",
|
||||
"phases": [
|
||||
{
|
||||
"phase": "full",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 93,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-AFW5fW/index.mjs"
|
||||
},
|
||||
{
|
||||
"phase": "full:register",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 0.4,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-AFW5fW/index.mjs"
|
||||
}
|
||||
]
|
||||
},
|
||||
"wallMs": 2442,
|
||||
"peakRssMb": 347.9,
|
||||
"peakCpuPercent": 223,
|
||||
"cpuMsEstimate": 4745,
|
||||
"statSampleCount": 96,
|
||||
"rssSampleCount": 96,
|
||||
"cpuSampleCount": 96,
|
||||
"stderrPreview": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
"summary": {
|
||||
"runs": 3,
|
||||
"baselineRuns": 3,
|
||||
"baselineFailCount": 0,
|
||||
"p50WallMs": 2421,
|
||||
"p95WallMs": 2471,
|
||||
"p50PluginWallDeltaMs": 0,
|
||||
"p95PluginWallDeltaMs": 29,
|
||||
"openClawLifecycleCount": 3,
|
||||
"p50OpenClawImportMs": 84,
|
||||
"p95OpenClawImportMs": 88.6,
|
||||
"p50OpenClawActivationMs": 0.3,
|
||||
"p95OpenClawActivationMs": 1.2,
|
||||
"maxPeakRssMb": 347.9,
|
||||
"maxCpuMsEstimate": 4780,
|
||||
"maxPluginPeakRssDeltaMb": 13.3,
|
||||
"maxPluginCpuDeltaMsEstimate": 35,
|
||||
"baselineReferenceWallMs": 2442,
|
||||
"baselineReferencePeakRssMb": 334.6,
|
||||
"baselineReferenceCpuMsEstimate": 4745,
|
||||
"statSampleCount": 287,
|
||||
"rssSampleCount": 287,
|
||||
"cpuSampleCount": 287,
|
||||
"p50WallMs": 950,
|
||||
"p95WallMs": 1023,
|
||||
"maxPeakRssMb": 45.5,
|
||||
"maxCpuMsEstimate": 208,
|
||||
"capturedCount": 6,
|
||||
"failCount": 0
|
||||
},
|
||||
@ -166,120 +17,33 @@
|
||||
"exitCode": 0,
|
||||
"status": "captured",
|
||||
"capturedCount": 2,
|
||||
"openClawLifecycle": {
|
||||
"status": "loaded",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"importPhase": "full",
|
||||
"activationPhase": "full:register",
|
||||
"importMs": 84,
|
||||
"activationMs": 0.3,
|
||||
"openclawPath": "/home/runner/work/crabpot/crabpot/openclaw",
|
||||
"phases": [
|
||||
{
|
||||
"phase": "full",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 84,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-3UJxq3/index.mjs"
|
||||
},
|
||||
{
|
||||
"phase": "full:register",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 0.3,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-3UJxq3/index.mjs"
|
||||
}
|
||||
]
|
||||
},
|
||||
"wallMs": 2471,
|
||||
"peakRssMb": 342.6,
|
||||
"peakCpuPercent": 220,
|
||||
"cpuMsEstimate": 4780,
|
||||
"statSampleCount": 97,
|
||||
"rssSampleCount": 97,
|
||||
"cpuSampleCount": 97,
|
||||
"stderrPreview": "",
|
||||
"pluginWallDeltaMs": 29,
|
||||
"pluginPeakRssDeltaMb": 8,
|
||||
"pluginCpuDeltaMsEstimate": 35
|
||||
"wallMs": 950,
|
||||
"peakRssMb": 44.2,
|
||||
"peakCpuPercent": 21.9,
|
||||
"cpuMsEstimate": 208,
|
||||
"stderrPreview": ""
|
||||
},
|
||||
{
|
||||
"index": 1,
|
||||
"exitCode": 0,
|
||||
"status": "captured",
|
||||
"capturedCount": 2,
|
||||
"openClawLifecycle": {
|
||||
"status": "loaded",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"importPhase": "full",
|
||||
"activationPhase": "full:register",
|
||||
"importMs": 81.8,
|
||||
"activationMs": 0.3,
|
||||
"openclawPath": "/home/runner/work/crabpot/crabpot/openclaw",
|
||||
"phases": [
|
||||
{
|
||||
"phase": "full",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 81.8,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-gwHDg0/index.mjs"
|
||||
},
|
||||
{
|
||||
"phase": "full:register",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 0.3,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-gwHDg0/index.mjs"
|
||||
}
|
||||
]
|
||||
},
|
||||
"wallMs": 2421,
|
||||
"peakRssMb": 333.8,
|
||||
"peakCpuPercent": 225,
|
||||
"cpuMsEstimate": 4743,
|
||||
"statSampleCount": 96,
|
||||
"rssSampleCount": 96,
|
||||
"cpuSampleCount": 96,
|
||||
"stderrPreview": "",
|
||||
"pluginWallDeltaMs": 0,
|
||||
"pluginPeakRssDeltaMb": 0,
|
||||
"pluginCpuDeltaMsEstimate": 0
|
||||
"wallMs": 1023,
|
||||
"peakRssMb": 11.7,
|
||||
"peakCpuPercent": 1.6,
|
||||
"cpuMsEstimate": 16,
|
||||
"stderrPreview": ""
|
||||
},
|
||||
{
|
||||
"index": 2,
|
||||
"exitCode": 0,
|
||||
"status": "captured",
|
||||
"capturedCount": 2,
|
||||
"openClawLifecycle": {
|
||||
"status": "loaded",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"importPhase": "full",
|
||||
"activationPhase": "full:register",
|
||||
"importMs": 88.6,
|
||||
"activationMs": 1.2,
|
||||
"openclawPath": "/home/runner/work/crabpot/crabpot/openclaw",
|
||||
"phases": [
|
||||
{
|
||||
"phase": "full",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 88.6,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-78B9Ov/index.mjs"
|
||||
},
|
||||
{
|
||||
"phase": "full:register",
|
||||
"pluginId": "crabpot-lifecycle-probe",
|
||||
"elapsedMs": 1.2,
|
||||
"source": "/tmp/crabpot-openclaw-plugin-78B9Ov/index.mjs"
|
||||
}
|
||||
]
|
||||
},
|
||||
"wallMs": 2392,
|
||||
"peakRssMb": 347.9,
|
||||
"peakCpuPercent": 220,
|
||||
"cpuMsEstimate": 4639,
|
||||
"statSampleCount": 94,
|
||||
"rssSampleCount": 94,
|
||||
"cpuSampleCount": 94,
|
||||
"stderrPreview": "",
|
||||
"pluginWallDeltaMs": 0,
|
||||
"pluginPeakRssDeltaMb": 13.3,
|
||||
"pluginCpuDeltaMsEstimate": 0
|
||||
"wallMs": 740,
|
||||
"peakRssMb": 45.5,
|
||||
"peakCpuPercent": 24.8,
|
||||
"cpuMsEstimate": 184,
|
||||
"stderrPreview": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@ -1,58 +1,25 @@
|
||||
# Crabpot Import Loop Profile
|
||||
|
||||
Generated: deterministic
|
||||
Mode: openclaw-loader-lifecycle-profile
|
||||
Mode: subprocess-cold-import-loop
|
||||
Entrypoint: test/fixtures/lazy-import-plugin.mjs
|
||||
|
||||
## Summary
|
||||
|
||||
| Metric | Value |
|
||||
| ------------------------------ | -------- |
|
||||
| runs | 3 |
|
||||
| baselineRuns | 3 |
|
||||
| baselineFailCount | 0 |
|
||||
| p50WallMs | 2421 |
|
||||
| p95WallMs | 2471 |
|
||||
| p50PluginWallDeltaMs | 0 |
|
||||
| p95PluginWallDeltaMs | 29 |
|
||||
| maxPluginPeakRssDeltaMb | 13.3 MB |
|
||||
| maxPluginCpuDeltaMsEstimate | 35 ms |
|
||||
| openClawLifecycleCount | 3 |
|
||||
| p50OpenClawImportMs | 84 ms |
|
||||
| p95OpenClawImportMs | 88.6 ms |
|
||||
| p50OpenClawActivationMs | 0.3 ms |
|
||||
| p95OpenClawActivationMs | 1.2 ms |
|
||||
| maxPeakRssMb | 347.9 MB |
|
||||
| maxCpuMsEstimate | 4780 ms |
|
||||
| baselineReferenceWallMs | 2442 ms |
|
||||
| baselineReferencePeakRssMb | 334.6 MB |
|
||||
| baselineReferenceCpuMsEstimate | 4745 ms |
|
||||
| statSampleCount | 287 |
|
||||
| rssSampleCount | 287 |
|
||||
| cpuSampleCount | 287 |
|
||||
| capturedCount | 6 |
|
||||
| failCount | 0 |
|
||||
|
||||
## Harness Baseline
|
||||
|
||||
| Metric | Value |
|
||||
| ---------------------- | ---------------------------------------- |
|
||||
| mode | minimal-plugin-capture |
|
||||
| runs | 3 |
|
||||
| entrypoint | .crabpot/import-loop/baseline-plugin.mjs |
|
||||
| referenceWallMs | 2442 ms |
|
||||
| referencePeakRssMb | 334.6 MB |
|
||||
| referenceCpuMsEstimate | 4745 ms |
|
||||
| maxWallMs | 2958 ms |
|
||||
| maxPeakRssMb | 347.9 MB |
|
||||
| maxCpuMsEstimate | 5384 ms |
|
||||
| statSampleCount | 306 |
|
||||
| failCount | 0 |
|
||||
| Metric | Value |
|
||||
| ---------------- | ----- |
|
||||
| runs | 3 |
|
||||
| p50WallMs | 950 |
|
||||
| p95WallMs | 1023 |
|
||||
| maxPeakRssMb | 45.5 |
|
||||
| maxCpuMsEstimate | 208 |
|
||||
| capturedCount | 6 |
|
||||
| failCount | 0 |
|
||||
|
||||
## Samples
|
||||
|
||||
| Run | Status | Captured | OpenClaw Import | OpenClaw Activate | Plugin Wall Delta | Plugin RSS Delta | Plugin CPU Delta | Raw Wall | Raw Peak RSS | Raw CPU Estimate | RSS/CPU samples | Exit |
|
||||
| --- | -------- | -------- | --------------- | ----------------- | ----------------- | ---------------- | ---------------- | -------- | ------------ | ---------------- | --------------- | ---- |
|
||||
| 0 | captured | 2 | 84 ms | 0.3 ms | 29 ms | 8 MB | 35 ms | 2471 ms | 342.6 MB | 4780 ms | 97/97 | 0 |
|
||||
| 1 | captured | 2 | 81.8 ms | 0.3 ms | 0 ms | 0 MB | 0 ms | 2421 ms | 333.8 MB | 4743 ms | 96/96 | 0 |
|
||||
| 2 | captured | 2 | 88.6 ms | 1.2 ms | 0 ms | 13.3 MB | 0 ms | 2392 ms | 347.9 MB | 4639 ms | 94/94 | 0 |
|
||||
| Run | Status | Captured | Wall | Peak RSS | CPU Estimate | Exit |
|
||||
| --- | -------- | -------- | ------- | -------- | ------------ | ---- |
|
||||
| 0 | captured | 2 | 950 ms | 44.2 MB | 208 ms | 0 |
|
||||
| 1 | captured | 2 | 1023 ms | 11.7 MB | 16 ms | 0 |
|
||||
| 2 | captured | 2 | 740 ms | 45.5 MB | 184 ms | 0 |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user