Skip to content

chore(license): adopt Apache-2.0 and ship LICENSE/NOTICE in every publishable tarball - #393

Merged
ScriptedAlchemy merged 3 commits into
mainfrom
chore/license-apache-2.0
Sep 3, 2026
Merged

chore(license): adopt Apache-2.0 and ship LICENSE/NOTICE in every publishable tarball#393
ScriptedAlchemy merged 3 commits into
mainfrom
chore/license-apache-2.0

Conversation

@ScriptedAlchemy

Copy link
Copy Markdown
Owner

Summary

  • Adds the canonical Apache License 2.0 text as LICENSE (sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30, byte-identical to https://www.apache.org/licenses/LICENSE-2.0.txt) and a NOTICE naming the copyright holder (Zack Jackson / ScriptedAlchemy, 2026) and pointing at the preserved third-party notices (THIRD_PARTY_NOTICES, APP-RENDERER-LICENSE, shipped under dist/workbench/).
  • Declares "license": "Apache-2.0" on every first-party workspace package (root, agent-bundle, @agent-bundle/runtime, create-agent-bundle, workbench, all six examples). @agent-bundle/runtime and create-agent-bundle previously said MIT; agent-bundle and the root/workbench had none. Scaffolder templates deliberately stay license-less so scaffolded projects choose their own.
  • Each publishable package's build first runs scripts/sync-license-files.mjs, which copies the root LICENSE/NOTICE into the package (gitignored build outputs); the files allowlists name both so npm pack ships them at the tarball root.
  • scripts/audit-packed-release.mjs (pnpm audit:release) now fails if any of the three publishable tarballs lacks LICENSE, NOTICE, or the license field, or if a package copy drifts from the root file.
  • Docs: root README gets a License section and drops "license not yet chosen"; package READMEs get License sections; agent-bundle README release-gate wording updated. No per-file headers (the repo has no header convention; Apache-2.0 does not require them).
  • Changeset (patch) for the three publishable packages.

Evidence

  • npm pack --dry-run --json top-level entries for all three packages: LICENSE, NOTICE, README.md, package.json; no repos/ entries; agent-bundle also carries dist/workbench/THIRD_PARTY_NOTICES and dist/workbench/src/mcp/APP-RENDERER-LICENSE.
  • pnpm lint:package — all three "All good!".
  • pnpm audit:release — exit 0 (publint, attw, packed audit + SBOM).
  • Negative checks: deleting packages/rsc-runtime/NOTICEInvalid packed release audit: packages/rsc-runtime tarball is missing NOTICE; a stale packages/create-agent-bundle/LICENSE... differs from the repository root LICENSE.
  • pnpm pack:dry-run — exit 0.
  • pnpm typecheck, pnpm lint — exit 0.
  • pnpm test:unit — 2673/2680 passed; the 2 failures (mcp-probe-service teardown guard, native-claude-contract 5s timeout) are timer-based, unrelated to this change, and pass when rerun in isolation.
  • node scripts/run-packed-tests.mjs packages/agent-bundle/tests/release-audit.test.ts — 5/5 passed, including the new "packs the root LICENSE and NOTICE into every publishable tarball".

Test plan

  • pnpm exec rstest --config rstest.unit.config.ts packages/agent-bundle/tests/license-metadata.test.ts
  • pnpm audit:release
  • pnpm pack:dry-run
  • After merge: gh repo view --json licenseInfo reports Apache License 2.0

@changeset-bot

changeset-bot Bot commented Sep 3, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 4471daf

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 3 packages
Name Type
agent-bundle Patch
@agent-bundle/runtime Patch
create-agent-bundle Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 3, 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-09-03T07:31:59.396650Z 4471daf Manual request
ℹ️ 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.

@pkg-pr-new

pkg-pr-new Bot commented Sep 3, 2026

Copy link
Copy Markdown
npm i https://pkg.pr.new/ScriptedAlchemy/agent-bundle@393
npm i https://pkg.pr.new/ScriptedAlchemy/agent-bundle/create-agent-bundle@393
npm i https://pkg.pr.new/ScriptedAlchemy/agent-bundle/@agent-bundle/runtime@393

commit: 4471daf

@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: c29b87dbdb

ℹ️ 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".

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

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/agent-bundle/tests/license-metadata.test.ts Outdated
@ScriptedAlchemy
ScriptedAlchemy force-pushed the chore/license-apache-2.0 branch from c29b87d to 31b0b79 Compare September 3, 2026 06:28
@ScriptedAlchemy

Copy link
Copy Markdown
Owner 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: 3aeb9f225e

ℹ️ 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".

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

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread scripts/audit-packed-release.mjs
@ScriptedAlchemy

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. More of your lovely PRs please.

Reviewed commit: 81054fe394

ℹ️ 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".

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

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

…lishable tarball

The project had no LICENSE file, `agent-bundle` declared no license, and the
runtime and scaffolder declared MIT. Add the canonical Apache License 2.0 text
and a NOTICE naming the copyright holder and pointing at the preserved
third-party notices, declare `"license": "Apache-2.0"` on every first-party
workspace package, and copy the root files into each publishable package at
build time so `npm pack` ships them. `pnpm audit:release` now fails when any
publishable tarball lacks LICENSE, NOTICE, or the license field. Scaffolded
projects keep their own license choice.
core.autocrlf=true checkouts would otherwise convert both canonical files to
CRLF, changing the LICENSE SHA-256 the unit test verifies against apache.org
and the NOTICE prefix assertion.
…es are absent

The release audit inspects build output and deliberately does not regenerate
the package-local LICENSE/NOTICE copies; a clean checkout now fails with a
message that points at `pnpm build` instead of a bare missing-file error.
@ScriptedAlchemy

Copy link
Copy Markdown
Owner Author

@codex review

@ScriptedAlchemy
ScriptedAlchemy force-pushed the chore/license-apache-2.0 branch from 81054fe to 4471daf Compare September 3, 2026 07:28
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. More of your lovely PRs please.

Reviewed commit: 4471daf059

ℹ️ 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".

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

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@ScriptedAlchemy
ScriptedAlchemy merged commit f469376 into main Sep 3, 2026
10 checks passed
@ScriptedAlchemy
ScriptedAlchemy deleted the chore/license-apache-2.0 branch September 3, 2026 07:51
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