Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
31b3a6a
feat(buck2): complete TypeScript authority
schickling-assistant Sep 11, 2026
c7b5b25
docs: replace removed TypeScript task references
schickling-assistant Sep 17, 2026
f8f998f
fix(nix): reconcile gh-ci-utils FOD hash
schickling-assistant Sep 17, 2026
f81b3a9
fix(nix): reconcile oxc-config FOD hash
schickling-assistant Sep 17, 2026
f4b65c9
style(restate-effect): format verification guide
schickling-assistant Sep 17, 2026
271bf09
test(buck2-tools): consume stderr without DOM Response
schickling-assistant Sep 17, 2026
91cca9f
chore(genie): regenerate merged CI workflow
schickling-assistant Sep 17, 2026
da27354
test(buck2): update complete authority census
schickling-assistant Sep 17, 2026
129d102
fix(gh-ci-utils): satisfy strict Effect checks
schickling-assistant Sep 18, 2026
71aa906
test(genie): align contracts with isolated runtime
schickling-assistant Sep 18, 2026
6678a20
style(buck2-tools): format command runner test
schickling-assistant Sep 18, 2026
3e246ee
feat(buck2): transfer static operation authority
schickling-assistant Sep 17, 2026
630b9c5
test(buck2): stabilize forbidden store reference fixture
schickling-assistant Sep 17, 2026
948502f
test(buck2): allow named test lane targets
schickling-assistant Sep 18, 2026
6d9532f
docs(buck2): renumber authority decisions
schickling-assistant Sep 18, 2026
cf74ee0
feat(buck2): publish workspace editor dependency views
schickling-assistant Sep 17, 2026
3f76580
fix: close Weaver task dependency graph
schickling-assistant Sep 17, 2026
5fdf11f
fix: wire Weaver live check through module contract
schickling-assistant Sep 17, 2026
20eb196
test(buck2): update editor authority census
schickling-assistant Sep 17, 2026
28612c3
fix(ci): restore composition cleanup permissions
schickling-assistant Sep 18, 2026
35a78c7
docs(buck2): reference freshness decision 0035
schickling-assistant Sep 18, 2026
7384f81
fix(buck2): preserve Bash for Darwin Rust linking
schickling-assistant Sep 11, 2026
c460ed7
fix(buck2): expose Darwin iconv to Rust links
schickling-assistant Sep 11, 2026
56fda9f
fix(buck2): normalize Darwin system install names
schickling-assistant Sep 11, 2026
604f286
fix(buck2): detect Buck Rust link outputs
schickling-assistant Sep 11, 2026
26ba34a
feat(buck2): stamp shipped Rust products
schickling-assistant Sep 11, 2026
ff00006
fix(buck2): inspect Rust response-file outputs
schickling-assistant Sep 11, 2026
49cabbe
fix(buck2): resign normalized Darwin products
schickling-assistant Sep 11, 2026
d0402b4
chore(buck2): refresh Rust projections
schickling-assistant Sep 11, 2026
ac83c50
feat(buck2): add native product release gate
schickling-assistant Sep 11, 2026
da554c9
fix(buck2): accept empty ad-hoc CMS wrappers
schickling-assistant Sep 11, 2026
94c5ffa
import validated Buck native products
schickling-assistant Sep 11, 2026
622c0ff
retire Rust CLI source producers
schickling-assistant Sep 11, 2026
3ec6b5b
tighten native product output boundaries
schickling-assistant Sep 11, 2026
a407d16
record Rust authority transfer
schickling-assistant Sep 11, 2026
6765749
harden composed consumer admission
schickling-assistant Sep 11, 2026
f2aa357
publish complete Buck authority surface
schickling-assistant Sep 11, 2026
d2486ee
record Rust quality gate boundary
schickling-assistant Sep 11, 2026
691e758
align exact sources with R6 modes
schickling-assistant Sep 11, 2026
51343ff
publish corrected R6 admission product
schickling-assistant Sep 11, 2026
7f16ef1
reconcile final Buck authority boundaries
schickling-assistant Sep 11, 2026
d1fdbaa
avoid whitespace in workflow block scalars
schickling-assistant Sep 11, 2026
1f15033
correct workflow whitespace assertion
schickling-assistant Sep 11, 2026
ce77e60
document workflow whitespace fix
schickling-assistant Sep 11, 2026
5be51ce
reconcile final Buck authority decisions
schickling-assistant Sep 11, 2026
c595824
fix(megarepo): preserve current overlays on no-op apply
schickling-assistant Sep 11, 2026
1a6bf05
chore(megarepo): pin no-op product release
schickling-assistant Sep 11, 2026
4c554e8
test(megarepo): narrow applied composition results
schickling-assistant Sep 11, 2026
1c3f3f2
test(megarepo): guard optional mount results
schickling-assistant Sep 11, 2026
fae39a4
fix(megarepo): retain capability realizations
schickling-assistant Sep 11, 2026
e617bdd
chore(megarepo): pin retained-capability release
schickling-assistant Sep 11, 2026
84b1da3
fix(nix): retain type-aware lint runtime
schickling-assistant Sep 11, 2026
e6b2a1b
test(buck2-tools): capture child stderr to file
schickling-assistant Sep 11, 2026
4c77bd2
fix(nix): restore flake root path authority
schickling-assistant Sep 17, 2026
4984c5b
test(rust): verify Buck native product provenance
schickling-assistant Sep 18, 2026
6172b27
fix: retarget Weaver live check to Buck editor authority
schickling-assistant Sep 12, 2026
5de0952
build: import oxc plugins from Buck products
schickling-assistant Sep 12, 2026
6b82cb1
fix: retain repository Nix validation
schickling-assistant Sep 12, 2026
da36c43
fix(devenv): serialize Buck materialization tasks
schickling-assistant Sep 12, 2026
619cf65
feat(buck2): admit schema-form-aria unit test
schickling-assistant Sep 12, 2026
741fbd2
fix(buck2): cache portable JavaScript products
schickling-assistant Sep 12, 2026
c0a2db6
fix(buck2): gate product cache uploads by root policy
schickling-assistant Sep 12, 2026
3b12ad0
build: generate JavaScript product targets
schickling-assistant Sep 12, 2026
02df218
fix(buck2): verify target inventory fingerprint bytes
schickling-assistant Sep 12, 2026
303c09a
chore(genie): refresh Buck source projections
schickling-assistant Sep 12, 2026
af52953
fix(buck2): verify dynamic native package families
schickling-assistant Sep 12, 2026
691f4e1
fix(nix): validate generated Buck target labels
schickling-assistant Sep 12, 2026
859758e
chore(nix): refresh Buck JavaScript products
schickling-assistant Sep 12, 2026
66dca09
test(nix): exercise generated product targets
schickling-assistant Sep 12, 2026
5e1a868
fix(buck2): record dynamic native module families
schickling-assistant Sep 12, 2026
f2142ef
chore(nix): refresh native module product metadata
schickling-assistant Sep 12, 2026
5599ecd
feat(buck2): package lockfile-native executables
schickling-assistant Sep 12, 2026
a581caf
fix(buck2): admit embedded Mach-O signatures
schickling-assistant Sep 12, 2026
cac93d5
fix(megarepo): bound generated Watchman roots
schickling-assistant Sep 12, 2026
b16ee71
build(buck2): declare TypeScript native product
schickling-assistant Sep 12, 2026
4c30541
feat(genie): use published TypeScript API server
schickling-assistant Sep 12, 2026
562c9f3
build(buck2): republish JavaScript products
schickling-assistant Sep 12, 2026
3aa9ff4
fix(megarepo): retain Buck capability closures
schickling-assistant Sep 13, 2026
cabd75f
fix(megarepo): retain owned Buck capabilities atomically
schickling-assistant Sep 13, 2026
65180d7
fix(megarepo): adopt new generated root files
schickling-assistant Sep 13, 2026
c533952
build(buck2): publish durable megarepo runtime
schickling-assistant Sep 13, 2026
5ccddb6
docs(buck2): reconcile migration complexity
schickling-assistant Sep 13, 2026
3d03779
chore(genie): refresh rebased Buck projections
schickling-assistant Sep 13, 2026
ce1b488
build(buck2): republish rebased megarepo runtime
schickling-assistant Sep 13, 2026
0b4200d
docs(buck2): record rebased cache benchmark
schickling-assistant Sep 13, 2026
bcfba26
feat(buck2): add standalone root and aggregate gates
schickling-assistant Sep 18, 2026
c3823d0
fix(buck2): use external-cell Starlark load syntax
schickling-assistant Sep 18, 2026
c0c0a24
fix(buck2): make standalone aggregate executable
schickling-assistant Sep 18, 2026
a8146f0
fix(megarepo): retain projected platform narrowing
schickling-assistant Sep 18, 2026
d1b0061
fix(megarepo): preserve projection path narrowing
schickling-assistant Sep 18, 2026
bf4af3f
docs(buck2): record standalone aggregate benchmarks
schickling-assistant Sep 18, 2026
79bdc0c
fix(buck2): use notify in standalone roots
schickling-assistant Sep 18, 2026
aefaaf9
docs(buck2): compare standalone watcher modes
schickling-assistant Sep 18, 2026
f8528ed
fix(megarepo): preserve rebased composition behavior
schickling-assistant Sep 19, 2026
fb693d6
docs(buck2): record second-context cache finding
schickling-assistant Sep 19, 2026
948d397
docs(buck2): record second-context reuse delta
schickling-assistant Sep 19, 2026
9fbd73d
docs(buck2): record NativeLink remote execution probe
schickling-assistant Sep 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
35 changes: 35 additions & 0 deletions .buckconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
[cells]
effect_utils = .
capabilities = .buck2/capabilities
prelude = prelude

[cell_aliases]
config = prelude
ovr_config = prelude
fbsource = prelude
toolchains = effect_utils

[external_cells]
prelude = bundled

[parser]
target_platform_detector_spec = target:effect_utils//...->effect_utils//buck2/platforms:host_platform

[build]
execution_platforms = effect_utils//buck2/platforms:host_execution_platform

[buck2]
file_watcher = notify
default_allow_cache_upload = true
digest_algorithms = SHA256

[buck2_re_client]
action_cache_address = grpc://dev3:41045
cas_address = grpc://dev3:41045
engine_address = grpc://dev3:41045
http_headers = authorization: Basic $BUCK2_REMOTE_CACHE_BASIC_AUTH
instance_name = effect-utils
tls = false

[project]
ignore = **/__pycache__,**/dist,**/node_modules,**/node_modules/**,**/target,**/target/**,.buck2/capabilities.candidate.*,.devenv,.git,buck-out,node_modules,packages/.editor-view,target,tmp
Empty file added .buckroot
Empty file.
12 changes: 0 additions & 12 deletions .github/repo-settings.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

25 changes: 12 additions & 13 deletions .github/workflows/ci.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

42 changes: 16 additions & 26 deletions .github/workflows/ci.yml.genie.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import {
prepareCiScriptsStep,
prepareEffectUtilsCompositionStep,
notifyAlignmentJob,
evictCachedPnpmDepsStep,
pnpmBuilderContractStep,
preparePinnedDevenvStep,
installNixStep,
Expand All @@ -29,14 +28,12 @@ import {
namespaceRunner,
nixClosureMeasurementSteps,
sourceShapeMeasurementStep,
validateColdPnpmDepsStep,
nixDiagnosticsArtifactStep,
workflowReportCommentBodyStep,
workflowReportCollectorStep,
workflowReportPublisherStep,
deployPreviewWorkflowReportPathOutputName,
netlifyDeployStep,
nixCacheSetupStep,
validateNixStoreStep,
withCiSourceRoot,
defaultRefPolicyCheckJob,
Expand Down Expand Up @@ -66,10 +63,6 @@ const baseSteps = [
prepareCiScriptsStep,
preparePinnedDevenvStep,
validateNixStoreStep,
evictCachedPnpmDepsStep({
flakeRef: '.#oxlint-npm',
name: 'Evict cached pnpm deps for oxlint-npm',
}),
/**
* Temporary debug switch for #272 to validate failure-path diagnostics without waiting for a real flake.
* Remove once #201/#272 are root-caused and diagnostics instrumentation is removed.
Expand Down Expand Up @@ -152,7 +145,7 @@ const liveNetlifyCiToolsE2EStep = {
[
'netlify_pkg="$(nix build --no-link --print-out-paths .#netlify-cli)"',
'export CI_TOOLS_LIVE_NETLIFY_BIN="$netlify_pkg/bin/netlify"',
'DEVENV_TASK_PASSTHROUGH=1 DEVENV_TUI=false "${DEVENV_BIN:?DEVENV_BIN not set}" tasks run pnpm:install',
'DEVENV_TASK_PASSTHROUGH=1 DEVENV_TUI=false "${DEVENV_BIN:?DEVENV_BIN not set}" tasks run buck2:editor:publish',
'DEVENV_TUI=false "${DEVENV_BIN:?DEVENV_BIN not set}" shell --no-reload -- bun test packages/@overeng/ci-tools/src/deploy-netlify.live.e2e.test.ts',
].join('\n'),
),
Expand Down Expand Up @@ -214,7 +207,7 @@ const liveVercelCiToolsE2EStep = {
[
'vercel_pkg="$(nix build --no-link --print-out-paths .#vercel-cli)"',
'export CI_TOOLS_LIVE_VERCEL_BIN="$vercel_pkg/bin/vercel"',
'DEVENV_TASK_PASSTHROUGH=1 DEVENV_TUI=false "${DEVENV_BIN:?DEVENV_BIN not set}" tasks run pnpm:install',
'DEVENV_TASK_PASSTHROUGH=1 DEVENV_TUI=false "${DEVENV_BIN:?DEVENV_BIN not set}" tasks run buck2:editor:publish',
'DEVENV_TUI=false "${DEVENV_BIN:?DEVENV_BIN not set}" shell --no-reload -- bun test packages/@overeng/ci-tools/src/deploy-vercel.live.e2e.test.ts',
].join('\n'),
),
Expand Down Expand Up @@ -438,16 +431,12 @@ const nativeDepPolicyAuditStep = {

// Core product jobs keyed by the shared Genie CI source of truth.
const jobs: Record<CoreCIJobName, ReturnType<typeof job> | ReturnType<typeof multiPlatformJob>> = {
// Typecheck authority is split after the Buck cutover, so this lane gates on both halves:
// - `buck2:check` owns typecheck and dist for every package carrying Buck `authority`.
// - `ts:check:strict` owns only the residual root TypeScript solution (the projects with
// no Buck authority). It consumes Buck-owned declarations through the dist overlays that
// `buck2:typescript:materialize-dist` publishes, so it is ordered after the materializer.
// Buck is the single TypeScript check and declaration authority.
typecheck: job({
step: {
name: 'Type check (Buck authority + residual root solution)',
name: 'Type check (Buck)',
env: githubTokenEnv(),
run: runDevenvTasksBefore('buck2:check', 'ts:check:strict'),
run: runDevenvTasksBefore('buck2:check'),
},
extraSteps: [verifyOtelShellEntryStep],
}),
Expand Down Expand Up @@ -520,9 +509,9 @@ const jobs: Record<CoreCIJobName, ReturnType<typeof job> | ReturnType<typeof mul
// and the genie policy source, both present here without node_modules.
extraSteps: [nativeDepPolicyAuditStep],
}),
// After the cutover `mk-pnpm-cli` has no in-repo CLI consumer left: it is exercised only by
// its own contract suite here and, through `mk-pnpm-deps.nix`, by the oxc-config plugin FOD.
// That makes this lane the sole remaining guard on the shared pnpm deps helper.
// `mk-pnpm-cli` and `mk-pnpm-deps` remain reusable public helpers, so their
// own contract suite keeps this lane even though no repository JavaScript
// product consumes them.
'pnpm-regression': job({
step: {
name: 'pnpm regression suite',
Expand Down Expand Up @@ -705,7 +694,8 @@ const extraJobs: Record<string, any> = {
'"${DEVENV_BIN:?DEVENV_BIN not set}" shell -- bun test \\',
' genie/buck2/typescript-package-projection.unit.test.ts \\',
' genie/buck2/javascript-candidates.unit.test.ts \\',
' packages/@overeng/buck2-tools/src/package-command-runner.unit.test.ts',
' packages/@overeng/buck2-tools/src/package-command-runner.unit.test.ts \\',
' packages/@overeng/buck2-tools/src/javascript-runner.unit.test.ts',
].join('\n'),
),
},
Expand All @@ -729,7 +719,7 @@ const extraJobs: Record<string, any> = {
[
'set -euo pipefail',
"tracked_editor=$(git ls-files -- '**/.editor-view/**' '.editor-view/**')",
`tracked_product=$(git ls-files -- 'nix/buck2-products/**' | grep -Ev '^nix/buck2-products/(default\\.nix|manifest\\.json|publish\\.sh)$' || true)`,
`tracked_product=$(git ls-files -- 'nix/buck2-products/**' | grep -Ev '^nix/buck2-products/(default\\.nix|manifest\\.json|publish\\.sh|targets\\.json|targets\\.json\\.genie\\.ts)$' || true)`,
'if [ -n "$tracked_editor$tracked_product" ]; then',
' printf \'Tracked inert payload bytes are forbidden:\\n%s\\n%s\\n\' "$tracked_editor" "$tracked_product" >&2',
' exit 1',
Expand All @@ -747,10 +737,10 @@ const extraJobs: Record<string, any> = {
' cd "${EFFECT_UTILS_WORKSPACE_ROOT:?EFFECT_UTILS_WORKSPACE_ROOT not set}"',
' buck="$PWD/.megarepo/bin/buck2"',
' "$buck" query effect_utils//packages/@overeng/ci-tools:ci-tools-candidate',
' "$buck" query effect_utils//packages/@overeng/tui-core:editor_view_inputs',
' "$buck" query effect_utils//:editor_view_inputs',
' "$buck" build \\',
' effect_utils//packages/@overeng/ci-tools:ci-tools-candidate \\',
' effect_utils//packages/@overeng/tui-core:editor_view_inputs',
' effect_utils//:editor_view_inputs',
"'",
].join('\n'),
),
Expand Down Expand Up @@ -961,10 +951,10 @@ const extraJobs: Record<string, any> = {
setupSteps: baseSteps,
taskProbes: [
{
task: 'pnpm:install',
label: 'pnpm install task',
task: 'buck2:editor:publish',
label: 'Editor dependency publication',
group: 'workspace setup',
description: 'Runs the cached pnpm install devenv task.',
description: 'Publishes the complete Buck-owned editor dependency surface.',
warmupRepetitions: 1,
repetitions: 5,
},
Expand Down
6 changes: 6 additions & 0 deletions .oxlintrc.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .oxlintrc.json.genie.ts
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,12 @@ export default oxlintConfig({
files: ['**/utils/src/node/otel.ts', '**/utils/src/node/otel-attrs.ts'],
rules: { 'oxc/no-barrel-file': 'off' },
},
// This file is the package's intentional public schema subpath. Keep the
// public contract explicit instead of de-barreling the consumer-facing API.
{
files: ['**/react-inspector/src/schema/mod.tsx'],
rules: { 'oxc/no-barrel-file': 'off' },
},
// restate-effect's `./testing` harness has a benign barrel-induced cycle:
// `testing.ts` aggregates and re-exports `RestateTestEnv`, which imports the
// harness back from `testing.ts`. Test-infra aggregation, not a runtime
Expand Down
Loading
Loading