Skip to content

feat: add OpenClaw registry export bridge - #2953

Closed
giodl73-repo wants to merge 1 commit into
openclaw:mainfrom
giodl73-repo:registry-scan-bridge
Closed

feat: add OpenClaw registry export bridge#2953
giodl73-repo wants to merge 1 commit into
openclaw:mainfrom
giodl73-repo:registry-scan-bridge

Conversation

@giodl73-repo

@giodl73-repo giodl73-repo commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Keep the registry/scan bridge spec and make this PR code-backed.
  • Add a clawhub-schema OpenClaw registry export bridge helper that projects explicit ClawHub feed facts from an existing catalog feed entry.
  • Include stable export/idempotency identity, feed id/sequence/payload digest, entry state, publisher official fact, selected install candidate facts, source type, GitHub provenance when present, and empty OpenClaw review/scan/registry states.
  • Add focused tests for non-approval defaults, GitHub provenance, retry duplicate suppression, candidate membership validation, non-available entry state, copied GitHub candidate canonicalization, and distinct GitHub provenance keys.

Scope notes

  • This does not change the hosted feed wire schema or public feed payloads.
  • This does not submit candidates to OpenClaw, reflect OpenClaw decisions back into ClawHub, add scan/review persistence, or grant install eligibility.
  • ClawHub official publisher state remains a ClawHub publisher fact only; OpenClaw review, scan, registry inclusion, source-profile trust, package integrity, and local approval remain separate fields/gates.

Validation

  • git diff --check
  • git diff --cached --check
  • npx --yes oxfmt --check packages/schema/src/registryScanBridge.ts packages/schema/src/registryScanBridge.test.ts packages/schema/src/index.ts packages/schema/dist/registryScanBridge.js packages/schema/dist/registryScanBridge.d.ts packages/schema/dist/index.js packages/schema/dist/index.d.ts
  • node --check packages/schema/dist/registryScanBridge.js
  • Node import smoke: registry-bridge-ok for entry-state propagation, mismatched-candidate rejection, copied GitHub candidate acceptance, and distinct GitHub provenance idempotency keys
  • codex review --uncommitted - final rerun found no blocking correctness/security/maintainability issues after the candidate membership, entry-state, and GitHub provenance fixes

Not run locally

  • npx vitest run packages/schema/src/registryScanBridge.test.ts could not start in this Windows checkout because vitest.config.ts imports vitest/config and local dependencies are not installed (Cannot find package 'vitest'). CI should cover the focused test after push.
  • bunx tsc -p packages/schema/tsconfig.json --noEmit could not run because bunx/Bun is not installed in this Windows shell.

@vercel

vercel Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

@giodl73-repo is attempting to deploy a commit to the OpenClaw Foundation Team on Vercel.

A member of the Team first needs to authorize it.

@giodl73-repo
giodl73-repo force-pushed the registry-scan-bridge branch from b5c5867 to f23dd64 Compare July 3, 2026 04:00
@giodl73-repo giodl73-repo changed the title docs: add registry scan bridge spec feat: add OpenClaw registry export bridge Jul 3, 2026
@giodl73-repo

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

This is now code-backed at head f23dd64: adds the clawhub-schema OpenClaw registry export bridge helper, focused tests, and current validation in the PR body.

@clawsweeper

clawsweeper Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@clawsweeper clawsweeper Bot added proof: sufficient Contributor real behavior proof is sufficient. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. P2 Normal backlog priority with limited blast radius. merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. labels Jul 4, 2026
@clawsweeper

clawsweeper Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed July 22, 2026, 1:32 AM ET / 05:32 UTC.

Summary
The branch adds a versioned clawhub-schema helper that projects catalog-feed entries into an OpenClaw registry-export record, with focused tests, generated package artifacts, and an internal bridge-boundary specification.

Reproducibility: not applicable. This PR proposes a new library contract rather than repairing a reported failing behavior. The relevant evidence is the proposed API and its focused test cases, not a current-main bug reproduction.

Review metrics: 2 noteworthy metrics.

  • Patch surface: 760 added, 2 removed, 11 files changed. The proposal combines a new public schema API, generated package outputs, tests, and a durable design specification.
  • Focused test coverage: 7 stated behavior cases. The PR describes coverage for default states, candidate membership, entry state, and GitHub provenance/idempotency behavior.

Merge readiness
Overall: 🐚 platinum hermit
Proof: 🐚 platinum hermit
Patch quality: 🐚 platinum hermit
Result: ready for maintainer review.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • Obtain explicit maintainer sponsorship or rejection of the root-exported contract.
  • Rebase onto current main and refresh focused compatibility validation once the contract direction is approved.

Risk before merge

  • [P1] Merging a root-exported bridge contract commits ClawHub to public field names, idempotency semantics, and feed provenance behavior before a consuming OpenClaw integration or maintainer-approved compatibility policy exists.
  • [P1] The branch is conflicted with current main, so its final compatibility and generated-artifact state require a rebase and refreshed review before merge.

Maintainer options:

  1. Approve the stable contract, then refresh the branch (recommended)
    If maintainers want this package API, require a rebase onto current main and a focused compatibility review of the exported types and idempotency fields before merge.
  2. Defer the public export
    Keep the bridge out of the root schema package until a sponsored OpenClaw consumer defines the permanent contract and ownership boundary.

Next step before merge

  • [P2] A maintainer must choose the durable public API and feed-scope direction; no narrow automated repair can make that product decision or resolve the branch conflict safely.

Maintainer decision needed

  • Question: Should clawhub-schema publish and support this registry-export bridge as a stable cross-project contract now, or should the bridge remain unmerged until an approved OpenClaw consumer and ownership model exist?
  • Rationale: The patch is intentionally additive and does not have a mechanical correctness blocker, but accepting a root export defines a durable API and trust-boundary commitment that automated review cannot authorize.
  • Likely owner: Patrick-Erichsen — Their adjacent exporter work provides the closest available history signal for reviewing the public export boundary.
  • Options:
    • Sponsor the public bridge contract (recommended): Approve the versioned provenance-only API, then have the contributor rebase the draft and refresh compatibility validation against current main.
    • Keep it internal until a consumer lands: Do not expose a root package API until an approved OpenClaw integration establishes the required consumer, ownership, and upgrade contract.
    • Decline this contract shape: Close the direction if cross-project registry export should use a different integration boundary rather than clawhub-schema.

Security
Cleared: The reviewed diff adds deterministic schema projection and tests without changing credentials, execution hooks, dependency sources, permissions, or package publishing behavior.

Review details

Best possible solution:

First decide whether ClawHub should expose this as a stable cross-project schema contract; if approved, rebase it onto current main and retain explicit versioning, provenance-only semantics, and focused compatibility coverage before merging.

Do we have a high-confidence way to reproduce the issue?

Not applicable: this PR proposes a new library contract rather than repairing a reported failing behavior. The relevant evidence is the proposed API and its focused test cases, not a current-main bug reproduction.

Is this the best way to solve the issue?

Unclear: the implementation is narrowly scoped and preserves the intended trust boundary, but maintainers must first decide whether this stable root-exported API is the right integration boundary.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against a9775fc39b10.

Label changes

Label changes:

  • add rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🐚 platinum hermit and patch quality is 🐚 platinum hermit.
  • remove rating: 🦐 gold shrimp: Current PR rating is rating: 🐚 platinum hermit, so this older rating label is no longer current.

Label justifications:

  • P2: This is a bounded feature/API proposal with meaningful compatibility implications but no demonstrated urgent user-facing regression.
  • merge-risk: 🚨 compatibility: A root-exported schema helper establishes field, identity, and idempotency behavior that downstream consumers may rely on.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🐚 platinum hermit and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (terminal): The PR body documents an after-fix Node import smoke covering export behavior and validation of candidate/provenance cases; this is appropriate terminal proof for a pure schema helper.
  • proof: sufficient: Contributor real behavior proof is sufficient. The PR body documents an after-fix Node import smoke covering export behavior and validation of candidate/provenance cases; this is appropriate terminal proof for a pure schema helper.
Evidence reviewed

What I checked:

  • New public schema surface: The branch adds registryScanBridge to the root clawhub-schema export, making its types and builder a supported package-level API rather than an internal helper. (packages/schema/src/index.ts:11, f23dd647af27)
  • Bridge contract is additive: The proposed helper defines export identity, catalog provenance, candidate facts, and nullable OpenClaw review/scan/registry state; it deliberately does not submit, approve, or persist registry decisions. (packages/schema/src/registryScanBridge.ts:1, f23dd647af27)
  • Boundary intent is documented: The added bridge specification separates ClawHub publisher/feed facts from OpenClaw review, scanning, integrity, trust, and local-install approval decisions, matching the repository policy to preserve security-sensitive subsystem intent in specs/. (specs/registry-scan-bridge.md:1, f23dd647af27)
  • Prior review continuity: Eight prior completed ClawSweeper review cycles at the same head reported no actionable patch finding and identified maintainer approval of the stable public API/feed scope as the remaining blocker. (f23dd647af27)
  • Current merge state: GitHub reports this draft PR as dirty and non-mergeable against current main, so maintainer direction should be resolved before the branch is rebased and reviewed on a mergeable head. (a9775fc39b10)

Likely related people:

  • Patrick-Erichsen: Prior work on the related plugin-export surface indicates relevant context for deciding whether this registry-export API should become a stable package contract. (role: adjacent exporter contributor; confidence: low; files: packages/schema/src/index.ts)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.
Review history (8 earlier review cycles)
  • reviewed 2026-07-04T06:03:48.723Z sha f23dd64 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-04T08:18:40.602Z sha f23dd64 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-06T23:10:14.627Z sha f23dd64 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-07T01:13:08.607Z sha f23dd64 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-08T01:57:12.474Z sha f23dd64 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-09T02:13:43.184Z sha f23dd64 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-09T03:13:28.459Z sha f23dd64 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-09T03:44:17.951Z sha f23dd64 :: needs maintainer review before merge. :: none

@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. and removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. labels Jul 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

This pull request has been automatically marked as stale due to inactivity.
Please update it or it will be closed.

@github-actions github-actions Bot added the stale label Jul 30, 2026
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Closing due to inactivity.
If this PR should be revived, reopen it with current context and a fresh validation plan.

@github-actions github-actions Bot closed this Aug 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. P2 Normal backlog priority with limited blast radius. proof: sufficient Contributor real behavior proof is sufficient. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. stale status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant