Skip to content

fix(buck2): export consumer TypeScript runner - #1339

Merged
schickling merged 8 commits into
mainfrom
schickling-assistant/2026-09-20-p2-rules-product
Sep 22, 2026
Merged

schickling merged 8 commits into
mainfrom
schickling-assistant/2026-09-20-p2-rules-product

Conversation

@schickling-assistant

@schickling-assistant schickling-assistant commented Sep 22, 2026

Copy link
Copy Markdown
Collaborator

Problem

The standalone Buck rules artifact copied the provider workspace's root BUCK file even though that file referenced targets and packages that the artifact intentionally omits. The artifact also did not own the root targets expected by mkConsumerBuckRoot. A standalone consumer therefore failed while analyzing the configured TypeScript toolchain with package .../buck2-tools does not exist.

Goal

Give the distributed rules artifact a self-contained root package that exposes only its declared runtime surface.

Decisions

  • Generate a minimal artifact-owned root BUCK package during the Nix build.
  • Define package_tree_runtime, package_command_runtime, and the nested TypeScript runner export in that package.
  • Stop copying the provider workspace root BUCK file into the artifact.
  • Extend the consumer-root contract test to query all three root targets and analyze the configured TypeScript toolchain.

Verification

  • Replayed the previously failing consumer root with the new minimal rules BUCK package.
  • buck2 cquery fixture//buck2/toolchains:effect_tsgo succeeds.
  • buck2 uquery resolves rules//:package_tree_runtime, rules//:package_command_runtime, and rules//:packages/@overeng/buck2-tools/src/typescript-runner.ts.
  • The generated inventory source and committed projection match.
  • git diff --check passes.

Pre-flip deviations

devenv tasks run check:quick --no-tui remains queued behind the shared heavy-build admission outage tracked in schickling/dotfiles#2984. The focused replay above exercises the exact analysis failure and the final artifact contract.

Complexity

Low. The distributed artifact now owns a three-target root package instead of importing an unrelated workspace root.

Concerns

None.

Friction & bottlenecks

The shared heavy-build admission lock is held beyond its runtime cap. That outage prevents the repository-wide gate from starting.

Follow-ups

None.

References

Posted on behalf of @schickling
field value
agent_identity dev3.direct.omp.mqs8cse3
session unknown
agent_persona generalist
agent_supervisor unavailable
agent_tool OMP
agent_tool_version 18.2.6
agent_runtime OMP 18.2.6
agent_model openai-codex/gpt-5.6-sol
worktree effect-utils/2026-09-20-p2-rules-product
tooling_profile dotfiles@965ef7e-dirty

agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
@schickling-assistant schickling-assistant added the type:bug Something broken or a regression · Set: manual label Sep 22, 2026
agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
@schickling-assistant
schickling-assistant marked this pull request as ready for review September 22, 2026 09:51
@github-actions
github-actions Bot requested a review from schickling September 22, 2026 09:51
@schickling
schickling enabled auto-merge (squash) September 22, 2026 10:44
agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
agent-identity: dev3.direct.omp.mqs8cse3
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: OMP
agent-tool-version: 18.2.6
agent-runtime: OMP 18.2.6
agent-model: openai-codex/gpt-5.6-sol
tooling-profile: dotfiles@965ef7e-dirty
@schickling
schickling merged commit da74d7c into main Sep 22, 2026
27 checks passed
@schickling
schickling deleted the schickling-assistant/2026-09-20-p2-rules-product branch September 22, 2026 20:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:bug Something broken or a regression · Set: manual

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants