Skip to content

feat: consume the framework from GitHub Packages — retire .framework-sha - #153

Merged
coccyx merged 15 commits into
masterfrom
feat/github-packages-consume
Aug 21, 2026
Merged

feat: consume the framework from GitHub Packages — retire .framework-sha#153
coccyx merged 15 commits into
masterfrom
feat/github-packages-consume

Conversation

@coccyx

@coccyx coccyx commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

One-sentence summary: every framework dependency now comes from GitHub Packages (@criblio scope, published by framework PR #30) — the file:../ links, the .framework-sha pin, and the framework-clone CI machinery are gone.

What changed

  • Imports: @cribl/app-utils@criblio/app-utils, @cribl/app-tooling@criblio/app-tooling (54 files, mechanical sed).
  • package.json: registry versions (^0.5.0 app-utils, ^0.2.0 app-tooling, ^0.1.0 agent-protocol / cell-harness / cell-workspace).
  • .npmrc routes the @criblio scope. No auth line committed — locally that lives in ~/.npmrc (see the rewritten CLAUDE.md section), and in CI the release-build action writes it from registry-token.
  • ci.yml / release.yml: release-build action in registry mode (@7ef8eb4), .framework-sha deleted.
  • New update-lockfile workflow: regenerates package-lock.json on a branch in CI for machines without a registry token (used to bootstrap this very branch — the lockfile's @criblio entries resolve from npm.pkg.github.com with integrity hashes).
  • CLAUDE.md: SHA-pin section replaced with GitHub Packages guidance (one-time ~/.npmrc token, bump flow, framework-dev flow).

Validation

This PR's build check is the end-to-end proof: registry-mode npm ci with GITHUB_TOKEN, full verify (lint/test/tsc), packaging, and — with the validation-workspace secrets — a live deploy + Playwright smoke of the exact candidate. Local full suite also run against the same package sources via the framework checkout.

One-time local setup (everyone)

gh auth refresh -h github.com -s read:packages, then put //npm.pkg.github.com/:_authToken=<gh auth token> in ~/.npmrc (or use a classic PAT with read:packages).

🤖 Generated with Claude Code

https://claude.ai/code/session_0158jez4WfWj6ttmaxh3HEbT

coccyx and others added 6 commits August 20, 2026 21:28
…sha (extraction §6)

The framework is now published to GitHub Packages under @criblio
(framework PR #30): this switches every dependency to registry
versions and deletes the pin machinery.

- imports: @cribl/app-utils → @criblio/app-utils, @cribl/app-tooling
  → @criblio/app-tooling (54 files, mechanical)
- package.json: registry versions (^0.5.0 app-utils, ^0.2.0
  app-tooling, ^0.1.0 agent-protocol/cell-harness/cell-workspace)
  replacing file:../ links
- .npmrc: @criblio scope routing (no auth line — that lives in
  ~/.npmrc locally / is written by the release-build action in CI)
- ci.yml/release.yml: release-build action in registry mode
  (@7ef8eb4, registry-token: github.token); .framework-sha deleted
- new update-lockfile workflow: regenerates package-lock.json on a
  branch in CI for machines without a registry token
- CLAUDE.md: pin section replaced with GitHub Packages guidance
  (one-time ~/.npmrc auth, bump flow, framework-dev flow)

package-lock.json is regenerated by the update-lockfile workflow on
this branch (local machine has no registry token yet).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0158jez4WfWj6ttmaxh3HEbT
…s were preserved)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0158jez4WfWj6ttmaxh3HEbT
@socket-security

socket-security Bot commented Aug 21, 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
Added@​criblio/​agent-protocol@​0.1.1N/AN/AN/AN/AN/A
Added@​criblio/​app-tooling@​0.2.0N/AN/AN/AN/AN/A
Added@​criblio/​app-utils@​0.5.1N/AN/AN/AN/AN/A
Added@​criblio/​cell-harness@​0.1.1N/AN/AN/AN/AN/A
Added@​criblio/​cell-workspace@​0.1.1N/AN/AN/AN/AN/A

View full report

@socket-security

socket-security Bot commented Aug 21, 2026

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn High
Obfuscated code: npm @protobufjs/float is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: package-lock.jsonnpm/@criblio/cell-harness@0.1.1npm/@protobufjs/float@1.0.2

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@protobufjs/float@1.0.2. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

coccyx and others added 3 commits August 20, 2026 21:33
…fresh

The full lockfile regen floated every semver range; a newer
eslint-plugin-react-hooks brought new rules and 10 new lint errors,
which is version drift, not part of this change. Re-seed from
master's lockfile with the framework entries stripped so the CI
regen resolves exactly the 5 @criblio packages from the registry and
nothing else moves.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0158jez4WfWj6ttmaxh3HEbT
coccyx and others added 6 commits August 20, 2026 21:45
The dist+d.ts builds from framework PRs #32/#33 — source-shipped
packages broke Node consumers (type-stripping refuses node_modules).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ae/code/session_0158jez4WfWj6ttmaxh3HEbT
…n to refire)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0158jez4WfWj6ttmaxh3HEbT
…y from here

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0158jez4WfWj6ttmaxh3HEbT
@coccyx
coccyx merged commit 00a1a32 into master Aug 21, 2026
4 checks passed
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