Skip to content

Drop the inline-spec read paths; pointer configs are the only shape#969

Merged
RhysSullivan merged 1 commit into
mainfrom
drop-inline-spec-fallback
Jun 12, 2026
Merged

Drop the inline-spec read paths; pointer configs are the only shape#969
RhysSullivan merged 1 commit into
mainfrom
drop-inline-spec-fallback

Conversation

@RhysSullivan

@RhysSullivan RhysSullivan commented Jun 12, 2026

Copy link
Copy Markdown
Collaborator

What

With cloud backfilled out-of-band and the libSQL hosts rewriting at boot through the data-migration ledger (previous PR), every database converges on the pointer shape (specHash / introspectionHash) before this code reads it. This removes the transitional machinery:

  • The dual-read loaders no longer fall back to inline text — loadSpecText / loadIntrospectionJson read the blob store only.
  • The optional inline fields are gone from the stored-config schemas (openapi config.spec, graphql config.introspectionJson). addIntegration still accepts inline introspection JSON as input, but persists only the blob hash.
  • The graphql getConfig endpoint stops serving the introspection snapshot — same reasoning as the openapi spec removal earlier: it's a multi-MB build artifact no client reads.

Compatibility

A database that somehow reaches this code with an un-migrated inline row decodes (the schemas tolerate unknown fields) but resolves zero tools, rather than silently working off the inline text — the migrations are the supported path, and a test pins that behavior.

Testing

Projection of the new contract in spec-blob.test.ts (pointer reads work, inline rows yield no tools); full openapi/graphql suites and repo gates green.

Stack

  1. Remove the D1-to-R2 oversized-value offload #967
  2. Move inline specs to the blob table at boot on the libSQL hosts #968
  3. Drop the inline-spec read paths; pointer configs are the only shape #969 👈 current
  4. Project the heavy schema columns off the tool hot paths #970

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 12, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
executor-marketing 73d64a5 Commit Preview URL

Branch Preview URL
Jun 12 2026, 05:46 AM

@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Cloudflare preview

Torn down — the PR is closed.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 12, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
executor-cloud 73d64a5 Jun 12 2026, 05:47 AM

@pkg-pr-new

pkg-pr-new Bot commented Jun 12, 2026

Copy link
Copy Markdown

Open in StackBlitz

@executor-js/cli

npm i https://pkg.pr.new/@executor-js/cli@969

@executor-js/config

npm i https://pkg.pr.new/@executor-js/config@969

@executor-js/execution

npm i https://pkg.pr.new/@executor-js/execution@969

@executor-js/sdk

npm i https://pkg.pr.new/@executor-js/sdk@969

@executor-js/codemode-core

npm i https://pkg.pr.new/@executor-js/codemode-core@969

@executor-js/runtime-quickjs

npm i https://pkg.pr.new/@executor-js/runtime-quickjs@969

@executor-js/plugin-file-secrets

npm i https://pkg.pr.new/@executor-js/plugin-file-secrets@969

@executor-js/plugin-graphql

npm i https://pkg.pr.new/@executor-js/plugin-graphql@969

@executor-js/plugin-keychain

npm i https://pkg.pr.new/@executor-js/plugin-keychain@969

@executor-js/plugin-mcp

npm i https://pkg.pr.new/@executor-js/plugin-mcp@969

@executor-js/plugin-onepassword

npm i https://pkg.pr.new/@executor-js/plugin-onepassword@969

@executor-js/plugin-openapi

npm i https://pkg.pr.new/@executor-js/plugin-openapi@969

executor

npm i https://pkg.pr.new/executor@969

commit: 26b23dd

@RhysSullivan RhysSullivan force-pushed the spec-blob-boot-migration branch from 2536422 to 7b1a1e3 Compare June 12, 2026 05:41
@RhysSullivan RhysSullivan force-pushed the drop-inline-spec-fallback branch from 52c0bae to 26b23dd Compare June 12, 2026 05:41
@RhysSullivan RhysSullivan changed the base branch from spec-blob-boot-migration to main June 12, 2026 05:45
With cloud backfilled out-of-band and the libSQL hosts rewriting at boot
through the data-migration ledger, every database converges on the
pointer shape (specHash / introspectionHash) before this code reads it.
The transitional dual-read loaders and the optional inline fields
(openapi config.spec, graphql config.introspectionJson) are gone from
the stored-config schemas; addIntegration still ACCEPTS inline
introspection JSON as input, but persists only the blob hash.

The graphql getConfig endpoint also stops serving the introspection
snapshot — same reasoning as the openapi spec removal: it's a multi-MB
build artifact no client reads.
@RhysSullivan RhysSullivan force-pushed the drop-inline-spec-fallback branch from 26b23dd to 73d64a5 Compare June 12, 2026 05:45
@RhysSullivan RhysSullivan merged commit 9b8baa1 into main Jun 12, 2026
13 checks passed
@RhysSullivan RhysSullivan deleted the drop-inline-spec-fallback branch June 12, 2026 06:02
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