@hominis/fireforge 0.55.0 → 0.60.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +233 -6
- package/README.md +51 -17
- package/dist/bin/fireforge.js +34 -129
- package/dist/build-info.json +4 -4
- package/dist/src/check/check.js +394 -0
- package/dist/src/check/gate.js +448 -0
- package/dist/src/check/index.js +10 -0
- package/dist/src/check/record.js +155 -0
- package/dist/src/cli/command.js +286 -0
- package/dist/src/cli/output.js +96 -0
- package/dist/src/cli/program.js +231 -0
- package/dist/src/cli/stdio.js +59 -0
- package/dist/src/cli/version.js +99 -0
- package/dist/src/commands/bootstrap.js +17 -102
- package/dist/src/commands/build.js +34 -456
- package/dist/src/commands/check.js +44 -157
- package/dist/src/commands/config.js +50 -226
- package/dist/src/commands/discard.js +38 -215
- package/dist/src/commands/doctor.js +29 -456
- package/dist/src/commands/download.js +35 -499
- package/dist/src/commands/export.js +42 -431
- package/dist/src/commands/furnace.js +220 -0
- package/dist/src/commands/gate.js +127 -0
- package/dist/src/commands/import.js +44 -445
- package/dist/src/commands/index.js +86 -0
- package/dist/src/commands/lint.js +44 -546
- package/dist/src/commands/merge-driver.js +56 -0
- package/dist/src/commands/migrate.js +75 -0
- package/dist/src/commands/override.js +43 -0
- package/dist/src/commands/package.js +48 -77
- package/dist/src/commands/patch.js +221 -0
- package/dist/src/commands/re-export.js +55 -359
- package/dist/src/commands/rebase.js +69 -0
- package/dist/src/commands/register.js +62 -103
- package/dist/src/commands/reset.js +28 -91
- package/dist/src/commands/resolve.js +20 -167
- package/dist/src/commands/restore.js +19 -0
- package/dist/src/commands/run.js +60 -382
- package/dist/src/commands/setup.js +78 -90
- package/dist/src/commands/status.js +44 -413
- package/dist/src/commands/test.js +97 -423
- package/dist/src/commands/token.js +185 -228
- package/dist/src/commands/typecheck.js +59 -241
- package/dist/src/commands/verify.js +28 -334
- package/dist/src/commands/version.js +14 -0
- package/dist/src/commands/watch.js +20 -218
- package/dist/src/commands/wire.js +60 -349
- package/dist/src/commands/workspace.js +117 -0
- package/dist/src/config/edit.js +237 -0
- package/dist/src/config/index.js +15 -0
- package/dist/src/config/load.js +59 -0
- package/dist/src/config/previous.js +404 -0
- package/dist/src/config/schema/build.js +63 -0
- package/dist/src/config/schema/check.js +113 -0
- package/dist/src/config/schema/common.js +71 -0
- package/dist/src/config/schema/export-queue.js +36 -0
- package/dist/src/config/schema/firefox.js +69 -0
- package/dist/src/config/schema/gate.js +199 -0
- package/dist/src/config/schema/identity.js +55 -0
- package/dist/src/config/schema/index.js +45 -0
- package/dist/src/config/schema/lint.js +297 -0
- package/dist/src/config/schema/policy.js +111 -0
- package/dist/src/config/schema/source.js +90 -0
- package/dist/src/config/schema/test.js +17 -0
- package/dist/src/config/schema/toolchains.js +17 -0
- package/dist/src/config/schema/typecheck.js +29 -0
- package/dist/src/config/schema/wire.js +15 -0
- package/dist/src/diff/apply.js +129 -0
- package/dist/src/diff/index.js +16 -0
- package/dist/src/diff/model.js +267 -0
- package/dist/src/diff/query.js +65 -0
- package/dist/src/doctor/index.js +240 -0
- package/dist/src/engine/archive.js +396 -0
- package/dist/src/engine/audit.js +66 -0
- package/dist/src/engine/build.js +150 -0
- package/dist/src/engine/hostLocks.js +66 -0
- package/dist/src/engine/index.js +26 -0
- package/dist/src/engine/installManifests.js +147 -0
- package/dist/src/engine/mach.js +97 -0
- package/dist/src/engine/machHints.js +80 -0
- package/dist/src/engine/mozconfig.js +110 -0
- package/dist/src/engine/objdir.js +124 -0
- package/dist/src/engine/package.js +169 -0
- package/dist/src/engine/pin.js +12 -0
- package/dist/src/engine/pool.js +423 -0
- package/dist/src/engine/pristine.js +281 -0
- package/dist/src/engine/python.js +68 -0
- package/dist/src/engine/resourceGuard.js +582 -0
- package/dist/src/engine/run.js +259 -0
- package/dist/src/engine/smoke.js +204 -0
- package/dist/src/engine/staleness.js +229 -0
- package/dist/src/engine/watch.js +82 -0
- package/dist/src/engine/workspace.js +85 -0
- package/dist/src/furnace/config.js +360 -0
- package/dist/src/furnace/deploy.js +414 -0
- package/dist/src/furnace/diff.js +59 -0
- package/dist/src/furnace/edit.js +64 -0
- package/dist/src/furnace/fragments.js +53 -0
- package/dist/src/furnace/index.js +19 -0
- package/dist/src/furnace/operations.js +283 -0
- package/dist/src/furnace/registration.js +220 -0
- package/dist/src/furnace/scaffold.js +311 -0
- package/dist/src/furnace/typing.js +252 -0
- package/dist/src/furnace/validate.js +662 -0
- package/dist/src/git/apply.js +129 -0
- package/dist/src/git/diff.js +143 -0
- package/dist/src/git/index.js +33 -0
- package/dist/src/git/objects.js +201 -0
- package/dist/src/git/refs.js +85 -0
- package/dist/src/git/repo.js +222 -0
- package/dist/src/git/run.js +242 -0
- package/dist/src/git/status.js +156 -0
- package/dist/src/kernel/errors.js +123 -0
- package/dist/src/kernel/fs.js +515 -0
- package/dist/src/kernel/glob.js +63 -0
- package/dist/src/kernel/hash.js +28 -0
- package/dist/src/kernel/journal.js +524 -0
- package/dist/src/kernel/json-edit.js +198 -0
- package/dist/src/kernel/json.js +101 -0
- package/dist/src/kernel/lock.js +589 -0
- package/dist/src/kernel/log.js +154 -0
- package/dist/src/kernel/process/identity.js +313 -0
- package/dist/src/kernel/process/index.js +8 -0
- package/dist/src/kernel/process/listing.js +128 -0
- package/dist/src/kernel/process/spawn.js +430 -0
- package/dist/src/kernel/process/tree.js +301 -0
- package/dist/src/kernel/schema.js +308 -0
- package/dist/src/kernel/signals.js +171 -0
- package/dist/src/kernel/text.js +151 -0
- package/dist/src/kernel/time.js +83 -0
- package/dist/src/kernel/tty.js +84 -0
- package/dist/src/lint/cache.js +77 -0
- package/dist/src/lint/checkjs.js +400 -0
- package/dist/src/lint/index.js +3 -0
- package/dist/src/lint/input.js +100 -0
- package/dist/src/lint/report.js +107 -0
- package/dist/src/lint/rule.js +41 -0
- package/dist/src/lint/rules/css.js +308 -0
- package/dist/src/lint/rules/javascript.js +299 -0
- package/dist/src/lint/rules/jsdoc.js +249 -0
- package/dist/src/lint/rules/license.js +93 -0
- package/dist/src/lint/rules/policy.js +201 -0
- package/dist/src/lint/rules/registration.js +264 -0
- package/dist/src/lint/rules/size.js +299 -0
- package/dist/src/lint/run.js +126 -0
- package/dist/src/lint/shim.js +323 -0
- package/dist/src/lint/typescript.js +186 -0
- package/dist/src/lint/waivers.js +93 -0
- package/dist/src/mode/changes.js +264 -0
- package/dist/src/mode/diagnose.js +173 -0
- package/dist/src/mode/export.js +147 -0
- package/dist/src/mode/index.js +23 -0
- package/dist/src/mode/migrate.js +181 -0
- package/dist/src/mode/previousWaivers.js +206 -0
- package/dist/src/mode/pristine.js +61 -0
- package/dist/src/mode/rebase.js +197 -0
- package/dist/src/mode/report.js +157 -0
- package/dist/src/mode/setup.js +103 -0
- package/dist/src/mode/tracked.js +116 -0
- package/dist/src/mode/upgrade.js +281 -0
- package/dist/src/mode/watch.js +83 -0
- package/dist/src/mode/workspace.js +189 -0
- package/dist/src/mozbuild/index.js +6 -0
- package/dist/src/mozbuild/jar.js +366 -0
- package/dist/src/mozbuild/mozbuild.js +321 -0
- package/dist/src/mozbuild/paths.js +96 -0
- package/dist/src/mozbuild/references.js +39 -0
- package/dist/src/mozbuild/testManifest.js +343 -0
- package/dist/src/mozbuild/text.js +142 -0
- package/dist/src/project/changes.js +145 -0
- package/dist/src/project/checkout.js +66 -0
- package/dist/src/project/index.js +11 -0
- package/dist/src/project/license.js +119 -0
- package/dist/src/project/project.js +111 -0
- package/dist/src/project/state.js +85 -0
- package/dist/src/project/tracked.js +1 -0
- package/dist/src/queue/apply.js +270 -0
- package/dist/src/queue/attribute.js +159 -0
- package/dist/src/queue/baseline.js +409 -0
- package/dist/src/queue/capture.js +298 -0
- package/dist/src/queue/changes.js +234 -0
- package/dist/src/queue/index.js +50 -0
- package/dist/src/queue/manifest.js +341 -0
- package/dist/src/queue/operations.js +454 -0
- package/dist/src/queue/placement.js +220 -0
- package/dist/src/queue/queue.js +359 -0
- package/dist/src/queue/restore.js +103 -0
- package/dist/src/queue/session.js +685 -0
- package/dist/src/queue/status.js +137 -0
- package/dist/src/register/files.js +39 -0
- package/dist/src/register/index.js +8 -0
- package/dist/src/register/js.js +217 -0
- package/dist/src/register/register.js +359 -0
- package/dist/src/register/wire.js +146 -0
- package/dist/src/source/adopt.js +99 -0
- package/dist/src/source/changes.js +132 -0
- package/dist/src/source/edit.js +278 -0
- package/dist/src/source/export.js +70 -0
- package/dist/src/source/groups.js +131 -0
- package/dist/src/source/index.js +20 -0
- package/dist/src/source/materialize.js +382 -0
- package/dist/src/source/merge.js +255 -0
- package/dist/src/source/objects.js +102 -0
- package/dist/src/source/previous.js +166 -0
- package/dist/src/source/records.js +138 -0
- package/dist/src/source/refresh.js +264 -0
- package/dist/src/source/tree.js +337 -0
- package/dist/src/syntax/css.js +215 -0
- package/dist/src/syntax/fragments.js +63 -0
- package/dist/src/syntax/index.js +10 -0
- package/dist/src/syntax/js.js +270 -0
- package/dist/src/test/classify.js +826 -0
- package/dist/src/test/control.js +236 -0
- package/dist/src/test/host.js +266 -0
- package/dist/src/test/index.js +11 -0
- package/dist/src/test/plan.js +347 -0
- package/dist/src/test/rawLog.js +138 -0
- package/dist/src/test/run.js +404 -0
- package/dist/src/test/verdict.js +420 -0
- package/dist/src/test/xpcshell.js +143 -0
- package/dist/src/tokens/add.js +304 -0
- package/dist/src/tokens/coverage.js +65 -0
- package/dist/src/tokens/css.js +58 -0
- package/dist/src/tokens/index.js +12 -0
- package/dist/src/tokens/lint.js +96 -0
- package/dist/src/tokens/model.js +118 -0
- package/dist/src/tokens/settings.js +87 -0
- package/dist/src/tokens/siblings.js +104 -0
- package/dist/src/typecheck/explain.js +123 -0
- package/dist/src/typecheck/index.js +8 -0
- package/dist/src/typecheck/typecheck.js +332 -0
- package/docs/README.md +23 -28
- package/docs/authoring.md +97 -0
- package/docs/configuration.md +307 -766
- package/docs/exit-codes.md +76 -94
- package/docs/furnace.md +111 -221
- package/docs/gate.md +205 -0
- package/docs/getting-started.md +165 -0
- package/docs/machine-output.md +201 -290
- package/docs/migrating.md +261 -0
- package/docs/patch-workflow.md +159 -723
- package/docs/quality.md +220 -0
- package/docs/source-workflow.md +228 -0
- package/docs/testing.md +101 -719
- package/docs/workspaces.md +187 -0
- package/package.json +22 -30
- package/templates/configs/common.mozconfig +8 -2
- package/templates/configs/darwin.mozconfig +6 -7
- package/templates/configs/linux.mozconfig +5 -8
- package/templates/configs/win32.mozconfig +3 -9
- package/dist/bin/fireforge.d.ts +0 -9
- package/dist/src/cli-usage-error.d.ts +0 -46
- package/dist/src/cli-usage-error.js +0 -81
- package/dist/src/cli.d.ts +0 -41
- package/dist/src/cli.js +0 -380
- package/dist/src/commands/bootstrap-checks.d.ts +0 -16
- package/dist/src/commands/bootstrap-checks.js +0 -66
- package/dist/src/commands/bootstrap.d.ts +0 -10
- package/dist/src/commands/build-prelock.d.ts +0 -20
- package/dist/src/commands/build-prelock.js +0 -50
- package/dist/src/commands/build.d.ts +0 -13
- package/dist/src/commands/check-report.d.ts +0 -41
- package/dist/src/commands/check-report.js +0 -98
- package/dist/src/commands/check-run.d.ts +0 -44
- package/dist/src/commands/check-run.js +0 -125
- package/dist/src/commands/check-steps.d.ts +0 -75
- package/dist/src/commands/check-steps.js +0 -200
- package/dist/src/commands/check.d.ts +0 -32
- package/dist/src/commands/config.d.ts +0 -13
- package/dist/src/commands/declarations-report.d.ts +0 -49
- package/dist/src/commands/declarations-report.js +0 -83
- package/dist/src/commands/destructive-decision.d.ts +0 -19
- package/dist/src/commands/destructive-decision.js +0 -31
- package/dist/src/commands/discard.d.ts +0 -12
- package/dist/src/commands/doctor-check-core.d.ts +0 -110
- package/dist/src/commands/doctor-check-core.js +0 -24
- package/dist/src/commands/doctor-engine-eslint.d.ts +0 -3
- package/dist/src/commands/doctor-engine-eslint.js +0 -17
- package/dist/src/commands/doctor-external-toolchains.d.ts +0 -3
- package/dist/src/commands/doctor-external-toolchains.js +0 -56
- package/dist/src/commands/doctor-furnace-config-sync.d.ts +0 -18
- package/dist/src/commands/doctor-furnace-config-sync.js +0 -295
- package/dist/src/commands/doctor-furnace-jar.d.ts +0 -14
- package/dist/src/commands/doctor-furnace-jar.js +0 -44
- package/dist/src/commands/doctor-furnace.d.ts +0 -8
- package/dist/src/commands/doctor-furnace.js +0 -514
- package/dist/src/commands/doctor-macos-sdk.d.ts +0 -8
- package/dist/src/commands/doctor-macos-sdk.js +0 -158
- package/dist/src/commands/doctor-orphaned-harness.d.ts +0 -41
- package/dist/src/commands/doctor-orphaned-harness.js +0 -98
- package/dist/src/commands/doctor-patch-manifest.d.ts +0 -9
- package/dist/src/commands/doctor-patch-manifest.js +0 -156
- package/dist/src/commands/doctor-post-rebase-audit.d.ts +0 -2
- package/dist/src/commands/doctor-post-rebase-audit.js +0 -108
- package/dist/src/commands/doctor-source-pin.d.ts +0 -29
- package/dist/src/commands/doctor-source-pin.js +0 -91
- package/dist/src/commands/doctor-working-tree.d.ts +0 -27
- package/dist/src/commands/doctor-working-tree.js +0 -89
- package/dist/src/commands/doctor.d.ts +0 -49
- package/dist/src/commands/download.d.ts +0 -11
- package/dist/src/commands/export-adopt-check.d.ts +0 -37
- package/dist/src/commands/export-adopt-check.js +0 -97
- package/dist/src/commands/export-all.d.ts +0 -11
- package/dist/src/commands/export-all.js +0 -361
- package/dist/src/commands/export-flow.d.ts +0 -124
- package/dist/src/commands/export-flow.js +0 -423
- package/dist/src/commands/export-placement-conflicts.d.ts +0 -17
- package/dist/src/commands/export-placement-conflicts.js +0 -75
- package/dist/src/commands/export-placement-gate.d.ts +0 -42
- package/dist/src/commands/export-placement-gate.js +0 -107
- package/dist/src/commands/export-placement-policy.d.ts +0 -22
- package/dist/src/commands/export-placement-policy.js +0 -54
- package/dist/src/commands/export-shared.d.ts +0 -152
- package/dist/src/commands/export-shared.js +0 -396
- package/dist/src/commands/export-staged-registration.d.ts +0 -46
- package/dist/src/commands/export-staged-registration.js +0 -91
- package/dist/src/commands/export.d.ts +0 -13
- package/dist/src/commands/forward-import-remedy.d.ts +0 -31
- package/dist/src/commands/forward-import-remedy.js +0 -62
- package/dist/src/commands/furnace/apply.d.ts +0 -8
- package/dist/src/commands/furnace/apply.js +0 -327
- package/dist/src/commands/furnace/authoring-config.d.ts +0 -13
- package/dist/src/commands/furnace/authoring-config.js +0 -19
- package/dist/src/commands/furnace/chrome-doc-remove.d.ts +0 -14
- package/dist/src/commands/furnace/chrome-doc-remove.js +0 -148
- package/dist/src/commands/furnace/chrome-doc-templates.d.ts +0 -152
- package/dist/src/commands/furnace/chrome-doc-templates.js +0 -331
- package/dist/src/commands/furnace/chrome-doc-tests.d.ts +0 -23
- package/dist/src/commands/furnace/chrome-doc-tests.js +0 -148
- package/dist/src/commands/furnace/chrome-doc.d.ts +0 -87
- package/dist/src/commands/furnace/chrome-doc.js +0 -365
- package/dist/src/commands/furnace/create-browser-test.d.ts +0 -44
- package/dist/src/commands/furnace/create-browser-test.js +0 -179
- package/dist/src/commands/furnace/create-dry-run.d.ts +0 -49
- package/dist/src/commands/furnace/create-dry-run.js +0 -107
- package/dist/src/commands/furnace/create-features.d.ts +0 -24
- package/dist/src/commands/furnace/create-features.js +0 -55
- package/dist/src/commands/furnace/create-mochikit.d.ts +0 -29
- package/dist/src/commands/furnace/create-mochikit.js +0 -75
- package/dist/src/commands/furnace/create-readback.d.ts +0 -22
- package/dist/src/commands/furnace/create-readback.js +0 -32
- package/dist/src/commands/furnace/create-templates.d.ts +0 -119
- package/dist/src/commands/furnace/create-templates.js +0 -283
- package/dist/src/commands/furnace/create-validation.d.ts +0 -6
- package/dist/src/commands/furnace/create-validation.js +0 -59
- package/dist/src/commands/furnace/create-xpcshell.d.ts +0 -27
- package/dist/src/commands/furnace/create-xpcshell.js +0 -80
- package/dist/src/commands/furnace/create.d.ts +0 -24
- package/dist/src/commands/furnace/create.js +0 -407
- package/dist/src/commands/furnace/deploy-fragment-includers.d.ts +0 -59
- package/dist/src/commands/furnace/deploy-fragment-includers.js +0 -120
- package/dist/src/commands/furnace/deploy-named.d.ts +0 -48
- package/dist/src/commands/furnace/deploy-named.js +0 -107
- package/dist/src/commands/furnace/deploy.d.ts +0 -9
- package/dist/src/commands/furnace/deploy.js +0 -229
- package/dist/src/commands/furnace/diff.d.ts +0 -11
- package/dist/src/commands/furnace/diff.js +0 -238
- package/dist/src/commands/furnace/index.d.ts +0 -4
- package/dist/src/commands/furnace/index.js +0 -283
- package/dist/src/commands/furnace/init.d.ts +0 -11
- package/dist/src/commands/furnace/init.js +0 -287
- package/dist/src/commands/furnace/list.d.ts +0 -8
- package/dist/src/commands/furnace/list.js +0 -104
- package/dist/src/commands/furnace/override.d.ts +0 -16
- package/dist/src/commands/furnace/override.js +0 -454
- package/dist/src/commands/furnace/preview.d.ts +0 -19
- package/dist/src/commands/furnace/preview.js +0 -349
- package/dist/src/commands/furnace/refresh.d.ts +0 -10
- package/dist/src/commands/furnace/refresh.js +0 -303
- package/dist/src/commands/furnace/remove-mutations.d.ts +0 -36
- package/dist/src/commands/furnace/remove-mutations.js +0 -168
- package/dist/src/commands/furnace/remove-state.d.ts +0 -20
- package/dist/src/commands/furnace/remove-state.js +0 -60
- package/dist/src/commands/furnace/remove.d.ts +0 -8
- package/dist/src/commands/furnace/remove.js +0 -415
- package/dist/src/commands/furnace/rename-browser-test.d.ts +0 -2
- package/dist/src/commands/furnace/rename-browser-test.js +0 -68
- package/dist/src/commands/furnace/rename-dry-run.d.ts +0 -29
- package/dist/src/commands/furnace/rename-dry-run.js +0 -127
- package/dist/src/commands/furnace/rename-helpers.d.ts +0 -26
- package/dist/src/commands/furnace/rename-helpers.js +0 -85
- package/dist/src/commands/furnace/rename-registrations.d.ts +0 -41
- package/dist/src/commands/furnace/rename-registrations.js +0 -98
- package/dist/src/commands/furnace/rename-xpcshell.d.ts +0 -32
- package/dist/src/commands/furnace/rename-xpcshell.js +0 -95
- package/dist/src/commands/furnace/rename.d.ts +0 -6
- package/dist/src/commands/furnace/rename.js +0 -400
- package/dist/src/commands/furnace/scan.d.ts +0 -14
- package/dist/src/commands/furnace/scan.js +0 -192
- package/dist/src/commands/furnace/status.d.ts +0 -7
- package/dist/src/commands/furnace/status.js +0 -209
- package/dist/src/commands/furnace/sync.d.ts +0 -12
- package/dist/src/commands/furnace/sync.js +0 -145
- package/dist/src/commands/furnace/test-file-name.d.ts +0 -28
- package/dist/src/commands/furnace/test-file-name.js +0 -39
- package/dist/src/commands/furnace/validate-report.d.ts +0 -45
- package/dist/src/commands/furnace/validate-report.js +0 -91
- package/dist/src/commands/furnace/validate.d.ts +0 -8
- package/dist/src/commands/furnace/validate.js +0 -309
- package/dist/src/commands/furnace/validation-output.d.ts +0 -47
- package/dist/src/commands/furnace/validation-output.js +0 -161
- package/dist/src/commands/import.d.ts +0 -11
- package/dist/src/commands/lint-per-patch.d.ts +0 -10
- package/dist/src/commands/lint-per-patch.js +0 -428
- package/dist/src/commands/lint-per-run-checkjs.d.ts +0 -66
- package/dist/src/commands/lint-per-run-checkjs.js +0 -102
- package/dist/src/commands/lint-report.d.ts +0 -25
- package/dist/src/commands/lint-report.js +0 -76
- package/dist/src/commands/lint.d.ts +0 -47
- package/dist/src/commands/manifest.d.ts +0 -38
- package/dist/src/commands/manifest.js +0 -68
- package/dist/src/commands/package.d.ts +0 -11
- package/dist/src/commands/park.d.ts +0 -22
- package/dist/src/commands/park.js +0 -232
- package/dist/src/commands/patch/body.d.ts +0 -29
- package/dist/src/commands/patch/body.js +0 -60
- package/dist/src/commands/patch/compact.d.ts +0 -28
- package/dist/src/commands/patch/compact.js +0 -208
- package/dist/src/commands/patch/delete-gap-notice.d.ts +0 -24
- package/dist/src/commands/patch/delete-gap-notice.js +0 -48
- package/dist/src/commands/patch/delete.d.ts +0 -28
- package/dist/src/commands/patch/delete.js +0 -131
- package/dist/src/commands/patch/entry-projection.d.ts +0 -13
- package/dist/src/commands/patch/entry-projection.js +0 -24
- package/dist/src/commands/patch/index.d.ts +0 -16
- package/dist/src/commands/patch/index.js +0 -54
- package/dist/src/commands/patch/lint-ignore-from.d.ts +0 -43
- package/dist/src/commands/patch/lint-ignore-from.js +0 -141
- package/dist/src/commands/patch/lint-ignore.d.ts +0 -42
- package/dist/src/commands/patch/lint-ignore.js +0 -263
- package/dist/src/commands/patch/move-files-adopt.d.ts +0 -33
- package/dist/src/commands/patch/move-files-adopt.js +0 -65
- package/dist/src/commands/patch/move-files-create.d.ts +0 -19
- package/dist/src/commands/patch/move-files-create.js +0 -187
- package/dist/src/commands/patch/move-files-into.d.ts +0 -65
- package/dist/src/commands/patch/move-files-into.js +0 -325
- package/dist/src/commands/patch/move-files-retire.d.ts +0 -39
- package/dist/src/commands/patch/move-files-retire.js +0 -91
- package/dist/src/commands/patch/move-files.d.ts +0 -28
- package/dist/src/commands/patch/move-files.js +0 -224
- package/dist/src/commands/patch/move-size-tier.d.ts +0 -27
- package/dist/src/commands/patch/move-size-tier.js +0 -66
- package/dist/src/commands/patch/patch-context.d.ts +0 -40
- package/dist/src/commands/patch/patch-context.js +0 -51
- package/dist/src/commands/patch/removal-created-files.d.ts +0 -48
- package/dist/src/commands/patch/removal-created-files.js +0 -83
- package/dist/src/commands/patch/removal-dependents.d.ts +0 -63
- package/dist/src/commands/patch/removal-dependents.js +0 -133
- package/dist/src/commands/patch/rename.d.ts +0 -35
- package/dist/src/commands/patch/rename.js +0 -378
- package/dist/src/commands/patch/reorder-projection.d.ts +0 -17
- package/dist/src/commands/patch/reorder-projection.js +0 -49
- package/dist/src/commands/patch/reorder-shift.d.ts +0 -30
- package/dist/src/commands/patch/reorder-shift.js +0 -307
- package/dist/src/commands/patch/reorder.d.ts +0 -34
- package/dist/src/commands/patch/reorder.js +0 -375
- package/dist/src/commands/patch/reserve.d.ts +0 -33
- package/dist/src/commands/patch/reserve.js +0 -152
- package/dist/src/commands/patch/retire.d.ts +0 -34
- package/dist/src/commands/patch/retire.js +0 -133
- package/dist/src/commands/patch/split-plan.d.ts +0 -125
- package/dist/src/commands/patch/split-plan.js +0 -313
- package/dist/src/commands/patch/split-staged.d.ts +0 -108
- package/dist/src/commands/patch/split-staged.js +0 -202
- package/dist/src/commands/patch/split.d.ts +0 -43
- package/dist/src/commands/patch/split.js +0 -367
- package/dist/src/commands/patch/stage.d.ts +0 -34
- package/dist/src/commands/patch/stage.js +0 -153
- package/dist/src/commands/patch/staged-dependency-batch.d.ts +0 -48
- package/dist/src/commands/patch/staged-dependency-batch.js +0 -176
- package/dist/src/commands/patch/staged-dependency-entries.d.ts +0 -44
- package/dist/src/commands/patch/staged-dependency-entries.js +0 -80
- package/dist/src/commands/patch/staged-dependency-from.d.ts +0 -14
- package/dist/src/commands/patch/staged-dependency-from.js +0 -114
- package/dist/src/commands/patch/staged-dependency-remove.d.ts +0 -53
- package/dist/src/commands/patch/staged-dependency-remove.js +0 -114
- package/dist/src/commands/patch/staged-dependency-validate.d.ts +0 -27
- package/dist/src/commands/patch/staged-dependency-validate.js +0 -78
- package/dist/src/commands/patch/staged-dependency.d.ts +0 -22
- package/dist/src/commands/patch/staged-dependency.js +0 -251
- package/dist/src/commands/patch/tier.d.ts +0 -34
- package/dist/src/commands/patch/tier.js +0 -125
- package/dist/src/commands/patch-rename-map.d.ts +0 -30
- package/dist/src/commands/patch-rename-map.js +0 -54
- package/dist/src/commands/pending-resolution.d.ts +0 -15
- package/dist/src/commands/pending-resolution.js +0 -25
- package/dist/src/commands/re-export-adjacent-registrations.d.ts +0 -20
- package/dist/src/commands/re-export-adjacent-registrations.js +0 -75
- package/dist/src/commands/re-export-adjacent.d.ts +0 -111
- package/dist/src/commands/re-export-adjacent.js +0 -285
- package/dist/src/commands/re-export-bulk-scan.d.ts +0 -19
- package/dist/src/commands/re-export-bulk-scan.js +0 -233
- package/dist/src/commands/re-export-drift.d.ts +0 -110
- package/dist/src/commands/re-export-drift.js +0 -358
- package/dist/src/commands/re-export-each.d.ts +0 -46
- package/dist/src/commands/re-export-each.js +0 -110
- package/dist/src/commands/re-export-files.d.ts +0 -15
- package/dist/src/commands/re-export-files.js +0 -307
- package/dist/src/commands/re-export-hunks.d.ts +0 -37
- package/dist/src/commands/re-export-hunks.js +0 -264
- package/dist/src/commands/re-export-lint.d.ts +0 -137
- package/dist/src/commands/re-export-lint.js +0 -303
- package/dist/src/commands/re-export-options.d.ts +0 -29
- package/dist/src/commands/re-export-options.js +0 -192
- package/dist/src/commands/re-export-preflight.d.ts +0 -23
- package/dist/src/commands/re-export-preflight.js +0 -159
- package/dist/src/commands/re-export-purity-scope.d.ts +0 -18
- package/dist/src/commands/re-export-purity-scope.js +0 -137
- package/dist/src/commands/re-export-register.d.ts +0 -12
- package/dist/src/commands/re-export-register.js +0 -99
- package/dist/src/commands/re-export-removed.d.ts +0 -15
- package/dist/src/commands/re-export-removed.js +0 -94
- package/dist/src/commands/re-export-retired-declarations.d.ts +0 -22
- package/dist/src/commands/re-export-retired-declarations.js +0 -113
- package/dist/src/commands/re-export-scan-owner.d.ts +0 -44
- package/dist/src/commands/re-export-scan-owner.js +0 -116
- package/dist/src/commands/re-export-scan.d.ts +0 -72
- package/dist/src/commands/re-export-scan.js +0 -265
- package/dist/src/commands/re-export-single.d.ts +0 -53
- package/dist/src/commands/re-export-single.js +0 -426
- package/dist/src/commands/re-export-stale-registrations.d.ts +0 -39
- package/dist/src/commands/re-export-stale-registrations.js +0 -106
- package/dist/src/commands/re-export-summary.d.ts +0 -44
- package/dist/src/commands/re-export-summary.js +0 -59
- package/dist/src/commands/re-export.d.ts +0 -8
- package/dist/src/commands/rebase/abort.d.ts +0 -7
- package/dist/src/commands/rebase/abort.js +0 -67
- package/dist/src/commands/rebase/confirm.d.ts +0 -42
- package/dist/src/commands/rebase/confirm.js +0 -36
- package/dist/src/commands/rebase/conflict-summary.d.ts +0 -12
- package/dist/src/commands/rebase/conflict-summary.js +0 -37
- package/dist/src/commands/rebase/continue.d.ts +0 -7
- package/dist/src/commands/rebase/continue.js +0 -119
- package/dist/src/commands/rebase/index.d.ts +0 -22
- package/dist/src/commands/rebase/index.js +0 -209
- package/dist/src/commands/rebase/patch-loop.d.ts +0 -15
- package/dist/src/commands/rebase/patch-loop.js +0 -289
- package/dist/src/commands/rebase/summary.d.ts +0 -8
- package/dist/src/commands/rebase/summary.js +0 -47
- package/dist/src/commands/register.d.ts +0 -13
- package/dist/src/commands/reset.d.ts +0 -11
- package/dist/src/commands/resolve.d.ts +0 -36
- package/dist/src/commands/run.d.ts +0 -10
- package/dist/src/commands/setup-support.d.ts +0 -35
- package/dist/src/commands/setup-support.js +0 -386
- package/dist/src/commands/setup.d.ts +0 -11
- package/dist/src/commands/source.d.ts +0 -9
- package/dist/src/commands/source.js +0 -120
- package/dist/src/commands/status-check.d.ts +0 -87
- package/dist/src/commands/status-check.js +0 -161
- package/dist/src/commands/status-json.d.ts +0 -45
- package/dist/src/commands/status-json.js +0 -97
- package/dist/src/commands/status-output.d.ts +0 -23
- package/dist/src/commands/status-output.js +0 -231
- package/dist/src/commands/status-ownership.d.ts +0 -54
- package/dist/src/commands/status-ownership.js +0 -59
- package/dist/src/commands/status-scope.d.ts +0 -37
- package/dist/src/commands/status-scope.js +0 -54
- package/dist/src/commands/status.d.ts +0 -11
- package/dist/src/commands/test-appdir.d.ts +0 -6
- package/dist/src/commands/test-appdir.js +0 -29
- package/dist/src/commands/test-browser-preflight.d.ts +0 -28
- package/dist/src/commands/test-browser-preflight.js +0 -197
- package/dist/src/commands/test-build-furnace.d.ts +0 -21
- package/dist/src/commands/test-build-furnace.js +0 -53
- package/dist/src/commands/test-build-phase.d.ts +0 -34
- package/dist/src/commands/test-build-phase.js +0 -291
- package/dist/src/commands/test-checkjs.d.ts +0 -3
- package/dist/src/commands/test-checkjs.js +0 -35
- package/dist/src/commands/test-control-restore.d.ts +0 -40
- package/dist/src/commands/test-control-restore.js +0 -86
- package/dist/src/commands/test-diagnose.d.ts +0 -23
- package/dist/src/commands/test-diagnose.js +0 -317
- package/dist/src/commands/test-dispatch.d.ts +0 -39
- package/dist/src/commands/test-dispatch.js +0 -281
- package/dist/src/commands/test-furnace-reach.d.ts +0 -37
- package/dist/src/commands/test-furnace-reach.js +0 -132
- package/dist/src/commands/test-harness-env.d.ts +0 -23
- package/dist/src/commands/test-harness-env.js +0 -81
- package/dist/src/commands/test-harness-teardown.d.ts +0 -62
- package/dist/src/commands/test-harness-teardown.js +0 -128
- package/dist/src/commands/test-modes.d.ts +0 -57
- package/dist/src/commands/test-modes.js +0 -158
- package/dist/src/commands/test-multi-verdict.d.ts +0 -61
- package/dist/src/commands/test-multi-verdict.js +0 -112
- package/dist/src/commands/test-orchestrate.d.ts +0 -70
- package/dist/src/commands/test-orchestrate.js +0 -277
- package/dist/src/commands/test-perf-scope.d.ts +0 -50
- package/dist/src/commands/test-perf-scope.js +0 -138
- package/dist/src/commands/test-prelock.d.ts +0 -61
- package/dist/src/commands/test-prelock.js +0 -301
- package/dist/src/commands/test-register.d.ts +0 -4
- package/dist/src/commands/test-register.js +0 -181
- package/dist/src/commands/test-results.d.ts +0 -71
- package/dist/src/commands/test-results.js +0 -79
- package/dist/src/commands/test-run.d.ts +0 -89
- package/dist/src/commands/test-run.js +0 -251
- package/dist/src/commands/test-shards.d.ts +0 -114
- package/dist/src/commands/test-shards.js +0 -272
- package/dist/src/commands/test-stale-gate.d.ts +0 -56
- package/dist/src/commands/test-stale-gate.js +0 -208
- package/dist/src/commands/test-verdict.d.ts +0 -102
- package/dist/src/commands/test-verdict.js +0 -176
- package/dist/src/commands/test.d.ts +0 -22
- package/dist/src/commands/token-coverage.d.ts +0 -5
- package/dist/src/commands/token-coverage.js +0 -170
- package/dist/src/commands/token-lint.d.ts +0 -14
- package/dist/src/commands/token-lint.js +0 -151
- package/dist/src/commands/token-list.d.ts +0 -26
- package/dist/src/commands/token-list.js +0 -153
- package/dist/src/commands/token.d.ts +0 -14
- package/dist/src/commands/tree.d.ts +0 -19
- package/dist/src/commands/tree.js +0 -341
- package/dist/src/commands/typecheck-explain.d.ts +0 -13
- package/dist/src/commands/typecheck-explain.js +0 -100
- package/dist/src/commands/typecheck.d.ts +0 -61
- package/dist/src/commands/verify-scope.d.ts +0 -28
- package/dist/src/commands/verify-scope.js +0 -67
- package/dist/src/commands/verify.d.ts +0 -58
- package/dist/src/commands/watch.d.ts +0 -9
- package/dist/src/commands/wire.d.ts +0 -13
- package/dist/src/core/ast-utils.d.ts +0 -73
- package/dist/src/core/ast-utils.js +0 -105
- package/dist/src/core/brand-validation.d.ts +0 -7
- package/dist/src/core/brand-validation.js +0 -14
- package/dist/src/core/branding.d.ts +0 -86
- package/dist/src/core/branding.js +0 -371
- package/dist/src/core/browser-wire.d.ts +0 -48
- package/dist/src/core/browser-wire.js +0 -133
- package/dist/src/core/build-audit-platform.d.ts +0 -67
- package/dist/src/core/build-audit-platform.js +0 -373
- package/dist/src/core/build-audit-registration.d.ts +0 -80
- package/dist/src/core/build-audit-registration.js +0 -181
- package/dist/src/core/build-audit-resolve.d.ts +0 -78
- package/dist/src/core/build-audit-resolve.js +0 -240
- package/dist/src/core/build-audit-skip.d.ts +0 -57
- package/dist/src/core/build-audit-skip.js +0 -112
- package/dist/src/core/build-audit-transforms.d.ts +0 -23
- package/dist/src/core/build-audit-transforms.js +0 -92
- package/dist/src/core/build-audit.d.ts +0 -93
- package/dist/src/core/build-audit.js +0 -633
- package/dist/src/core/build-baseline-types.d.ts +0 -225
- package/dist/src/core/build-baseline-types.js +0 -10
- package/dist/src/core/build-baseline-validate.d.ts +0 -32
- package/dist/src/core/build-baseline-validate.js +0 -173
- package/dist/src/core/build-baseline.d.ts +0 -103
- package/dist/src/core/build-baseline.js +0 -261
- package/dist/src/core/build-jar-escalation.d.ts +0 -61
- package/dist/src/core/build-jar-escalation.js +0 -125
- package/dist/src/core/build-overwrite-guard.d.ts +0 -92
- package/dist/src/core/build-overwrite-guard.js +0 -235
- package/dist/src/core/build-prepare.d.ts +0 -83
- package/dist/src/core/build-prepare.js +0 -414
- package/dist/src/core/build-run-record.d.ts +0 -74
- package/dist/src/core/build-run-record.js +0 -136
- package/dist/src/core/checkjs-support-heads.d.ts +0 -41
- package/dist/src/core/checkjs-support-heads.js +0 -104
- package/dist/src/core/component-source-guard.d.ts +0 -20
- package/dist/src/core/component-source-guard.js +0 -68
- package/dist/src/core/config-mutate.d.ts +0 -16
- package/dist/src/core/config-mutate.js +0 -76
- package/dist/src/core/config-paths.d.ts +0 -16
- package/dist/src/core/config-paths.js +0 -106
- package/dist/src/core/config-state.d.ts +0 -16
- package/dist/src/core/config-state.js +0 -141
- package/dist/src/core/config-validate-build-audit.d.ts +0 -8
- package/dist/src/core/config-validate-build-audit.js +0 -80
- package/dist/src/core/config-validate-check.d.ts +0 -8
- package/dist/src/core/config-validate-check.js +0 -219
- package/dist/src/core/config-validate-file-size.d.ts +0 -15
- package/dist/src/core/config-validate-file-size.js +0 -154
- package/dist/src/core/config-validate-history.d.ts +0 -11
- package/dist/src/core/config-validate-history.js +0 -38
- package/dist/src/core/config-validate-patch-policy.d.ts +0 -7
- package/dist/src/core/config-validate-patch-policy.js +0 -284
- package/dist/src/core/config-validate-test-toolchains.d.ts +0 -8
- package/dist/src/core/config-validate-test-toolchains.js +0 -133
- package/dist/src/core/config-validate-token-scales.d.ts +0 -9
- package/dist/src/core/config-validate-token-scales.js +0 -125
- package/dist/src/core/config-validate.d.ts +0 -11
- package/dist/src/core/config-validate.js +0 -509
- package/dist/src/core/config.d.ts +0 -92
- package/dist/src/core/config.js +0 -169
- package/dist/src/core/coverage-dispatch.d.ts +0 -24
- package/dist/src/core/coverage-dispatch.js +0 -44
- package/dist/src/core/coverage-extend.d.ts +0 -89
- package/dist/src/core/coverage-extend.js +0 -239
- package/dist/src/core/coverage-records.d.ts +0 -107
- package/dist/src/core/coverage-records.js +0 -383
- package/dist/src/core/destructive.d.ts +0 -144
- package/dist/src/core/destructive.js +0 -182
- package/dist/src/core/dev-profile.d.ts +0 -28
- package/dist/src/core/dev-profile.js +0 -58
- package/dist/src/core/diff-hunks.d.ts +0 -73
- package/dist/src/core/diff-hunks.js +0 -286
- package/dist/src/core/discard-baseline.d.ts +0 -60
- package/dist/src/core/discard-baseline.js +0 -247
- package/dist/src/core/display-state.d.ts +0 -50
- package/dist/src/core/display-state.js +0 -87
- package/dist/src/core/engine-changes.d.ts +0 -40
- package/dist/src/core/engine-changes.js +0 -95
- package/dist/src/core/engine-precondition.d.ts +0 -42
- package/dist/src/core/engine-precondition.js +0 -60
- package/dist/src/core/engine-session-lock.d.ts +0 -119
- package/dist/src/core/engine-session-lock.js +0 -374
- package/dist/src/core/engine-write-boundary.d.ts +0 -5
- package/dist/src/core/engine-write-boundary.js +0 -41
- package/dist/src/core/export-moved-code-shape.d.ts +0 -98
- package/dist/src/core/export-moved-code-shape.js +0 -220
- package/dist/src/core/file-lock-owner.d.ts +0 -103
- package/dist/src/core/file-lock-owner.js +0 -259
- package/dist/src/core/file-lock-queue.d.ts +0 -67
- package/dist/src/core/file-lock-queue.js +0 -219
- package/dist/src/core/file-lock-shared.d.ts +0 -57
- package/dist/src/core/file-lock-shared.js +0 -117
- package/dist/src/core/file-lock.d.ts +0 -143
- package/dist/src/core/file-lock.js +0 -531
- package/dist/src/core/firefox-archive.d.ts +0 -45
- package/dist/src/core/firefox-archive.js +0 -96
- package/dist/src/core/firefox-cache.d.ts +0 -30
- package/dist/src/core/firefox-cache.js +0 -248
- package/dist/src/core/firefox-download.d.ts +0 -30
- package/dist/src/core/firefox-download.js +0 -152
- package/dist/src/core/firefox-extract.d.ts +0 -42
- package/dist/src/core/firefox-extract.js +0 -248
- package/dist/src/core/firefox-ignorefile.d.ts +0 -17
- package/dist/src/core/firefox-ignorefile.js +0 -30
- package/dist/src/core/firefox.d.ts +0 -66
- package/dist/src/core/firefox.js +0 -121
- package/dist/src/core/forward-registrations.d.ts +0 -33
- package/dist/src/core/forward-registrations.js +0 -16
- package/dist/src/core/furnace-apply-dry-run.d.ts +0 -12
- package/dist/src/core/furnace-apply-dry-run.js +0 -99
- package/dist/src/core/furnace-apply-ftl.d.ts +0 -49
- package/dist/src/core/furnace-apply-ftl.js +0 -210
- package/dist/src/core/furnace-apply-helpers.d.ts +0 -106
- package/dist/src/core/furnace-apply-helpers.js +0 -436
- package/dist/src/core/furnace-apply-output.d.ts +0 -36
- package/dist/src/core/furnace-apply-output.js +0 -111
- package/dist/src/core/furnace-apply-overwrite-warn.d.ts +0 -67
- package/dist/src/core/furnace-apply-overwrite-warn.js +0 -131
- package/dist/src/core/furnace-apply-undeploy-actions.d.ts +0 -10
- package/dist/src/core/furnace-apply-undeploy-actions.js +0 -48
- package/dist/src/core/furnace-apply.d.ts +0 -49
- package/dist/src/core/furnace-apply.js +0 -465
- package/dist/src/core/furnace-checksum-utils.d.ts +0 -25
- package/dist/src/core/furnace-checksum-utils.js +0 -54
- package/dist/src/core/furnace-composed-source.d.ts +0 -76
- package/dist/src/core/furnace-composed-source.js +0 -167
- package/dist/src/core/furnace-config-array-utils.d.ts +0 -11
- package/dist/src/core/furnace-config-array-utils.js +0 -26
- package/dist/src/core/furnace-config-custom.d.ts +0 -15
- package/dist/src/core/furnace-config-custom.js +0 -73
- package/dist/src/core/furnace-config-order.d.ts +0 -8
- package/dist/src/core/furnace-config-order.js +0 -90
- package/dist/src/core/furnace-config-tokens.d.ts +0 -17
- package/dist/src/core/furnace-config-tokens.js +0 -42
- package/dist/src/core/furnace-config-validate-exceptions.d.ts +0 -17
- package/dist/src/core/furnace-config-validate-exceptions.js +0 -122
- package/dist/src/core/furnace-config-validate.d.ts +0 -32
- package/dist/src/core/furnace-config-validate.js +0 -167
- package/dist/src/core/furnace-config.d.ts +0 -139
- package/dist/src/core/furnace-config.js +0 -511
- package/dist/src/core/furnace-constants.d.ts +0 -81
- package/dist/src/core/furnace-constants.js +0 -125
- package/dist/src/core/furnace-css-fragments.d.ts +0 -96
- package/dist/src/core/furnace-css-fragments.js +0 -279
- package/dist/src/core/furnace-deploy-owner.d.ts +0 -29
- package/dist/src/core/furnace-deploy-owner.js +0 -116
- package/dist/src/core/furnace-dir-entry.d.ts +0 -20
- package/dist/src/core/furnace-dir-entry.js +0 -21
- package/dist/src/core/furnace-fragment-includers.d.ts +0 -56
- package/dist/src/core/furnace-fragment-includers.js +0 -122
- package/dist/src/core/furnace-graph-utils.d.ts +0 -11
- package/dist/src/core/furnace-graph-utils.js +0 -93
- package/dist/src/core/furnace-jsconfig.d.ts +0 -87
- package/dist/src/core/furnace-jsconfig.js +0 -248
- package/dist/src/core/furnace-marker.d.ts +0 -15
- package/dist/src/core/furnace-marker.js +0 -21
- package/dist/src/core/furnace-operation.d.ts +0 -195
- package/dist/src/core/furnace-operation.js +0 -444
- package/dist/src/core/furnace-precondition.d.ts +0 -61
- package/dist/src/core/furnace-precondition.js +0 -67
- package/dist/src/core/furnace-refresh.d.ts +0 -28
- package/dist/src/core/furnace-refresh.js +0 -125
- package/dist/src/core/furnace-registration-ast.d.ts +0 -53
- package/dist/src/core/furnace-registration-ast.js +0 -402
- package/dist/src/core/furnace-registration-jar-inplace.d.ts +0 -12
- package/dist/src/core/furnace-registration-jar-inplace.js +0 -79
- package/dist/src/core/furnace-registration-remove.d.ts +0 -56
- package/dist/src/core/furnace-registration-remove.js +0 -260
- package/dist/src/core/furnace-registration-rename.d.ts +0 -26
- package/dist/src/core/furnace-registration-rename.js +0 -77
- package/dist/src/core/furnace-registration-validate.d.ts +0 -53
- package/dist/src/core/furnace-registration-validate.js +0 -110
- package/dist/src/core/furnace-registration.d.ts +0 -112
- package/dist/src/core/furnace-registration.js +0 -348
- package/dist/src/core/furnace-rollback.d.ts +0 -48
- package/dist/src/core/furnace-rollback.js +0 -170
- package/dist/src/core/furnace-scanner.d.ts +0 -47
- package/dist/src/core/furnace-scanner.js +0 -236
- package/dist/src/core/furnace-stale-export.d.ts +0 -60
- package/dist/src/core/furnace-stale-export.js +0 -125
- package/dist/src/core/furnace-staleness.d.ts +0 -24
- package/dist/src/core/furnace-staleness.js +0 -67
- package/dist/src/core/furnace-state-persist.d.ts +0 -68
- package/dist/src/core/furnace-state-persist.js +0 -116
- package/dist/src/core/furnace-step-errors.d.ts +0 -23
- package/dist/src/core/furnace-step-errors.js +0 -25
- package/dist/src/core/furnace-stories.d.ts +0 -37
- package/dist/src/core/furnace-stories.js +0 -186
- package/dist/src/core/furnace-tag-map.d.ts +0 -47
- package/dist/src/core/furnace-tag-map.js +0 -182
- package/dist/src/core/furnace-validate-accessibility.d.ts +0 -39
- package/dist/src/core/furnace-validate-accessibility.js +0 -417
- package/dist/src/core/furnace-validate-checks.d.ts +0 -4
- package/dist/src/core/furnace-validate-checks.js +0 -6
- package/dist/src/core/furnace-validate-compatibility.d.ts +0 -6
- package/dist/src/core/furnace-validate-compatibility.js +0 -295
- package/dist/src/core/furnace-validate-exceptions.d.ts +0 -49
- package/dist/src/core/furnace-validate-exceptions.js +0 -98
- package/dist/src/core/furnace-validate-helpers.d.ts +0 -7
- package/dist/src/core/furnace-validate-helpers.js +0 -4
- package/dist/src/core/furnace-validate-icon-button.d.ts +0 -7
- package/dist/src/core/furnace-validate-icon-button.js +0 -78
- package/dist/src/core/furnace-validate-registration.d.ts +0 -67
- package/dist/src/core/furnace-validate-registration.js +0 -487
- package/dist/src/core/furnace-validate-structure.d.ts +0 -22
- package/dist/src/core/furnace-validate-structure.js +0 -122
- package/dist/src/core/furnace-validate.d.ts +0 -41
- package/dist/src/core/furnace-validate.js +0 -331
- package/dist/src/core/furnace-version-drift.d.ts +0 -57
- package/dist/src/core/furnace-version-drift.js +0 -102
- package/dist/src/core/gecko-dom-types.d.ts +0 -2
- package/dist/src/core/gecko-dom-types.js +0 -17
- package/dist/src/core/git-base.d.ts +0 -101
- package/dist/src/core/git-base.js +0 -162
- package/dist/src/core/git-diff-new-file.d.ts +0 -40
- package/dist/src/core/git-diff-new-file.js +0 -118
- package/dist/src/core/git-diff.d.ts +0 -82
- package/dist/src/core/git-diff.js +0 -539
- package/dist/src/core/git-file-ops.d.ts +0 -108
- package/dist/src/core/git-file-ops.js +0 -280
- package/dist/src/core/git-readonly-index.d.ts +0 -91
- package/dist/src/core/git-readonly-index.js +0 -177
- package/dist/src/core/git-status.d.ts +0 -84
- package/dist/src/core/git-status.js +0 -208
- package/dist/src/core/git.d.ts +0 -114
- package/dist/src/core/git.js +0 -540
- package/dist/src/core/harness-helper-pids.d.ts +0 -98
- package/dist/src/core/harness-helper-pids.js +0 -240
- package/dist/src/core/harness-orphans.d.ts +0 -118
- package/dist/src/core/harness-orphans.js +0 -268
- package/dist/src/core/harness-port-fallback.d.ts +0 -60
- package/dist/src/core/harness-port-fallback.js +0 -96
- package/dist/src/core/harness-port-reservation.d.ts +0 -60
- package/dist/src/core/harness-port-reservation.js +0 -122
- package/dist/src/core/history-log-file.d.ts +0 -61
- package/dist/src/core/history-log-file.js +0 -164
- package/dist/src/core/history-log.d.ts +0 -20
- package/dist/src/core/history-log.js +0 -30
- package/dist/src/core/json-preserving-edit.d.ts +0 -22
- package/dist/src/core/json-preserving-edit.js +0 -199
- package/dist/src/core/launchable-build.d.ts +0 -39
- package/dist/src/core/launchable-build.js +0 -85
- package/dist/src/core/license-headers.d.ts +0 -103
- package/dist/src/core/license-headers.js +0 -328
- package/dist/src/core/line-prefixer.d.ts +0 -18
- package/dist/src/core/line-prefixer.js +0 -34
- package/dist/src/core/lit-template-regions.d.ts +0 -4
- package/dist/src/core/lit-template-regions.js +0 -50
- package/dist/src/core/mach-build-artifacts.d.ts +0 -176
- package/dist/src/core/mach-build-artifacts.js +0 -436
- package/dist/src/core/mach-error-hints.d.ts +0 -24
- package/dist/src/core/mach-error-hints.js +0 -135
- package/dist/src/core/mach-known-noise-filter.d.ts +0 -122
- package/dist/src/core/mach-known-noise-filter.js +0 -257
- package/dist/src/core/mach-mozconfig.d.ts +0 -57
- package/dist/src/core/mach-mozconfig.js +0 -166
- package/dist/src/core/mach-python.d.ts +0 -19
- package/dist/src/core/mach-python.js +0 -131
- package/dist/src/core/mach-resource-shim.d.ts +0 -107
- package/dist/src/core/mach-resource-shim.js +0 -640
- package/dist/src/core/mach.d.ts +0 -284
- package/dist/src/core/mach.js +0 -445
- package/dist/src/core/marionette-port.d.ts +0 -153
- package/dist/src/core/marionette-port.js +0 -474
- package/dist/src/core/marionette-preflight.d.ts +0 -58
- package/dist/src/core/marionette-preflight.js +0 -332
- package/dist/src/core/markdown-table.d.ts +0 -104
- package/dist/src/core/markdown-table.js +0 -265
- package/dist/src/core/mochitest-server-port.d.ts +0 -81
- package/dist/src/core/mochitest-server-port.js +0 -175
- package/dist/src/core/module-resolution-preflight.d.ts +0 -65
- package/dist/src/core/module-resolution-preflight.js +0 -171
- package/dist/src/core/moz-manifest-helpers.d.ts +0 -79
- package/dist/src/core/moz-manifest-helpers.js +0 -163
- package/dist/src/core/moz-manifest-register.d.ts +0 -19
- package/dist/src/core/moz-manifest-register.js +0 -51
- package/dist/src/core/moz-manifest-rules.d.ts +0 -58
- package/dist/src/core/moz-manifest-rules.js +0 -264
- package/dist/src/core/moz-manifest-tokenizers.d.ts +0 -38
- package/dist/src/core/moz-manifest-tokenizers.js +0 -108
- package/dist/src/core/negative-control-compiled.d.ts +0 -46
- package/dist/src/core/negative-control-compiled.js +0 -109
- package/dist/src/core/negative-control-diff.d.ts +0 -51
- package/dist/src/core/negative-control-diff.js +0 -167
- package/dist/src/core/negative-control.d.ts +0 -150
- package/dist/src/core/negative-control.js +0 -399
- package/dist/src/core/objdir-install-manifests.d.ts +0 -73
- package/dist/src/core/objdir-install-manifests.js +0 -226
- package/dist/src/core/objdir-maintenance.d.ts +0 -10
- package/dist/src/core/objdir-maintenance.js +0 -167
- package/dist/src/core/ownership-table.d.ts +0 -53
- package/dist/src/core/ownership-table.js +0 -159
- package/dist/src/core/parent-exit-watchdog.d.ts +0 -62
- package/dist/src/core/parent-exit-watchdog.js +0 -69
- package/dist/src/core/park-store.d.ts +0 -63
- package/dist/src/core/park-store.js +0 -216
- package/dist/src/core/parser-fallback.d.ts +0 -50
- package/dist/src/core/parser-fallback.js +0 -61
- package/dist/src/core/patch-apply-fuzz.d.ts +0 -57
- package/dist/src/core/patch-apply-fuzz.js +0 -125
- package/dist/src/core/patch-apply.d.ts +0 -88
- package/dist/src/core/patch-apply.js +0 -435
- package/dist/src/core/patch-export-coverage.d.ts +0 -49
- package/dist/src/core/patch-export-coverage.js +0 -73
- package/dist/src/core/patch-export-metadata.d.ts +0 -46
- package/dist/src/core/patch-export-metadata.js +0 -47
- package/dist/src/core/patch-export-update.d.ts +0 -55
- package/dist/src/core/patch-export-update.js +0 -95
- package/dist/src/core/patch-export.d.ts +0 -175
- package/dist/src/core/patch-export.js +0 -312
- package/dist/src/core/patch-files.d.ts +0 -17
- package/dist/src/core/patch-files.js +0 -59
- package/dist/src/core/patch-identifier-suggest.d.ts +0 -26
- package/dist/src/core/patch-identifier-suggest.js +0 -135
- package/dist/src/core/patch-lint-binary.d.ts +0 -45
- package/dist/src/core/patch-lint-binary.js +0 -39
- package/dist/src/core/patch-lint-cache-checkjs.d.ts +0 -45
- package/dist/src/core/patch-lint-cache-checkjs.js +0 -195
- package/dist/src/core/patch-lint-cache.d.ts +0 -79
- package/dist/src/core/patch-lint-cache.js +0 -247
- package/dist/src/core/patch-lint-checkjs-any-import.d.ts +0 -57
- package/dist/src/core/patch-lint-checkjs-any-import.js +0 -91
- package/dist/src/core/patch-lint-checkjs-cache.d.ts +0 -18
- package/dist/src/core/patch-lint-checkjs-cache.js +0 -45
- package/dist/src/core/patch-lint-checkjs-diagnostics.d.ts +0 -17
- package/dist/src/core/patch-lint-checkjs-diagnostics.js +0 -32
- package/dist/src/core/patch-lint-checkjs-resolve.d.ts +0 -31
- package/dist/src/core/patch-lint-checkjs-resolve.js +0 -86
- package/dist/src/core/patch-lint-checkjs.d.ts +0 -182
- package/dist/src/core/patch-lint-checkjs.js +0 -563
- package/dist/src/core/patch-lint-chrome-jsdoc.d.ts +0 -43
- package/dist/src/core/patch-lint-chrome-jsdoc.js +0 -90
- package/dist/src/core/patch-lint-code-lines.d.ts +0 -59
- package/dist/src/core/patch-lint-code-lines.js +0 -105
- package/dist/src/core/patch-lint-creators.d.ts +0 -26
- package/dist/src/core/patch-lint-creators.js +0 -45
- package/dist/src/core/patch-lint-cross.d.ts +0 -232
- package/dist/src/core/patch-lint-cross.js +0 -590
- package/dist/src/core/patch-lint-css.d.ts +0 -27
- package/dist/src/core/patch-lint-css.js +0 -228
- package/dist/src/core/patch-lint-diff-tag.d.ts +0 -51
- package/dist/src/core/patch-lint-diff-tag.js +0 -105
- package/dist/src/core/patch-lint-diff.d.ts +0 -42
- package/dist/src/core/patch-lint-diff.js +0 -100
- package/dist/src/core/patch-lint-file-size.d.ts +0 -57
- package/dist/src/core/patch-lint-file-size.js +0 -62
- package/dist/src/core/patch-lint-forward-registration-extended.d.ts +0 -61
- package/dist/src/core/patch-lint-forward-registration-extended.js +0 -265
- package/dist/src/core/patch-lint-forward-registration.d.ts +0 -71
- package/dist/src/core/patch-lint-forward-registration.js +0 -266
- package/dist/src/core/patch-lint-ignore.d.ts +0 -196
- package/dist/src/core/patch-lint-ignore.js +0 -429
- package/dist/src/core/patch-lint-imports.d.ts +0 -9
- package/dist/src/core/patch-lint-imports.js +0 -90
- package/dist/src/core/patch-lint-jsdoc.d.ts +0 -67
- package/dist/src/core/patch-lint-jsdoc.js +0 -471
- package/dist/src/core/patch-lint-module-registration.d.ts +0 -22
- package/dist/src/core/patch-lint-module-registration.js +0 -97
- package/dist/src/core/patch-lint-mozbuild.d.ts +0 -18
- package/dist/src/core/patch-lint-mozbuild.js +0 -192
- package/dist/src/core/patch-lint-observer.d.ts +0 -37
- package/dist/src/core/patch-lint-observer.js +0 -167
- package/dist/src/core/patch-lint-ownership.d.ts +0 -74
- package/dist/src/core/patch-lint-ownership.js +0 -125
- package/dist/src/core/patch-lint-prettier.d.ts +0 -34
- package/dist/src/core/patch-lint-prettier.js +0 -124
- package/dist/src/core/patch-lint-projection.d.ts +0 -25
- package/dist/src/core/patch-lint-projection.js +0 -43
- package/dist/src/core/patch-lint-queue-types.d.ts +0 -60
- package/dist/src/core/patch-lint-queue-types.js +0 -12
- package/dist/src/core/patch-lint-size-thresholds.d.ts +0 -52
- package/dist/src/core/patch-lint-size-thresholds.js +0 -110
- package/dist/src/core/patch-lint-size.d.ts +0 -117
- package/dist/src/core/patch-lint-size.js +0 -331
- package/dist/src/core/patch-lint-staged-registration.d.ts +0 -98
- package/dist/src/core/patch-lint-staged-registration.js +0 -128
- package/dist/src/core/patch-lint-token-scale.d.ts +0 -65
- package/dist/src/core/patch-lint-token-scale.js +0 -304
- package/dist/src/core/patch-lint-unmanaged-companion.d.ts +0 -106
- package/dist/src/core/patch-lint-unmanaged-companion.js +0 -214
- package/dist/src/core/patch-lint.d.ts +0 -206
- package/dist/src/core/patch-lint.js +0 -533
- package/dist/src/core/patch-lock.d.ts +0 -40
- package/dist/src/core/patch-lock.js +0 -129
- package/dist/src/core/patch-manifest-consistency.d.ts +0 -95
- package/dist/src/core/patch-manifest-consistency.js +0 -256
- package/dist/src/core/patch-manifest-files-affected.d.ts +0 -43
- package/dist/src/core/patch-manifest-files-affected.js +0 -77
- package/dist/src/core/patch-manifest-io.d.ts +0 -199
- package/dist/src/core/patch-manifest-io.js +0 -556
- package/dist/src/core/patch-manifest-key-order.d.ts +0 -23
- package/dist/src/core/patch-manifest-key-order.js +0 -60
- package/dist/src/core/patch-manifest-query.d.ts +0 -55
- package/dist/src/core/patch-manifest-query.js +0 -139
- package/dist/src/core/patch-manifest-resolve.d.ts +0 -21
- package/dist/src/core/patch-manifest-resolve.js +0 -35
- package/dist/src/core/patch-manifest-stage.d.ts +0 -46
- package/dist/src/core/patch-manifest-stage.js +0 -96
- package/dist/src/core/patch-manifest-validate.d.ts +0 -20
- package/dist/src/core/patch-manifest-validate.js +0 -240
- package/dist/src/core/patch-manifest.d.ts +0 -12
- package/dist/src/core/patch-manifest.js +0 -13
- package/dist/src/core/patch-order-legal.d.ts +0 -26
- package/dist/src/core/patch-order-legal.js +0 -88
- package/dist/src/core/patch-parse.d.ts +0 -176
- package/dist/src/core/patch-parse.js +0 -416
- package/dist/src/core/patch-policy-content.d.ts +0 -40
- package/dist/src/core/patch-policy-content.js +0 -219
- package/dist/src/core/patch-policy.d.ts +0 -80
- package/dist/src/core/patch-policy.js +0 -394
- package/dist/src/core/patch-registration-refs.d.ts +0 -41
- package/dist/src/core/patch-registration-refs.js +0 -107
- package/dist/src/core/patch-retired.d.ts +0 -57
- package/dist/src/core/patch-retired.js +0 -92
- package/dist/src/core/patch-source-metadata.d.ts +0 -6
- package/dist/src/core/patch-source-metadata.js +0 -12
- package/dist/src/core/patch-subset.d.ts +0 -18
- package/dist/src/core/patch-subset.js +0 -67
- package/dist/src/core/patch-transform.d.ts +0 -61
- package/dist/src/core/patch-transform.js +0 -198
- package/dist/src/core/preflight-wait.d.ts +0 -22
- package/dist/src/core/preflight-wait.js +0 -62
- package/dist/src/core/process-cpu-time.d.ts +0 -12
- package/dist/src/core/process-cpu-time.js +0 -52
- package/dist/src/core/process-owner.d.ts +0 -9
- package/dist/src/core/process-owner.js +0 -43
- package/dist/src/core/rebase-dry-run.d.ts +0 -48
- package/dist/src/core/rebase-dry-run.js +0 -105
- package/dist/src/core/rebase-from-version.d.ts +0 -46
- package/dist/src/core/rebase-from-version.js +0 -71
- package/dist/src/core/rebase-session.d.ts +0 -100
- package/dist/src/core/rebase-session.js +0 -174
- package/dist/src/core/register-browser-content.d.ts +0 -11
- package/dist/src/core/register-browser-content.js +0 -52
- package/dist/src/core/register-browser-test.d.ts +0 -18
- package/dist/src/core/register-browser-test.js +0 -66
- package/dist/src/core/register-module.d.ts +0 -11
- package/dist/src/core/register-module.js +0 -56
- package/dist/src/core/register-result.d.ts +0 -30
- package/dist/src/core/register-result.js +0 -8
- package/dist/src/core/register-scaffold.d.ts +0 -55
- package/dist/src/core/register-scaffold.js +0 -146
- package/dist/src/core/register-shared-css.d.ts +0 -36
- package/dist/src/core/register-shared-css.js +0 -112
- package/dist/src/core/register-xpcshell-test.d.ts +0 -50
- package/dist/src/core/register-xpcshell-test.js +0 -143
- package/dist/src/core/run-log-redact.d.ts +0 -38
- package/dist/src/core/run-log-redact.js +0 -69
- package/dist/src/core/run-log.d.ts +0 -97
- package/dist/src/core/run-log.js +0 -334
- package/dist/src/core/run-profile.d.ts +0 -57
- package/dist/src/core/run-profile.js +0 -137
- package/dist/src/core/shared-ftl.d.ts +0 -28
- package/dist/src/core/shared-ftl.js +0 -49
- package/dist/src/core/signal-critical.d.ts +0 -38
- package/dist/src/core/signal-critical.js +0 -62
- package/dist/src/core/smoke-patterns.d.ts +0 -81
- package/dist/src/core/smoke-patterns.js +0 -176
- package/dist/src/core/state-file.d.ts +0 -60
- package/dist/src/core/state-file.js +0 -71
- package/dist/src/core/status-binary.d.ts +0 -62
- package/dist/src/core/status-binary.js +0 -133
- package/dist/src/core/status-classify.d.ts +0 -96
- package/dist/src/core/status-classify.js +0 -244
- package/dist/src/core/test-changed-prefs.d.ts +0 -30
- package/dist/src/core/test-changed-prefs.js +0 -93
- package/dist/src/core/test-harness-crash.d.ts +0 -251
- package/dist/src/core/test-harness-crash.js +0 -780
- package/dist/src/core/test-harness-infra.d.ts +0 -32
- package/dist/src/core/test-harness-infra.js +0 -69
- package/dist/src/core/test-harness-output.d.ts +0 -45
- package/dist/src/core/test-harness-output.js +0 -119
- package/dist/src/core/test-harness-signature.d.ts +0 -57
- package/dist/src/core/test-harness-signature.js +0 -35
- package/dist/src/core/test-harness-verdict-notes.d.ts +0 -54
- package/dist/src/core/test-harness-verdict-notes.js +0 -48
- package/dist/src/core/test-host-state.d.ts +0 -14
- package/dist/src/core/test-host-state.js +0 -80
- package/dist/src/core/test-path-scope.d.ts +0 -59
- package/dist/src/core/test-path-scope.js +0 -147
- package/dist/src/core/test-profile-files.d.ts +0 -17
- package/dist/src/core/test-profile-files.js +0 -75
- package/dist/src/core/test-raw-log.d.ts +0 -66
- package/dist/src/core/test-raw-log.js +0 -122
- package/dist/src/core/test-run-completeness.d.ts +0 -97
- package/dist/src/core/test-run-completeness.js +0 -191
- package/dist/src/core/test-stale-check.d.ts +0 -213
- package/dist/src/core/test-stale-check.js +0 -396
- package/dist/src/core/test-stale-exempt.d.ts +0 -40
- package/dist/src/core/test-stale-exempt.js +0 -70
- package/dist/src/core/test-stale-symlink.d.ts +0 -12
- package/dist/src/core/test-stale-symlink.js +0 -39
- package/dist/src/core/test-stall-triage.d.ts +0 -51
- package/dist/src/core/test-stall-triage.js +0 -142
- package/dist/src/core/test-xpcshell-retry.d.ts +0 -35
- package/dist/src/core/test-xpcshell-retry.js +0 -31
- package/dist/src/core/token-category.d.ts +0 -54
- package/dist/src/core/token-category.js +0 -299
- package/dist/src/core/token-coverage.d.ts +0 -12
- package/dist/src/core/token-coverage.js +0 -96
- package/dist/src/core/token-dark-mode.d.ts +0 -64
- package/dist/src/core/token-dark-mode.js +0 -186
- package/dist/src/core/token-docs.d.ts +0 -34
- package/dist/src/core/token-docs.js +0 -102
- package/dist/src/core/token-inventory.d.ts +0 -56
- package/dist/src/core/token-inventory.js +0 -114
- package/dist/src/core/token-lint.d.ts +0 -53
- package/dist/src/core/token-lint.js +0 -131
- package/dist/src/core/token-manager.d.ts +0 -87
- package/dist/src/core/token-manager.js +0 -407
- package/dist/src/core/token-scaffold.d.ts +0 -36
- package/dist/src/core/token-scaffold.js +0 -73
- package/dist/src/core/token-sibling-sheets.d.ts +0 -46
- package/dist/src/core/token-sibling-sheets.js +0 -119
- package/dist/src/core/token-variant.d.ts +0 -90
- package/dist/src/core/token-variant.js +0 -327
- package/dist/src/core/toolchain-preflight.d.ts +0 -90
- package/dist/src/core/toolchain-preflight.js +0 -251
- package/dist/src/core/tree-cow.d.ts +0 -16
- package/dist/src/core/tree-cow.js +0 -71
- package/dist/src/core/tree-guard.d.ts +0 -35
- package/dist/src/core/tree-guard.js +0 -194
- package/dist/src/core/tree-store.d.ts +0 -143
- package/dist/src/core/tree-store.js +0 -478
- package/dist/src/core/typecheck-explain.d.ts +0 -93
- package/dist/src/core/typecheck-explain.js +0 -213
- package/dist/src/core/typecheck-shim.d.ts +0 -90
- package/dist/src/core/typecheck-shim.js +0 -508
- package/dist/src/core/typecheck.d.ts +0 -97
- package/dist/src/core/typecheck.js +0 -457
- package/dist/src/core/wire-destroy.d.ts +0 -25
- package/dist/src/core/wire-destroy.js +0 -126
- package/dist/src/core/wire-dom-fragment.d.ts +0 -44
- package/dist/src/core/wire-dom-fragment.js +0 -139
- package/dist/src/core/wire-init.d.ts +0 -28
- package/dist/src/core/wire-init.js +0 -219
- package/dist/src/core/wire-subscript.d.ts +0 -23
- package/dist/src/core/wire-subscript.js +0 -145
- package/dist/src/core/wire-utils.d.ts +0 -149
- package/dist/src/core/wire-utils.js +0 -338
- package/dist/src/core/xpcshell-appdir.d.ts +0 -157
- package/dist/src/core/xpcshell-appdir.js +0 -299
- package/dist/src/core/xpcshell-profile-dir.d.ts +0 -12
- package/dist/src/core/xpcshell-profile-dir.js +0 -45
- package/dist/src/errors/base.d.ts +0 -217
- package/dist/src/errors/base.js +0 -279
- package/dist/src/errors/build.d.ts +0 -92
- package/dist/src/errors/build.js +0 -166
- package/dist/src/errors/codes.d.ts +0 -74
- package/dist/src/errors/codes.js +0 -74
- package/dist/src/errors/config.d.ts +0 -17
- package/dist/src/errors/config.js +0 -39
- package/dist/src/errors/download.d.ts +0 -66
- package/dist/src/errors/download.js +0 -160
- package/dist/src/errors/furnace.d.ts +0 -20
- package/dist/src/errors/furnace.js +0 -28
- package/dist/src/errors/git.d.ts +0 -65
- package/dist/src/errors/git.js +0 -140
- package/dist/src/errors/patch.d.ts +0 -27
- package/dist/src/errors/patch.js +0 -52
- package/dist/src/errors/rebase.d.ts +0 -42
- package/dist/src/errors/rebase.js +0 -71
- package/dist/src/errors/run.d.ts +0 -16
- package/dist/src/errors/run.js +0 -22
- package/dist/src/index.d.ts +0 -42
- package/dist/src/index.js +0 -32
- package/dist/src/types/cli.d.ts +0 -14
- package/dist/src/types/commands/index.d.ts +0 -6
- package/dist/src/types/commands/index.js +0 -5
- package/dist/src/types/commands/options.d.ts +0 -1372
- package/dist/src/types/commands/options.js +0 -5
- package/dist/src/types/commands/patches.d.ts +0 -352
- package/dist/src/types/commands/patches.js +0 -5
- package/dist/src/types/commands/project.d.ts +0 -51
- package/dist/src/types/commands/project.js +0 -5
- package/dist/src/types/config.d.ts +0 -732
- package/dist/src/types/config.js +0 -15
- package/dist/src/types/furnace.d.ts +0 -422
- package/dist/src/types/furnace.js +0 -26
- package/dist/src/types/index.d.ts +0 -5
- package/dist/src/types/index.js +0 -5
- package/dist/src/types/json.d.ts +0 -22
- package/dist/src/types/json.js +0 -11
- package/dist/src/types/typecheck.d.ts +0 -51
- package/dist/src/types/typecheck.js +0 -14
- package/dist/src/utils/assert.d.ts +0 -34
- package/dist/src/utils/assert.js +0 -61
- package/dist/src/utils/build-info.d.ts +0 -30
- package/dist/src/utils/build-info.js +0 -99
- package/dist/src/utils/child-env.d.ts +0 -28
- package/dist/src/utils/child-env.js +0 -27
- package/dist/src/utils/concurrency.d.ts +0 -8
- package/dist/src/utils/concurrency.js +0 -32
- package/dist/src/utils/elapsed.d.ts +0 -2
- package/dist/src/utils/elapsed.js +0 -23
- package/dist/src/utils/errors.d.ts +0 -39
- package/dist/src/utils/errors.js +0 -67
- package/dist/src/utils/fs.d.ts +0 -113
- package/dist/src/utils/fs.js +0 -337
- package/dist/src/utils/hash.d.ts +0 -12
- package/dist/src/utils/hash.js +0 -16
- package/dist/src/utils/line-dispatch.d.ts +0 -15
- package/dist/src/utils/line-dispatch.js +0 -48
- package/dist/src/utils/logger.d.ts +0 -109
- package/dist/src/utils/logger.js +0 -270
- package/dist/src/utils/machine-output.d.ts +0 -12
- package/dist/src/utils/machine-output.js +0 -33
- package/dist/src/utils/options.d.ts +0 -155
- package/dist/src/utils/options.js +0 -312
- package/dist/src/utils/package-root.d.ts +0 -21
- package/dist/src/utils/package-root.js +0 -70
- package/dist/src/utils/parse.d.ts +0 -117
- package/dist/src/utils/parse.js +0 -214
- package/dist/src/utils/path-glob.d.ts +0 -15
- package/dist/src/utils/path-glob.js +0 -47
- package/dist/src/utils/paths.d.ts +0 -31
- package/dist/src/utils/paths.js +0 -80
- package/dist/src/utils/platform.d.ts +0 -9
- package/dist/src/utils/platform.js +0 -14
- package/dist/src/utils/process-group.d.ts +0 -42
- package/dist/src/utils/process-group.js +0 -190
- package/dist/src/utils/process-input.d.ts +0 -27
- package/dist/src/utils/process-input.js +0 -46
- package/dist/src/utils/process.d.ts +0 -293
- package/dist/src/utils/process.js +0 -593
- package/dist/src/utils/ps-duration.d.ts +0 -31
- package/dist/src/utils/ps-duration.js +0 -70
- package/dist/src/utils/regex.d.ts +0 -39
- package/dist/src/utils/regex.js +0 -109
- package/dist/src/utils/sleep.d.ts +0 -25
- package/dist/src/utils/sleep.js +0 -30
- package/dist/src/utils/stdio-drain.d.ts +0 -28
- package/dist/src/utils/stdio-drain.js +0 -54
- package/dist/src/utils/validation.d.ts +0 -182
- package/dist/src/utils/validation.js +0 -394
- package/docs/lifecycle-invariants.md +0 -523
- package/docs/run-logs.md +0 -122
- package/docs/verification-trees.md +0 -49
- /package/dist/src/{types/cli.js → cli/context.js} +0 -0
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Reads the objdir's mozpack install manifests to tell how an engine source
|
|
4
|
-
* reaches the runtime a test runs against.
|
|
5
|
-
*
|
|
6
|
-
* mozbuild installs packaged files from manifests under
|
|
7
|
-
* `obj-*\/_build_manifests/install/` and `obj-*\/faster/install_*`. Each
|
|
8
|
-
* line after the version is a `\x1f`-separated entry: type 1 installs a
|
|
9
|
-
* symlink to an absolute source, 2 copies it, 7 preprocesses it, and 5/6
|
|
10
|
-
* are the pattern forms of 1/2 (`base`, `pattern`, `dest dir`). In a
|
|
11
|
-
* non-Windows dev build most chrome and test files are type-1 symlinks back
|
|
12
|
-
* into `engine/`, so an edit to such a file is already what the runtime
|
|
13
|
-
* reads. `_test_files` is rewritten and installed by `mach test` itself on
|
|
14
|
-
* every dispatch, so test files are restaged when a run starts.
|
|
15
|
-
*
|
|
16
|
-
* Every classification is conservative: an entry whose install base is
|
|
17
|
-
* unknown, a symlink that does not resolve to the edited source, or an
|
|
18
|
-
* unreadable manifest leaves the path classified as packaged.
|
|
19
|
-
*/
|
|
20
|
-
import { lstat, readdir, readFile, realpath } from 'node:fs/promises';
|
|
21
|
-
import { join, resolve } from 'node:path';
|
|
22
|
-
import { toError } from '../utils/errors.js';
|
|
23
|
-
import { verbose } from '../utils/logger.js';
|
|
24
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
25
|
-
import { escapeRegex } from '../utils/regex.js';
|
|
26
|
-
/** Install-manifest field separator. */
|
|
27
|
-
const FIELD_SEPARATOR = '\x1f';
|
|
28
|
-
/** mozpack entry types that install a symlink. */
|
|
29
|
-
const SYMLINK_TYPE = '1';
|
|
30
|
-
const PATTERN_SYMLINK_TYPE = '5';
|
|
31
|
-
const PATTERN_COPY_TYPE = '6';
|
|
32
|
-
/** Entry types with no source file (existence markers, inline content). */
|
|
33
|
-
const SOURCELESS_TYPES = new Set(['3', '4', '8']);
|
|
34
|
-
/** The manifest `mach test` writes and installs at every dispatch. */
|
|
35
|
-
const DISPATCH_MANIFEST = '_test_files';
|
|
36
|
-
/** Converts a mozpack pattern (`*`, `**`, `?`) to an anchored RegExp. */
|
|
37
|
-
function patternToRegExp(pattern) {
|
|
38
|
-
if (pattern.split('/').includes('..'))
|
|
39
|
-
return undefined;
|
|
40
|
-
let source = '';
|
|
41
|
-
for (let i = 0; i < pattern.length; i += 1) {
|
|
42
|
-
const char = pattern[i] ?? '';
|
|
43
|
-
if (pattern.startsWith('**/', i)) {
|
|
44
|
-
source += '(?:.*/)?';
|
|
45
|
-
i += 2;
|
|
46
|
-
}
|
|
47
|
-
else if (pattern.startsWith('**', i)) {
|
|
48
|
-
source += '.*';
|
|
49
|
-
i += 1;
|
|
50
|
-
}
|
|
51
|
-
else if (char === '*')
|
|
52
|
-
source += '[^/]*';
|
|
53
|
-
else if (char === '?')
|
|
54
|
-
source += '[^/]';
|
|
55
|
-
else
|
|
56
|
-
source += escapeRegex(char);
|
|
57
|
-
}
|
|
58
|
-
return new RegExp(`^${source}$`);
|
|
59
|
-
}
|
|
60
|
-
function engineRelative(roots, absolute) {
|
|
61
|
-
const normalized = normalizePathSlashes(absolute);
|
|
62
|
-
for (const root of roots) {
|
|
63
|
-
if (normalized.startsWith(`${root}/`))
|
|
64
|
-
return normalized.slice(root.length + 1);
|
|
65
|
-
}
|
|
66
|
-
return undefined;
|
|
67
|
-
}
|
|
68
|
-
/** Install base (objdir-relative) of a `_build_manifests/install/<name>` manifest. */
|
|
69
|
-
function buildManifestBase(name) {
|
|
70
|
-
if (name === DISPATCH_MANIFEST || name === '_tests')
|
|
71
|
-
return '_tests';
|
|
72
|
-
const dist = /^dist_(.+)$/.exec(name);
|
|
73
|
-
return dist ? `dist/${dist[1] ?? ''}` : undefined;
|
|
74
|
-
}
|
|
75
|
-
/** `faster/install_*` manifest name → install base, from `faster/Makefile`. */
|
|
76
|
-
async function fasterManifestBases(objDirPath) {
|
|
77
|
-
const bases = new Map();
|
|
78
|
-
const makefile = await readFile(join(objDirPath, 'faster', 'Makefile'), 'utf8').catch(() => '');
|
|
79
|
-
const line = /^INSTALL_MANIFESTS\s*=(.*)$/m.exec(makefile)?.[1] ?? '';
|
|
80
|
-
for (const base of line.trim().split(/\s+/).filter(Boolean)) {
|
|
81
|
-
bases.set(`install_${base.replaceAll('/', '_')}`, base);
|
|
82
|
-
}
|
|
83
|
-
// `mach build faster` installs a merged copy of the per-directory
|
|
84
|
-
// manifests, rooted at dist/bin.
|
|
85
|
-
bases.set('unified_install_dist_bin', 'dist/bin');
|
|
86
|
-
return bases;
|
|
87
|
-
}
|
|
88
|
-
function parseManifest(index, content, installRoot, atDispatch) {
|
|
89
|
-
for (const line of content.split('\n').slice(1)) {
|
|
90
|
-
const fields = line.split(FIELD_SEPARATOR);
|
|
91
|
-
const [type = '', dest = '', source = ''] = fields;
|
|
92
|
-
if (SOURCELESS_TYPES.has(type) || source === '')
|
|
93
|
-
continue;
|
|
94
|
-
const base = engineRelative(index.engineRoots, source);
|
|
95
|
-
if (base === undefined)
|
|
96
|
-
continue;
|
|
97
|
-
if (type === PATTERN_SYMLINK_TYPE || type === PATTERN_COPY_TYPE) {
|
|
98
|
-
const pattern = patternToRegExp(fields[3] ?? '');
|
|
99
|
-
const destDir = fields[4];
|
|
100
|
-
if (pattern === undefined)
|
|
101
|
-
continue;
|
|
102
|
-
index.patterns.push({
|
|
103
|
-
symlink: type === PATTERN_SYMLINK_TYPE,
|
|
104
|
-
base,
|
|
105
|
-
pattern,
|
|
106
|
-
destDir: installRoot === undefined || destDir === undefined
|
|
107
|
-
? undefined
|
|
108
|
-
: join(installRoot, destDir),
|
|
109
|
-
atDispatch,
|
|
110
|
-
});
|
|
111
|
-
continue;
|
|
112
|
-
}
|
|
113
|
-
const entries = index.explicit.get(base) ?? [];
|
|
114
|
-
entries.push({
|
|
115
|
-
symlink: type === SYMLINK_TYPE,
|
|
116
|
-
dest: installRoot === undefined ? undefined : join(installRoot, dest),
|
|
117
|
-
atDispatch,
|
|
118
|
-
});
|
|
119
|
-
index.explicit.set(base, entries);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
async function readManifests(dir, baseFor, index, objDirPath) {
|
|
123
|
-
let names;
|
|
124
|
-
try {
|
|
125
|
-
names = await readdir(dir);
|
|
126
|
-
}
|
|
127
|
-
catch {
|
|
128
|
-
return false;
|
|
129
|
-
}
|
|
130
|
-
for (const name of names) {
|
|
131
|
-
if (name.startsWith('.') || name.endsWith('.track') || name === 'Makefile')
|
|
132
|
-
continue;
|
|
133
|
-
const content = await readFile(join(dir, name), 'utf8').catch(() => undefined);
|
|
134
|
-
if (content === undefined)
|
|
135
|
-
continue;
|
|
136
|
-
const base = baseFor(name);
|
|
137
|
-
parseManifest(index, content, base === undefined ? undefined : join(objDirPath, base), name === DISPATCH_MANIFEST);
|
|
138
|
-
}
|
|
139
|
-
return true;
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Loads every install manifest of `objDir`. Undefined when neither manifest
|
|
143
|
-
* directory is readable, i.e. nothing can be classified.
|
|
144
|
-
*
|
|
145
|
-
* @param engineDir - Absolute engine directory
|
|
146
|
-
* @param objDir - Objdir name under the engine directory
|
|
147
|
-
*/
|
|
148
|
-
export async function loadInstallManifestIndex(engineDir, objDir) {
|
|
149
|
-
const objDirPath = join(engineDir, objDir);
|
|
150
|
-
const roots = [normalizePathSlashes(resolve(engineDir))];
|
|
151
|
-
const real = await realpath(engineDir).catch(() => undefined);
|
|
152
|
-
if (real !== undefined && !roots.includes(normalizePathSlashes(real))) {
|
|
153
|
-
roots.push(normalizePathSlashes(real));
|
|
154
|
-
}
|
|
155
|
-
const index = { explicit: new Map(), patterns: [], engineRoots: roots };
|
|
156
|
-
try {
|
|
157
|
-
const fasterBases = await fasterManifestBases(objDirPath);
|
|
158
|
-
const readBuild = await readManifests(join(objDirPath, '_build_manifests', 'install'), buildManifestBase, index, objDirPath);
|
|
159
|
-
const readFaster = await readManifests(join(objDirPath, 'faster'), (name) => fasterBases.get(name), index, objDirPath);
|
|
160
|
-
return readBuild || readFaster ? index : undefined;
|
|
161
|
-
}
|
|
162
|
-
catch (error) {
|
|
163
|
-
verbose(`Install manifests unreadable under ${objDir}: ${toError(error).message}`);
|
|
164
|
-
return undefined;
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
/** True when `dest` is a symlink resolving to the same file as `source`. */
|
|
168
|
-
async function isSymlinkTo(dest, source) {
|
|
169
|
-
if (dest === undefined)
|
|
170
|
-
return false;
|
|
171
|
-
try {
|
|
172
|
-
if (!(await lstat(dest)).isSymbolicLink())
|
|
173
|
-
return false;
|
|
174
|
-
return (await realpath(dest)) === (await realpath(source));
|
|
175
|
-
}
|
|
176
|
-
catch {
|
|
177
|
-
return false;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* Classifies how `relPath` reaches the runtime. See {@link RuntimeDelivery}.
|
|
182
|
-
*
|
|
183
|
-
* @param index - Index from {@link loadInstallManifestIndex}
|
|
184
|
-
* @param engineDir - Absolute engine directory
|
|
185
|
-
* @param relPath - Engine-relative POSIX path
|
|
186
|
-
*/
|
|
187
|
-
export async function classifyRuntimeDelivery(index, engineDir, relPath) {
|
|
188
|
-
const entries = [...(index.explicit.get(relPath) ?? [])];
|
|
189
|
-
for (const pattern of index.patterns) {
|
|
190
|
-
if (!relPath.startsWith(`${pattern.base}/`))
|
|
191
|
-
continue;
|
|
192
|
-
const rest = relPath.slice(pattern.base.length + 1);
|
|
193
|
-
if (!pattern.pattern.test(rest))
|
|
194
|
-
continue;
|
|
195
|
-
entries.push({
|
|
196
|
-
symlink: pattern.symlink,
|
|
197
|
-
dest: pattern.destDir === undefined ? undefined : join(pattern.destDir, rest),
|
|
198
|
-
atDispatch: pattern.atDispatch,
|
|
199
|
-
});
|
|
200
|
-
}
|
|
201
|
-
if (entries.length === 0)
|
|
202
|
-
return 'unlisted';
|
|
203
|
-
if (entries.every((entry) => entry.atDispatch))
|
|
204
|
-
return 'at-dispatch';
|
|
205
|
-
const source = join(engineDir, relPath);
|
|
206
|
-
for (const entry of entries) {
|
|
207
|
-
if (entry.atDispatch)
|
|
208
|
-
continue;
|
|
209
|
-
if (!entry.symlink || !(await isSymlinkTo(entry.dest, source)))
|
|
210
|
-
return 'packaged';
|
|
211
|
-
}
|
|
212
|
-
return 'live';
|
|
213
|
-
}
|
|
214
|
-
/**
|
|
215
|
-
* True when any install-manifest entry installs something from at or
|
|
216
|
-
* beneath the engine-relative directory `dir`, or a pattern entry's base
|
|
217
|
-
* contains it.
|
|
218
|
-
*/
|
|
219
|
-
export function installsFromDirectory(index, dir) {
|
|
220
|
-
const prefix = dir.replace(/\/+$/, '');
|
|
221
|
-
const under = (path) => path === prefix || path.startsWith(`${prefix}/`);
|
|
222
|
-
for (const source of index.explicit.keys())
|
|
223
|
-
if (under(source))
|
|
224
|
-
return true;
|
|
225
|
-
return index.patterns.some((pattern) => under(pattern.base) || prefix.startsWith(`${pattern.base}/`));
|
|
226
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/** Refuses an objdir that writes through a directory alias into a different checkout. */
|
|
2
|
-
export declare function assertLocalObjdir(engineDir: string, objDir: string): Promise<void>;
|
|
3
|
-
/** Repairs copied links and dependency metadata BEFORE configure can consume config.track. */
|
|
4
|
-
export declare function relocateObjdirProducts(engineDir: string, objDir: string, oldRoot: string): Promise<void>;
|
|
5
|
-
/** Finds a link still consulting the previous source tree after relocation/configure. */
|
|
6
|
-
export declare function findStaleObjdirLink(engineDir: string, objDir: string, oldRoot: string): Promise<string | undefined>;
|
|
7
|
-
/** Prunes only dangling _tests symlinks; never descends through a symlink. */
|
|
8
|
-
export declare function pruneDanglingTestLinks(engineDir: string, objDir: string): Promise<number>;
|
|
9
|
-
/** Names a partial-config group whose entire persisted value set was nulled. */
|
|
10
|
-
export declare function assertHealthyPartialConfig(engineDir: string, objDir: string): Promise<void>;
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
import { lstat, readdir, readFile, readlink, realpath, rename, rm, symlink, } from 'node:fs/promises';
|
|
3
|
-
import { dirname, join, resolve, sep } from 'node:path';
|
|
4
|
-
import { GeneralError } from '../errors/base.js';
|
|
5
|
-
import { getNodeErrorCode } from '../utils/errors.js';
|
|
6
|
-
import { writeText } from '../utils/fs.js';
|
|
7
|
-
/** Visits objdir entries without following directory symlinks into another tree. */
|
|
8
|
-
async function walk(dir, visit) {
|
|
9
|
-
for (const entry of await readdir(dir, { withFileTypes: true })) {
|
|
10
|
-
const path = join(dir, entry.name);
|
|
11
|
-
if (entry.isDirectory())
|
|
12
|
-
await walk(path, visit);
|
|
13
|
-
else
|
|
14
|
-
await visit(path, entry.isSymbolicLink());
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
/** Refuses an objdir that writes through a directory alias into a different checkout. */
|
|
18
|
-
export async function assertLocalObjdir(engineDir, objDir) {
|
|
19
|
-
if (!/^[^/\\:]+$/.test(objDir) || objDir === '.' || objDir === '..') {
|
|
20
|
-
throw new GeneralError(`Objdir ${objDir} must be a local directory name.`);
|
|
21
|
-
}
|
|
22
|
-
const expected = resolve(engineDir, objDir);
|
|
23
|
-
if ((await realpath(expected)) !== resolve(await realpath(engineDir), objDir) ||
|
|
24
|
-
!(await lstat(expected)).isDirectory()) {
|
|
25
|
-
throw new GeneralError(`Objdir ${expected} resolves outside its local directory. Refusing to configure or rewrite it.`);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
function replacePrefix(value, oldRoot, newRoot) {
|
|
29
|
-
return value === oldRoot || value.startsWith(oldRoot + sep)
|
|
30
|
-
? newRoot + value.slice(oldRoot.length)
|
|
31
|
-
: value;
|
|
32
|
-
}
|
|
33
|
-
/** Rewrites references under oldRoot, including the forward-slash spelling mozbuild writes on Windows. */
|
|
34
|
-
function rewriteRootReferences(content, oldRoot, newRoot) {
|
|
35
|
-
const rewritten = content.replaceAll(oldRoot + sep, newRoot + sep);
|
|
36
|
-
if (sep !== '\\')
|
|
37
|
-
return rewritten;
|
|
38
|
-
return rewritten
|
|
39
|
-
.replaceAll(oldRoot + '/', newRoot + '/')
|
|
40
|
-
.replaceAll(oldRoot.replaceAll('\\', '/') + '/', newRoot.replaceAll('\\', '/') + '/');
|
|
41
|
-
}
|
|
42
|
-
function isDependencyMetadata(path) {
|
|
43
|
-
return (/\.(?:pp|d)$/.test(path) ||
|
|
44
|
-
/[/\\]faster[/\\]/.test(path) ||
|
|
45
|
-
/[/\\]config\.statusd[/\\].*[/\\]config\.track$/.test(path) ||
|
|
46
|
-
/[/\\]\.fingerprint[/\\].*\.json$/.test(path));
|
|
47
|
-
}
|
|
48
|
-
/** Repairs copied links and dependency metadata BEFORE configure can consume config.track. */
|
|
49
|
-
export async function relocateObjdirProducts(engineDir, objDir, oldRoot) {
|
|
50
|
-
await assertLocalObjdir(engineDir, objDir);
|
|
51
|
-
const root = resolve(engineDir, objDir);
|
|
52
|
-
const newRoot = resolve(engineDir);
|
|
53
|
-
const canonicalRoot = await realpath(root);
|
|
54
|
-
// Configure writes these groups. Even a local objdir can contain a copied
|
|
55
|
-
// directory alias into a peer, so validate each parent before touching it.
|
|
56
|
-
for (const directory of ['config.statusd', 'config.statusd/substs', 'config.statusd/defines']) {
|
|
57
|
-
const path = join(root, directory);
|
|
58
|
-
try {
|
|
59
|
-
if (!(await lstat(path)).isDirectory() ||
|
|
60
|
-
(await realpath(path)) !== join(canonicalRoot, directory))
|
|
61
|
-
throw new GeneralError(`Partial-config directory ${path} is aliased. Refusing relocation before configure.`);
|
|
62
|
-
}
|
|
63
|
-
catch (error) {
|
|
64
|
-
if (getNodeErrorCode(error) !== 'ENOENT')
|
|
65
|
-
throw error;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
await walk(root, async (path, link) => {
|
|
69
|
-
// Remove tracking symlinks too, without following their write targets.
|
|
70
|
-
if (/[/\\]config\.statusd[/\\].*[/\\]config\.track$/.test(path)) {
|
|
71
|
-
await rm(path);
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
if (link) {
|
|
75
|
-
const target = await readlink(path);
|
|
76
|
-
const absolute = resolve(dirname(path), target);
|
|
77
|
-
const relocated = replacePrefix(absolute, oldRoot, newRoot);
|
|
78
|
-
if (relocated !== absolute) {
|
|
79
|
-
const temp = `${path}.relocate-${process.pid}`;
|
|
80
|
-
await symlink(relocated, temp);
|
|
81
|
-
try {
|
|
82
|
-
await rename(temp, path);
|
|
83
|
-
}
|
|
84
|
-
catch (error) {
|
|
85
|
-
// Windows refuses to rename over a directory link; replace it in two steps.
|
|
86
|
-
if (process.platform !== 'win32' || getNodeErrorCode(error) !== 'EPERM')
|
|
87
|
-
throw error;
|
|
88
|
-
await rm(path);
|
|
89
|
-
await rename(temp, path);
|
|
90
|
-
}
|
|
91
|
-
finally {
|
|
92
|
-
await rm(temp, { force: true });
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
else if (isDependencyMetadata(path)) {
|
|
97
|
-
const content = await readFile(path, 'utf8');
|
|
98
|
-
const rewritten = rewriteRootReferences(content, oldRoot, newRoot);
|
|
99
|
-
if (content !== rewritten)
|
|
100
|
-
await writeText(path, rewritten);
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
/** Finds a link still consulting the previous source tree after relocation/configure. */
|
|
105
|
-
export async function findStaleObjdirLink(engineDir, objDir, oldRoot) {
|
|
106
|
-
let violation;
|
|
107
|
-
await walk(resolve(engineDir, objDir), async (path, link) => {
|
|
108
|
-
if (!link || violation)
|
|
109
|
-
return;
|
|
110
|
-
const target = resolve(dirname(path), await readlink(path));
|
|
111
|
-
const canonical = await realpath(path).catch(() => target);
|
|
112
|
-
if ([target, canonical].some((value) => value === oldRoot || value.startsWith(oldRoot + sep))) {
|
|
113
|
-
violation = `${path} still links to the previous engine ${oldRoot}`;
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
return violation;
|
|
117
|
-
}
|
|
118
|
-
/** Prunes only dangling _tests symlinks; never descends through a symlink. */
|
|
119
|
-
export async function pruneDanglingTestLinks(engineDir, objDir) {
|
|
120
|
-
let removed = 0;
|
|
121
|
-
const root = join(engineDir, objDir, '_tests');
|
|
122
|
-
try {
|
|
123
|
-
if (!(await lstat(root)).isDirectory())
|
|
124
|
-
return 0;
|
|
125
|
-
await assertLocalObjdir(engineDir, objDir);
|
|
126
|
-
await walk(root, async (path, link) => {
|
|
127
|
-
if (!link)
|
|
128
|
-
return;
|
|
129
|
-
try {
|
|
130
|
-
await realpath(path);
|
|
131
|
-
}
|
|
132
|
-
catch (error) {
|
|
133
|
-
if (getNodeErrorCode(error) !== 'ENOENT')
|
|
134
|
-
throw error;
|
|
135
|
-
await rm(path);
|
|
136
|
-
removed++;
|
|
137
|
-
}
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
catch (error) {
|
|
141
|
-
if (getNodeErrorCode(error) !== 'ENOENT')
|
|
142
|
-
throw error;
|
|
143
|
-
}
|
|
144
|
-
return removed;
|
|
145
|
-
}
|
|
146
|
-
/** Names a partial-config group whose entire persisted value set was nulled. */
|
|
147
|
-
export async function assertHealthyPartialConfig(engineDir, objDir) {
|
|
148
|
-
for (const group of ['substs', 'defines']) {
|
|
149
|
-
const dir = join(engineDir, objDir, 'config.statusd', group);
|
|
150
|
-
let entries;
|
|
151
|
-
try {
|
|
152
|
-
entries = await readdir(dir, { withFileTypes: true });
|
|
153
|
-
}
|
|
154
|
-
catch (error) {
|
|
155
|
-
if (getNodeErrorCode(error) === 'ENOENT')
|
|
156
|
-
continue;
|
|
157
|
-
throw error;
|
|
158
|
-
}
|
|
159
|
-
const files = entries.filter((entry) => entry.isFile() && entry.name !== 'config.track');
|
|
160
|
-
if (files.length === 0)
|
|
161
|
-
continue;
|
|
162
|
-
const values = await Promise.all(files.map((entry) => readFile(join(dir, entry.name), 'utf8')));
|
|
163
|
-
if (values.every((value) => value.trim() === 'null')) {
|
|
164
|
-
throw new GeneralError(`All ${files.length} partial-config ${group} values in ${dir} are null. Repair with "cd engine && python3 ./mach configure", then retry the full build.`);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import type { PatchMetadata } from '../types/commands/index.js';
|
|
2
|
-
import type { FileClassification } from './status-classify.js';
|
|
3
|
-
/**
|
|
4
|
-
* A row in the flat path → owning-patch ownership table.
|
|
5
|
-
*/
|
|
6
|
-
export interface OwnershipRow {
|
|
7
|
-
path: string;
|
|
8
|
-
owners: string[];
|
|
9
|
-
conflict: boolean;
|
|
10
|
-
conflictReason: 'files-affected' | 'duplicate-create' | null;
|
|
11
|
-
unmanaged: boolean;
|
|
12
|
-
state: 'owned' | 'patch-backed' | 'patch-owned-drift' | 'unmanaged' | 'conflict';
|
|
13
|
-
}
|
|
14
|
-
interface StatusFile {
|
|
15
|
-
status: string;
|
|
16
|
-
file: string;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Builds the flat ownership table from the manifest, worktree status, and the
|
|
20
|
-
* duplicate-new-file-creation map produced by cross-patch lint.
|
|
21
|
-
*
|
|
22
|
-
* Populated from three sources:
|
|
23
|
-
*
|
|
24
|
-
* 1. Every path in every patch's `filesAffected`, so managed paths show up
|
|
25
|
-
* even when they are not currently modified on disk.
|
|
26
|
-
* 2. Any worktree status entries not claimed by any patch (flagged as
|
|
27
|
-
* `unmanaged`).
|
|
28
|
-
* 3. Paths created by more than one patch in `new file mode`, surfaced as
|
|
29
|
-
* ownership conflicts with `conflictReason = 'duplicate-create'`. This
|
|
30
|
-
* is what keeps `status --ownership` aligned with `fireforge verify`:
|
|
31
|
-
* walking only `filesAffected` reports a queue clean that `verify`
|
|
32
|
-
* rejects for duplicate `/dev/null → b/foo.js` creations.
|
|
33
|
-
*
|
|
34
|
-
* A path claimed by more than one patch (either via `filesAffected` or as a
|
|
35
|
-
* duplicate creation) is flagged as `conflict` with the origin recorded in
|
|
36
|
-
* `conflictReason` so the output can disambiguate.
|
|
37
|
-
*
|
|
38
|
-
* @param manifestPatches - Manifest rows, each with its `filesAffected`
|
|
39
|
-
* @param worktreeFiles - Raw worktree status entries. Untracked and modified
|
|
40
|
-
* both acceptable
|
|
41
|
-
* @param newFileCreatorsByPath - Map produced by
|
|
42
|
-
* {@link import('../core/patch-lint.js').collectNewFileCreatorsByPath}.
|
|
43
|
-
* Paths with a `.length > 1` owner list become duplicate-create conflicts
|
|
44
|
-
*/
|
|
45
|
-
export declare function buildOwnershipTable(manifestPatches: PatchMetadata[], worktreeFiles: StatusFile[], newFileCreatorsByPath: Map<string, string[]>, classifications?: Map<string, FileClassification>): OwnershipRow[];
|
|
46
|
-
/**
|
|
47
|
-
* Renders the ownership table as a GitHub-flavored Markdown pipe table.
|
|
48
|
-
* Using markdown-table's own serializer would require a seed document to
|
|
49
|
-
* graft onto, which is overkill for ad-hoc status output. The rendering
|
|
50
|
-
* here is trivial enough to inline.
|
|
51
|
-
*/
|
|
52
|
-
export declare function renderOwnershipTable(rows: OwnershipRow[]): void;
|
|
53
|
-
export {};
|
|
@@ -1,159 +0,0 @@
|
|
|
1
|
-
import { info } from '../utils/logger.js';
|
|
2
|
-
import { buildPatchClaims } from './status-classify.js';
|
|
3
|
-
/**
|
|
4
|
-
* Builds the flat ownership table from the manifest, worktree status, and the
|
|
5
|
-
* duplicate-new-file-creation map produced by cross-patch lint.
|
|
6
|
-
*
|
|
7
|
-
* Populated from three sources:
|
|
8
|
-
*
|
|
9
|
-
* 1. Every path in every patch's `filesAffected`, so managed paths show up
|
|
10
|
-
* even when they are not currently modified on disk.
|
|
11
|
-
* 2. Any worktree status entries not claimed by any patch (flagged as
|
|
12
|
-
* `unmanaged`).
|
|
13
|
-
* 3. Paths created by more than one patch in `new file mode`, surfaced as
|
|
14
|
-
* ownership conflicts with `conflictReason = 'duplicate-create'`. This
|
|
15
|
-
* is what keeps `status --ownership` aligned with `fireforge verify`:
|
|
16
|
-
* walking only `filesAffected` reports a queue clean that `verify`
|
|
17
|
-
* rejects for duplicate `/dev/null → b/foo.js` creations.
|
|
18
|
-
*
|
|
19
|
-
* A path claimed by more than one patch (either via `filesAffected` or as a
|
|
20
|
-
* duplicate creation) is flagged as `conflict` with the origin recorded in
|
|
21
|
-
* `conflictReason` so the output can disambiguate.
|
|
22
|
-
*
|
|
23
|
-
* @param manifestPatches - Manifest rows, each with its `filesAffected`
|
|
24
|
-
* @param worktreeFiles - Raw worktree status entries. Untracked and modified
|
|
25
|
-
* both acceptable
|
|
26
|
-
* @param newFileCreatorsByPath - Map produced by
|
|
27
|
-
* {@link import('../core/patch-lint.js').collectNewFileCreatorsByPath}.
|
|
28
|
-
* Paths with a `.length > 1` owner list become duplicate-create conflicts
|
|
29
|
-
*/
|
|
30
|
-
export function buildOwnershipTable(manifestPatches, worktreeFiles, newFileCreatorsByPath, classifications = new Map()) {
|
|
31
|
-
const ownersByPath = buildPatchClaims(manifestPatches);
|
|
32
|
-
// Merge duplicate-new-file-creation findings. The structured helper
|
|
33
|
-
// returns all new-file paths, so we filter to the ones with more
|
|
34
|
-
// than one creator. Paths are added to the table even when no patch
|
|
35
|
-
// listed them in `filesAffected`, because the two-patch duplicate
|
|
36
|
-
// creation is exactly the shape that manifests as an ownership
|
|
37
|
-
// conflict without showing up in filesAffected (e.g. drift caused
|
|
38
|
-
// by manual patches.json editing).
|
|
39
|
-
const duplicateCreateByPath = new Map();
|
|
40
|
-
for (const [path, creators] of newFileCreatorsByPath) {
|
|
41
|
-
if (creators.length <= 1)
|
|
42
|
-
continue;
|
|
43
|
-
duplicateCreateByPath.set(path, creators);
|
|
44
|
-
if (!ownersByPath.has(path)) {
|
|
45
|
-
ownersByPath.set(path, [...creators]);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
const worktreeSet = new Set(worktreeFiles.map((f) => f.file));
|
|
49
|
-
const unmanagedOnly = [];
|
|
50
|
-
for (const path of worktreeSet) {
|
|
51
|
-
if (!ownersByPath.has(path)) {
|
|
52
|
-
unmanagedOnly.push(path);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
const rows = [];
|
|
56
|
-
for (const [path, owners] of ownersByPath) {
|
|
57
|
-
const duplicateOwners = duplicateCreateByPath.get(path);
|
|
58
|
-
const isFilesAffectedConflict = owners.length > 1;
|
|
59
|
-
const isDuplicateCreateConflict = duplicateOwners !== undefined;
|
|
60
|
-
// Prefer the filesAffected reason when both apply: it's the older
|
|
61
|
-
// source of drift and the operator will usually want to fix the
|
|
62
|
-
// manifest rows even when the bodies also duplicate-create.
|
|
63
|
-
const conflictReason = isFilesAffectedConflict
|
|
64
|
-
? 'files-affected'
|
|
65
|
-
: isDuplicateCreateConflict
|
|
66
|
-
? 'duplicate-create'
|
|
67
|
-
: null;
|
|
68
|
-
// If the duplicate-create finding introduced new patches not in
|
|
69
|
-
// filesAffected, merge them into owners so the rendered cell lists
|
|
70
|
-
// everyone responsible for the conflict, matching what `verify`
|
|
71
|
-
// prints.
|
|
72
|
-
const mergedOwners = duplicateOwners
|
|
73
|
-
? Array.from(new Set([...owners, ...duplicateOwners])).sort((a, b) => a.localeCompare(b))
|
|
74
|
-
: owners;
|
|
75
|
-
rows.push({
|
|
76
|
-
path,
|
|
77
|
-
owners: mergedOwners,
|
|
78
|
-
conflict: isFilesAffectedConflict || isDuplicateCreateConflict,
|
|
79
|
-
conflictReason,
|
|
80
|
-
unmanaged: false,
|
|
81
|
-
state: isFilesAffectedConflict || isDuplicateCreateConflict
|
|
82
|
-
? 'conflict'
|
|
83
|
-
: classifications.get(path) === 'patch-backed'
|
|
84
|
-
? 'patch-backed'
|
|
85
|
-
: classifications.get(path) === 'patch-owned-drift'
|
|
86
|
-
? 'patch-owned-drift'
|
|
87
|
-
: 'owned',
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
for (const path of unmanagedOnly) {
|
|
91
|
-
rows.push({
|
|
92
|
-
path,
|
|
93
|
-
owners: [],
|
|
94
|
-
conflict: false,
|
|
95
|
-
conflictReason: null,
|
|
96
|
-
unmanaged: true,
|
|
97
|
-
state: 'unmanaged',
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
rows.sort((a, b) => a.path.localeCompare(b.path));
|
|
101
|
-
return rows;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Human-readable label for the conflict column. Distinguishes
|
|
105
|
-
* `files-affected` drift (two manifest rows claiming the same path) from
|
|
106
|
-
* `duplicate-create` drift (two patches both hitting `/dev/null → b/path`
|
|
107
|
-
* in their bodies) so the operator can tell at a glance which fix
|
|
108
|
-
* applies. The former wants `re-export --files`, the latter wants
|
|
109
|
-
* `patch delete`.
|
|
110
|
-
*/
|
|
111
|
-
function renderConflictCell(row) {
|
|
112
|
-
if (!row.conflict)
|
|
113
|
-
return row.unmanaged ? 'unmanaged' : '';
|
|
114
|
-
if (row.conflictReason === 'duplicate-create')
|
|
115
|
-
return 'CONFLICT (dup-create)';
|
|
116
|
-
return 'CONFLICT';
|
|
117
|
-
}
|
|
118
|
-
function renderStateCell(row) {
|
|
119
|
-
if (row.conflict)
|
|
120
|
-
return renderConflictCell(row);
|
|
121
|
-
switch (row.state) {
|
|
122
|
-
case 'owned':
|
|
123
|
-
return 'owned';
|
|
124
|
-
case 'patch-backed':
|
|
125
|
-
return 'patch-backed';
|
|
126
|
-
case 'patch-owned-drift':
|
|
127
|
-
return 'patch-owned drift';
|
|
128
|
-
case 'unmanaged':
|
|
129
|
-
return 'unmanaged';
|
|
130
|
-
case 'conflict':
|
|
131
|
-
return renderConflictCell(row);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Renders the ownership table as a GitHub-flavored Markdown pipe table.
|
|
136
|
-
* Using markdown-table's own serializer would require a seed document to
|
|
137
|
-
* graft onto, which is overkill for ad-hoc status output. The rendering
|
|
138
|
-
* here is trivial enough to inline.
|
|
139
|
-
*/
|
|
140
|
-
export function renderOwnershipTable(rows) {
|
|
141
|
-
if (rows.length === 0) {
|
|
142
|
-
info('No tracked or modified files.');
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
const pathHeader = 'path';
|
|
146
|
-
const ownerHeader = 'owning patch';
|
|
147
|
-
const stateHeader = 'state';
|
|
148
|
-
const pathWidth = Math.max(pathHeader.length, ...rows.map((r) => r.path.length));
|
|
149
|
-
const ownerWidth = Math.max(ownerHeader.length, ...rows.map((r) => (r.unmanaged ? 1 : r.owners.join(', ').length)));
|
|
150
|
-
const stateWidth = Math.max(stateHeader.length, ...rows.map((r) => renderStateCell(r).length), 8);
|
|
151
|
-
const pad = (text, width) => text + ' '.repeat(width - text.length);
|
|
152
|
-
info(`| ${pad(pathHeader, pathWidth)} | ${pad(ownerHeader, ownerWidth)} | ${pad(stateHeader, stateWidth)} |`);
|
|
153
|
-
info(`| ${'-'.repeat(pathWidth)} | ${'-'.repeat(ownerWidth)} | ${'-'.repeat(stateWidth)} |`);
|
|
154
|
-
for (const row of rows) {
|
|
155
|
-
const ownerCell = row.unmanaged ? '-' : row.owners.join(', ');
|
|
156
|
-
const stateCell = renderStateCell(row);
|
|
157
|
-
info(`| ${pad(row.path, pathWidth)} | ${pad(ownerCell, ownerWidth)} | ${pad(stateCell, stateWidth)} |`);
|
|
158
|
-
}
|
|
159
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Detects the death of FireForge's own parent while a harness runs.
|
|
3
|
-
*
|
|
4
|
-
* A supervisor that SIGKILLs the process above `fireforge test` (the
|
|
5
|
-
* 2026-09-13 incident: a gate killed its `npm` step at the 15-minute bound)
|
|
6
|
-
* signals nothing below it. FireForge is not told; its stdout pipe merely
|
|
7
|
-
* breaks, and the broken-pipe handler swallows EPIPE on purpose so `| head`
|
|
8
|
-
* works. The mach tree it spawned as a separate process group keeps running
|
|
9
|
-
* under nobody's supervision, and the httpd in that tree spun at 100% CPU
|
|
10
|
-
* for hours.
|
|
11
|
-
*
|
|
12
|
-
* SIGKILL cannot be caught, but reparenting can be observed: once the parent
|
|
13
|
-
* is gone, `process.ppid` changes (to launchd/init, or to a subreaper). This
|
|
14
|
-
* watchdog polls for that while a dispatch is in flight and fires once. It
|
|
15
|
-
* does not decide what to do about it; the test command tears down the
|
|
16
|
-
* harness tree and ends the run.
|
|
17
|
-
*
|
|
18
|
-
* Off on Windows: `process.ppid` is not refreshed there after the parent
|
|
19
|
-
* exits, and there is no process group to signal in response anyway.
|
|
20
|
-
*/
|
|
21
|
-
/** Options for {@link startParentExitWatchdog}. */
|
|
22
|
-
export interface ParentExitWatchdogOptions {
|
|
23
|
-
/** Probe interval, default {@link DEFAULT_INTERVAL_MS}. */
|
|
24
|
-
intervalMs?: number;
|
|
25
|
-
/** Called exactly once, the first time the parent is seen to be gone. */
|
|
26
|
-
onParentExit: (info: {
|
|
27
|
-
originalPpid: number;
|
|
28
|
-
currentPpid: number;
|
|
29
|
-
}) => void;
|
|
30
|
-
/**
|
|
31
|
-
* Reads the current parent pid; default `process.ppid`. Injectable because
|
|
32
|
-
* `process.ppid` cannot be stubbed on every Node line: redefining the
|
|
33
|
-
* property is honoured on Node 26 and silently ignored on Node 22, so a
|
|
34
|
-
* test that stubs it passes on one and never observes a reparent on the
|
|
35
|
-
* other.
|
|
36
|
-
*/
|
|
37
|
-
readPpid?: () => number;
|
|
38
|
-
}
|
|
39
|
-
/** Handle for a running watchdog. */
|
|
40
|
-
export interface ParentExitWatchdog {
|
|
41
|
-
/** Stops probing. Idempotent. A stopped watchdog never fires. */
|
|
42
|
-
stop(): void;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* True once any watchdog in this process has seen the parent die. The
|
|
46
|
-
* dispatch loop reads it to end the run instead of classifying the killed
|
|
47
|
-
* harness as a crash and retrying it under a parent that no longer exists.
|
|
48
|
-
*/
|
|
49
|
-
export declare function parentExited(): boolean;
|
|
50
|
-
/**
|
|
51
|
-
* Forgets an observed parent exit.
|
|
52
|
-
*
|
|
53
|
-
* @internal Exported only so tests can reach it. It is not part of the
|
|
54
|
-
* public surface.
|
|
55
|
-
*/
|
|
56
|
-
export declare function resetParentExitForTests(): void;
|
|
57
|
-
/**
|
|
58
|
-
* Starts probing `process.ppid`. The timer is unref'd so the watchdog can
|
|
59
|
-
* never be the thing keeping FireForge alive; while a child runs, the child
|
|
60
|
-
* does that.
|
|
61
|
-
*/
|
|
62
|
-
export declare function startParentExitWatchdog(options: ParentExitWatchdogOptions): ParentExitWatchdog;
|