Skip to content

Breaking: unify route destinations and BPRoute controls for v11 - #116

Merged
bcbetterninja merged 7 commits into
masterfrom
feature/bp-route-components
Oct 12, 2026
Merged

bcbetterninja merged 7 commits into
masterfrom
feature/bp-route-components

Conversation

@bcbetterninja

@bcbetterninja bcbetterninja commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Service-rendered links repeatedly selected mounted UI paths instead of service destinations, and older shell metadata left /batches/1 anchors without the HTMX request or mounted prefix. This breaking change makes BPRoute the normal JSX interface and ctx.route() the explicit destination resolver, then fixes service-owned link mapping in the shared theme runtime.

  • Remove routeUrl, uiRouteUrl, renderer ctx.url, routeUi attribute helpers and BPElement; old usage fails types/authoring/ESLint. Move renderer metadata to routeInfo.
  • Keep six destination fields, add API/view-specific string conversion and immutable component/fragment selection, and expose the typed JSX facade. BPRoute owns link/button/form/embedding behaviour, per-state elements/attributes, effective HTMX methods, explicit overrides, and distinct authentication/permission/error states. Mutations do not replay after failed authentication.
  • Resolve ordinary service paths against their owning service before unrelated UI aliases. Recognize encoded placeholders from older shell metadata only for parameters declared by the UI mount. Plain anchors gain the service hx-get, main target/swap and mounted href/history.
  • Migrate repository services, themes, examples, native definitions and shared contracts. Update TSDoc, ESLint rules/docs, Markdown, generated LLM guidance, theme resources and the 11.0.0 changelog with specific examples. Custom themes bundling the runtime must rebuild/redeploy; preload annotations alone do not confirm routing.
  • Prepare Node workspaces at 11.0.0. Python publishing remains explicitly deferred; PR feat(python): configure trusted PyPI publishing #105 is excluded.

Validation: complete Node workspace suite and lint pass; 199 framework tests (including the additional review path-classification regression) and 56 shared-runtime tests cover actual JSX state overrides, UUID mounting/history, service/UI collisions and failed DELETE fallback isolation. Full HTTP interoperability passed 7,050/7,050 cases. Rebuilt native generators, positive/negative compiler checks and executable documentation pass. Review fixes include Python service-fragment shell composition, canonical nullable C# route args and linear handler path classification for the CodeQL finding. Additional review regressions cover browser caller policy (including platform-root), precise JSX lint locations and actual Node-hosted shell fragment insertion. Final edge-case regressions cover swap-only controls in Chromium, native target/swap aliases and OPTIONS rejection. GitHub checks must pass before merge.

@coderabbitai

coderabbitai Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 192 files, which is 42 over the limit of 150.

To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to Team to raise the limit.

This review is too large to run within your organization's remaining usage spending cap. Raise or remove your spending cap in the billing tab, then retry.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: d9a1d17c-eaeb-46d0-b4d3-194de19f7827
📥 Commits

Reviewing files that changed from the base of the PR and between e3daf90 and 68bd49c.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (192)
  • automations/n8n/package.json
  • automations/node-red/package.json
  • automations/zapier/package.json
  • docs/building/bp-route.md
  • docs/building/route-authoring.md
  • docs/building/routes-and-views.md
  • docs/building/routing-lint.md
  • docs/building/shell-links.md
  • docs/building/themes.md
  • docs/operations/deployment.md
  • docs/plans/page-chrome-and-navigation.md
  • docs/releases/10.7.0.md
  • docs/releases/10.7.1.md
  • docs/releases/11.0.0.md
  • eslint.config.mjs
  • framework/conformance/check_packages.py
  • framework/conformance/check_python_themes.py
  • framework/conformance/check_types.py
  • framework/conformance/contracts/BPRouteReferenceSchema.json
  • framework/conformance/contracts/ResolvedBPRouteReferenceSchema.json
  • framework/conformance/contracts/ResolvedRouteSchema.json
  • framework/conformance/contracts/RouteOptionsSchema.json
  • framework/conformance/contracts/RouteUiOptionsSchema.json
  • framework/conformance/export-contracts.mjs
  • framework/conformance/node-hosting.mjs
  • framework/conformance/node-registry.mjs
  • framework/conformance/node-urls.mjs
  • framework/conformance/python_hosting.py
  • framework/conformance/python_snapshots.py
  • framework/conformance/schema-cases.json
  • framework/conformance/url_cases.py
  • framework/dotnet/BetterPortal.Tool/TypeGenerator.cs
  • framework/dotnet/BetterPortal/GeneratedTypes.cs
  • framework/dotnet/BetterPortal/Handler.cs
  • framework/dotnet/BetterPortal/Registry.cs
  • framework/dotnet/BetterPortal/Rendering.cs
  • framework/dotnet/BetterPortal/RouteDestination.cs
  • framework/dotnet/BetterPortal/Urls.cs
  • framework/dotnet/Conformance/FeedProbe.cs
  • framework/dotnet/Conformance/HostingAdapter.cs
  • framework/dotnet/Conformance/SnapshotAdapter.cs
  • framework/dotnet/README.md
  • framework/nodejs/package.json
  • framework/nodejs/src/adapters/h3.ts
  • framework/nodejs/src/codegen/init.ts
  • framework/nodejs/src/codegen/routeUrlPolicy.ts
  • framework/nodejs/src/codegen/routingRules.ts
  • framework/nodejs/src/contracts/registry.ts
  • framework/nodejs/src/contracts/route.ts
  • framework/nodejs/src/contracts/routing.ts
  • framework/nodejs/src/contracts/streaming.ts
  • framework/nodejs/src/eslint.ts
  • framework/nodejs/src/index.ts
  • framework/nodejs/src/jsx-dev-runtime.ts
  • framework/nodejs/src/jsx-runtime.ts
  • framework/nodejs/src/runtime/auth/redirect.ts
  • framework/nodejs/src/runtime/element.ts
  • framework/nodejs/src/runtime/llms.ts
  • framework/nodejs/src/runtime/registry.ts
  • framework/nodejs/src/runtime/routeResult.ts
  • framework/nodejs/tests/authRedirect.test.ts
  • framework/nodejs/tests/codegenValidate.test.ts
  • framework/nodejs/tests/element.test.ts
  • framework/nodejs/tests/llms.test.ts
  • framework/nodejs/tests/routeAllowlist.test.ts
  • framework/nodejs/tests/routeUrlPolicy.test.ts
  • framework/nodejs/tests/sse.test.ts
  • framework/python/README.md
  • framework/python/betterportal/auth_helpers.py
  • framework/python/betterportal/generated_types.py
  • framework/python/betterportal/handler.py
  • framework/python/betterportal/registry.py
  • framework/python/betterportal/rendering.py
  • framework/python/betterportal/themes.py
  • framework/python/betterportal/urls.py
  • llms.txt
  • package.json
  • plugins/nodejs/betterportal-bsb/package.json
  • plugins/nodejs/betterportal-bsb/src/service.ts
  • services/nodejs/admin/config-manager/package.json
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/auth/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/config/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/config/_renderer.embedded/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/fragments/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/menu/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/preview-environments/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/preview-environments/_renderer.bootstrap5/config.GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/preview-environments/_renderer.bootstrap5/debug.GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/preview/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/services/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/settings/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/src/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.tsx
  • services/nodejs/admin/config-manager/tests/actionDestinations.test.ts
  • services/nodejs/admin/config-manager/tests/previewDefinitions.test.ts
  • services/nodejs/admin/config-manager/tests/previewSync.test.ts
  • services/nodejs/admin/config-manager/tests/regressions.test.ts
  • services/nodejs/admin/config-manager/tsconfig.json
  • services/nodejs/auth-authress-io/README.md
  • services/nodejs/auth-authress-io/package.json
  • services/nodejs/auth-authress-io/src/plugins/service-betterportal-auth-authress-io/bp-routes/login/_renderer.bootstrap5/GET.tsx
  • services/nodejs/auth-authress-io/src/plugins/service-betterportal-auth-authress-io/bp-routes/login/_renderer.bootstrap5/_background.monitor.GET.tsx
  • services/nodejs/auth-authress-io/src/plugins/service-betterportal-auth-authress-io/bp-routes/login/_renderer.bootstrap5/_nav.profile.GET.tsx
  • services/nodejs/auth-authress-io/src/plugins/service-betterportal-auth-authress-io/bp-routes/login/_renderer.embedded/_background.monitor.GET.tsx
  • services/nodejs/auth-authress-io/src/plugins/service-betterportal-auth-authress-io/bp-routes/logout/GET.ts
  • services/nodejs/auth-authress-io/tests/loginBrowser.test.ts
  • services/nodejs/auth-authress-io/tests/logoutRenderer.test.ts
  • services/nodejs/auth-authress-io/tsconfig.json
  • services/nodejs/auth-default/package.json
  • services/nodejs/auth-default/src/account.ts
  • services/nodejs/auth-default/src/accountUI.tsx
  • services/nodejs/auth-default/src/plugins/service-betterportal-auth-default/bp-routes/login/_renderer.bootstrap5/GET.tsx
  • services/nodejs/auth-default/src/plugins/service-betterportal-auth-default/bp-routes/login/_renderer.bootstrap5/_nav.profile.GET.tsx
  • services/nodejs/auth-default/src/plugins/service-betterportal-auth-default/bp-routes/logout/_renderer.bootstrap5/GET.tsx
  • services/nodejs/auth-default/src/plugins/service-betterportal-auth-default/bp-routes/register/_renderer.bootstrap5/GET.tsx
  • services/nodejs/auth-default/src/plugins/service-betterportal-auth-default/bp-routes/social/_renderer.bootstrap5/GET.tsx
  • services/nodejs/auth-default/src/plugins/service-betterportal-auth-default/bp-routes/users/_renderer.bootstrap5/GET.tsx
  • services/nodejs/auth-default/src/plugins/service-betterportal-auth-default/logoutFlow.ts
  • services/nodejs/auth-default/src/social.ts
  • services/nodejs/auth-default/tests/browser.test.ts
  • services/nodejs/auth-default/tests/logoutRenderer.test.ts
  • services/nodejs/auth-default/tests/platform.test.ts
  • services/nodejs/auth-default/tests/registrationRenderer.test.ts
  • services/nodejs/auth-default/tests/storageCases.ts
  • services/nodejs/auth-default/tests/usersUI.test.ts
  • services/nodejs/auth-default/tsconfig.json
  • services/nodejs/auth-workos/package.json
  • services/nodejs/auth-workos/src/plugins/service-betterportal-auth-workos/bp-routes/login/GET.ts
  • services/nodejs/auth-workos/src/plugins/service-betterportal-auth-workos/bp-routes/login/_renderer.bootstrap5/GET.tsx
  • services/nodejs/auth-workos/src/plugins/service-betterportal-auth-workos/bp-routes/login/_renderer.bootstrap5/_background.monitor.GET.tsx
  • services/nodejs/auth-workos/src/plugins/service-betterportal-auth-workos/bp-routes/login/_renderer.bootstrap5/_nav.profile.GET.tsx
  • services/nodejs/auth-workos/src/plugins/service-betterportal-auth-workos/bp-routes/login/_renderer.embedded/_background.monitor.GET.tsx
  • services/nodejs/auth-workos/src/plugins/service-betterportal-auth-workos/bp-routes/logout/GET.ts
  • services/nodejs/auth-workos/src/plugins/service-betterportal-auth-workos/index.ts
  • services/nodejs/auth-workos/tests/callbackUrl.test.ts
  • services/nodejs/auth-workos/tests/logoutRenderer.test.ts
  • services/nodejs/auth-workos/tsconfig.json
  • services/nodejs/docs-site/package.json
  • services/nodejs/docs-site/src/plugins/service-betterportal-docs-site/bp-routes/docs/[section]/[page]/_renderer.bootstrap5/GET.tsx
  • services/nodejs/docs-site/src/plugins/service-betterportal-docs-site/bp-routes/docs/_renderer.bootstrap5/GET.tsx
  • services/nodejs/docs-site/src/plugins/service-betterportal-docs-site/bp-routes/docs/rendering/markdown.tsx
  • services/nodejs/docs-site/tsconfig.json
  • services/nodejs/examples/hello-view/README.md
  • services/nodejs/examples/hello-view/package.json
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/about/_renderer.bootstrap5/GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/index.stream.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.clock.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.profile.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-cards.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-data.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-elements.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-forms.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-interactive.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-overlays.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-patterns.GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.embedded/GET.tsx
  • services/nodejs/examples/hello-view/src/plugins/service-betterportal-hello-view/bp-routes/landing/_renderer.bootstrap5/GET.tsx
  • services/nodejs/examples/hello-view/tsconfig.json
  • services/nodejs/registry/package.json
  • spec/ai.md
  • tests/lint.test.mjs
  • themes/nodejs/bootstrap1/bp-resources/SKILL.md
  • themes/nodejs/bootstrap1/bp-resources/page-template.tsx
  • themes/nodejs/bootstrap1/bp-resources/ui-guide.md
  • themes/nodejs/bootstrap1/package.json
  • themes/nodejs/bootstrap1/src/plugins/service-betterportal-theme-bootstrap1/shell/_theme-selector.tsx
  • themes/nodejs/bootstrap1/src/plugins/service-betterportal-theme-bootstrap1/shell/index.tsx
  • themes/nodejs/bootstrap1/tsconfig.json
  • themes/nodejs/bootstrap2/bp-resources/SKILL.md
  • themes/nodejs/bootstrap2/bp-resources/bootstrap5-examples.md
  • themes/nodejs/bootstrap2/bp-resources/critical-alert-fragment.tsx
  • themes/nodejs/bootstrap2/bp-resources/page-template.tsx
  • themes/nodejs/bootstrap2/bp-resources/queue-detail-example.md
  • themes/nodejs/bootstrap2/bp-resources/ui-guide.md
  • themes/nodejs/bootstrap2/package.json
  • themes/nodejs/bootstrap2/src/plugins/service-betterportal-theme-bootstrap2/shell/_theme-selector.tsx
  • themes/nodejs/bootstrap2/src/plugins/service-betterportal-theme-bootstrap2/shell/index.tsx
  • themes/nodejs/bootstrap2/tsconfig.json
  • themes/nodejs/embedded/bp-resources/SKILL.md
  • themes/nodejs/embedded/bp-resources/page-template.tsx
  • themes/nodejs/embedded/bp-resources/ui-guide.md
  • themes/nodejs/embedded/package.json
  • themes/nodejs/embedded/src/plugins/service-betterportal-theme-embedded/shell/index.tsx
  • themes/nodejs/embedded/tests/runtime.test.ts
  • themes/nodejs/embedded/tsconfig.json
  • themes/nodejs/runtime/README.md
  • themes/nodejs/runtime/package.json
  • themes/nodejs/runtime/src/runtime.ts
  • themes/nodejs/runtime/tests/navigation.test.ts
  • themes/nodejs/runtime/tests/runtime.test.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@socket-security

socket-security Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addednpm/​parse5@​8.0.11001008585100
Updatednpm/​@​betterportal/​framework@​10.7.1 ⏵ 11.0.0N/AN/AN/AN/AN/A
Updatednpm/​@​betterportal/​plugin-bsb@​10.7.1 ⏵ 11.0.0N/AN/AN/AN/AN/A
Updatednpm/​@​betterportal/​theme-runtime@​10.7.1 ⏵ 11.0.0N/AN/AN/AN/AN/A

View full report

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 177c9e4fa6

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread framework/python/betterportal/themes.py
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-12T22:48:29.056351Z 68bd49c New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fdb07769b8

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread framework/nodejs/src/adapters/h3.ts
Comment thread framework/nodejs/src/eslint.ts
@bcbetterninja

Copy link
Copy Markdown
Contributor Author

@codex review

@bcbetterninja

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: aecf492032

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread plugins/nodejs/betterportal-bsb/src/service.ts Outdated
@bcbetterninja

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3232d0de9f

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread framework/nodejs/src/runtime/element.ts Outdated
Comment thread framework/python/betterportal/themes.py
Comment thread framework/nodejs/src/runtime/element.ts

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a668de4b07

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread framework/nodejs/src/adapters/h3.ts
@bcbetterninja
bcbetterninja merged commit b26da80 into master Oct 12, 2026
13 checks passed
@bcbetterninja

Copy link
Copy Markdown
Contributor Author

Merged with the configured bcbetterninja signing key and released as v11.0.0. All PR/master CI and the release workflow passed; all 14 public Node packages are verified at latest=11.0.0. The eight BetterPortal easy1 services were rebuilt and deployed: seven public manifest/health probes pass at 11.0.0 (three samples each), the private registry logs confirm v11.0.0, and all 16 expected app replicas run. Source/settings verification passed.

Custom trg-one themes bundling the shared runtime still need their own rebuild/redeployment as documented. Python publishing PR #105 stays deferred. CodeRabbit skipped this large PR due its file/usage limit; the Codex review loop completed and every finding was fixed and resolved.

@bcbetterninja
bcbetterninja deleted the feature/bp-route-components branch October 12, 2026 23:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant