Skip to content

bun.lock: regenerate deliberately when the bun pin moves (stale workspace bin metadata) #594

Closed

Description

@Ancienttwo

Problem

Under bun 1.4.3, the pinned packageManager, bun install never refreshes a workspace package's bin metadata in bun.lock. The --force and --lockfile-only variants do not refresh it either. bun.lock had kept "archctx": "./cli/src/main.ts" after packages/surfaces/package.json moved its bin to ./cli/bin/archctx. #574 S1 (#589) corrects that one line by joint decision, so the lock matches its package.json authority.

Regenerating the whole lock (delete and reinstall) moves it to lockfile v2 and re-resolves more than 100 packages, for example @node-rs/jieba 2.0.1 to 2.0.4. That drift needs its own review.

Scope

When the bun pin next moves, regenerate bun.lock with the new bun. Verify:

  • bun install --frozen-lockfile passes in CI;
  • every workspace bin row in the lock equals its package.json;
  • the resolved dependency changes are listed in the PR and reviewed.

Write scope: bun.lock and package.json (packageManager) only. Medium tier.

Seat: orchestrator t7

Activity

  1. Ancienttwo commented on Nov 13, 2026

    @Ancienttwo
    OwnerAuthor

    Joint decision (orchestrator + advisor), 2026-11-14. The owner said in pane t12: "那就更新到bun 1.4.4" (update to Bun 1.4.4). This replaces the hand-edit of bun.lock:56 in 574#issuecomment-6856897068.

    The advisor probed it on a clean worktree at origin/main. bun@1.4.4 install --lockfile-only rewrites the stale workspace bin line (./cli/src/main.ts to ./cli/bin/archctx) with no regeneration drift. Bun 1.4.4 fixes the stale workspace-bin bug.

    1. A separate PR pins Bun 1.4.4 before S1 merges, Tier Medium with one GPT review. It is tracked here on bun.lock: regenerate deliberately when the bun pin moves (stale workspace bin metadata) #594, because moving the pin is the deliberate lock regeneration that bun.lock: regenerate deliberately when the bun pin moves (stale workspace bin metadata) #594 asks for.
      Write scope: every in-force 1.4.3 pin:

      • package.json (packageManager, bun-types);
      • .github/workflows/verify.yml, with its six bun-version sites and the :82 comment;
      • .github/workflows/windows-acl-diagnostics.yml;
      • scripts/verify-ci.mjs;
      • packages/contracts/src/product-version.ts and fixtures/valid/product-version-manifest.json;
      • docs/runbooks/governance-revalidation.md and verify-sharding.md;
      • any Bun version guard;
      • bun.lock, regenerated by bun 1.4.4 and never hand-edited.

      Dated records stay as they are: docs/verification, docs/researches and the release checklists. The downstream-corpus fixture is recorded data from other repositories, so it stays unless a test asserts it. The PR lists each 1.4.3 hit as changed or left, with the reason.

    2. The workflow edits change the required-CI definition, which is an owner item. The owner's instruction covers it. The advisor merges this PR from t12 once the orchestrator signs off the gate (green CI plus GPT PASS), as for chore(repo-harness): refresh repo-local harness config to 0.32.0 #590.

    3. S1 (feat(codegraph-adapter): one in-process read-only read session (#574 S1) #589) drops its bun.lock commit, waits for the Bun PR, rebases, and runs CI under 1.4.4. 1a, 2a and the darwin module stay. S1 re-checks under 1.4.4 whether the Windows EBUSY and the macOS Bun sidecar behavior still reproduce, and shrinks the guards if either changed.

    Seat: orchestrator t7

  2. added a commit that references this issue on Nov 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions