Skip to content

spec/llm: openai-chat packages don't need the sandbox - #239

Merged
HereLiesAz merged 1 commit into
mainfrom
claude/llm-openai-chat-without-sandbox
Sep 28, 2026
Merged

HereLiesAz merged 1 commit into
mainfrom
claude/llm-openai-chat-without-sandbox

Conversation

@HereLiesAz

@HereLiesAz HereLiesAz commented Sep 27, 2026 •

Copy link
Copy Markdown
Owner

spec/llm.md § Setup said that a host unable to provide the named sandbox MUST NOT install the package. Every llm package names github-actions, so a strict reading barred even endpoint packages that a host reaches directly over openai-chat. That protocol needs neither setup nor the sandbox (§ Protocols), and the reference chatLlm doesn't use them either.

The new wording:

  • A host without the sandbox MUST NOT run setup or use github-actions-runner.
  • It MAY install a package that declares openai-chat and use it over that protocol alone.
  • It MUST NOT install a runner-only package, which includes every sandbox-weights package.
  • A host still MUST NOT run script on the device.

docs/specs/llm.md was regenerated with docs/scripts/sync-specs.mjs. The sync also rewrote docs/specs/repository-api.md, a drift already on main, which I left out of this change. The changeset is empty because this is spec-only.

Found while wiring kind: "llm" into Guillotine (HereLiesAz/Guillotine#358, HereLiesAz/Guillotine#359).

🤖 Generated with Claude Code

https://claude.ai/code/session_019p6LTRthBQLE6CfynKmSZr


Generated by Claude Code

Summary by Sourcery

Allow sandbox-free hosts to install and use OpenAI Chat LLM endpoints while preserving restrictions on runner-only packages and device-side scripts.

Enhancements:

  • Clarify LLM package installation rules so hosts without the GitHub Actions sandbox can use packages through the openai-chat protocol while prohibiting setup, runner-only packages, and on-device scripts.

Documentation:

  • Update the LLM specification and its generated documentation with the revised sandbox and openai-chat requirements.

§ Setup said a host that can't provide the named sandbox MUST NOT install the
package. Every llm package names github-actions, so that barred even endpoint
packages a host reaches directly over openai-chat, which needs neither setup
nor the sandbox. Such a host may now install those and use openai-chat alone;
runner-only packages (every sandbox-weights one) still need the sandbox.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019p6LTRthBQLE6CfynKmSZr
@vercel

vercel Bot commented Sep 27, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
azphalt Error Error Sep 27, 2026 11:16pm UTC

@sourcery-ai

sourcery-ai Bot commented Sep 27, 2026

Copy link
Copy Markdown
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Updates the LLM specification so hosts without the named sandbox may install and use endpoint packages over openai-chat alone, while setup, github-actions-runner, runner-only packages, and on-device scripts remain restricted; the generated documentation mirror and a spec changeset are included.

Flow diagram for LLM package installation and execution permissions

flowchart TD
    Host[Host without github-actions sandbox] --> Package{Package declares openai-chat?}
    Package -->|Yes| Install[Install package]
    Install --> Protocol[Use package over openai-chat]
    Package -->|No| RunnerOnly[Runner-only package]
    RunnerOnly --> Reject[Do not install]
    Host --> Setup[Run setup or github-actions-runner]
    Setup --> Deny[Not permitted]
    Host --> Script[Run script on device]
    Script --> Deny
Loading

File-Level Changes

Change Details Files
Clarify sandbox requirements to distinguish protocol-only OpenAI Chat packages from runner-dependent packages.
  • Allow installation and direct use of packages exposing openai-chat without a local sandbox, setup, or github-actions-runner.
  • Continue prohibiting installation of runner-only packages, including all sandbox-weights packages.
  • Retain the prohibition against running setup scripts on the user's device.
spec/llm.md
docs/specs/llm.md
Add a changeset documenting the updated installation and sandbox behavior.
  • Record the exception for openai-chat packages and the requirement for runner-only packages to have the sandbox.
.changeset/llm-openai-chat-without-sandbox.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

HereLiesAz commented Sep 27, 2026 •

Copy link
Copy Markdown
Owner Author

None of the red checks on this PR comes from its change. The PR only edits spec Markdown.


Generated by Claude Code

@cloudflare-workers-and-pages

Copy link
Copy Markdown

🚀 Deploying Preview to Cloudflare 🚀

Preview Deployments by commit

Status Deployment URL Commit Updated (UTC) See this deployment's details
  • Build: Failed ❌

View logs ↗
8d974b0 2026-09-27T23:17:14.835Z View logs ↗

@HereLiesAz

Copy link
Copy Markdown
Owner Author

OpenCode security review

⚠️ Review unavailable. Neither model answered; see the shared workflow run. This is not a finding about the pull request.

@HereLiesAz
HereLiesAz marked this pull request as ready for review September 28, 2026 01:18
@HereLiesAz
HereLiesAz merged commit c700bee into main Sep 28, 2026
21 of 29 checks passed

@sourcery-ai sourcery-ai 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.

Sorry @HereLiesAz, you've used your own review budget of 250,000 diff characters for the last 7 days.

You can request another review in 20 hours and 4 minutes by commenting @sourcery-ai review. Upgrade to get a review now.

@HereLiesAz
HereLiesAz deleted the claude/llm-openai-chat-without-sandbox branch September 28, 2026 01:18

This branch had an error being deployed

1 failed deployment
Preview — 8d974b02 Deployed Sep 27, 2026 by vercel[bot]
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.

2 participants