@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,373 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/*
|
|
3
|
-
* Platform-gate detection for the post-build dist-tree audit.
|
|
4
|
-
*
|
|
5
|
-
* `moz.build` files commonly wrap entries in conditional blocks like
|
|
6
|
-
* `if CONFIG["MAKENSISU"]:` (Windows-only stubinstaller) or
|
|
7
|
-
* `if CONFIG["OS_TARGET"] == "Darwin":` (macOS-only artwork). On a host that
|
|
8
|
-
* does not match the gate, the wrapped files are never processed by the
|
|
9
|
-
* build, so they cannot appear under `dist/`. Without this detection the
|
|
10
|
-
* audit warns about every gated file on every off-platform build.
|
|
11
|
-
*
|
|
12
|
-
* Two gate sources are consulted, in order:
|
|
13
|
-
* 1. Python-style `if CONFIG[...]:` blocks in the owning `moz.build`.
|
|
14
|
-
* 2. Path-convention gates: certain directory fragments are packaged by
|
|
15
|
-
* platform-specific Makefile.in / NSIS recipes that FireForge does not
|
|
16
|
-
* parse, so a file under `browser/installer/windows/` or any
|
|
17
|
-
* `/stubinstaller/` subtree is Windows-only regardless of what its
|
|
18
|
-
* nearest moz.build says.
|
|
19
|
-
*
|
|
20
|
-
* The detection is lightweight: walk up from the source file
|
|
21
|
-
* to the closest `moz.build`, scan it for the source basename inside an
|
|
22
|
-
* `if CONFIG[...]:` block, and check whether the gate matches the host. The
|
|
23
|
-
* path-convention pass runs only when no moz.build gate is found, so an
|
|
24
|
-
* explicit gate always wins.
|
|
25
|
-
*
|
|
26
|
-
* Best-effort. False negatives (missing a gate and warning anyway) are
|
|
27
|
-
* tolerable because the audit is warn-only. False positives (skipping a file
|
|
28
|
-
* that should ship on this host) are not tolerable, so it errs toward not
|
|
29
|
-
* skipping when uncertain.
|
|
30
|
-
*/
|
|
31
|
-
import { stat } from 'node:fs/promises';
|
|
32
|
-
import { dirname, join } from 'node:path';
|
|
33
|
-
import { pathExists, readText } from '../utils/fs.js';
|
|
34
|
-
import { getPlatform } from '../utils/platform.js';
|
|
35
|
-
import { escapeRegex } from '../utils/regex.js';
|
|
36
|
-
/**
|
|
37
|
-
* Tokens that uniquely identify a Windows-only `if CONFIG[...]:` block.
|
|
38
|
-
* `MAKENSISU` is the Windows stubinstaller compiler. `OS_TARGET ==
|
|
39
|
-
* "WINNT"` and `MOZ_WIDGET_TOOLKIT == "windows"` are the conventional
|
|
40
|
-
* platform discriminators.
|
|
41
|
-
*/
|
|
42
|
-
const WINDOWS_ONLY_GATE_TOKENS = ['MAKENSISU', '"WINNT"', "'WINNT'", '"windows"', "'windows'"];
|
|
43
|
-
/** Tokens that mark a macOS-only `if CONFIG[...]:` block. */
|
|
44
|
-
const DARWIN_ONLY_GATE_TOKENS = ['"Darwin"', "'Darwin'", '"cocoa"', "'cocoa'"];
|
|
45
|
-
/** Tokens that mark a Linux-only `if CONFIG[...]:` block. */
|
|
46
|
-
const LINUX_ONLY_GATE_TOKENS = ['"Linux"', "'Linux'", '"gtk"', "'gtk'"];
|
|
47
|
-
/**
|
|
48
|
-
* Returns true when the platform-gate expression includes one of the
|
|
49
|
-
* tokens characteristic of a single OS that is not the current host.
|
|
50
|
-
*/
|
|
51
|
-
function isGateOffHost(expression, host) {
|
|
52
|
-
const matchesWindows = WINDOWS_ONLY_GATE_TOKENS.some((t) => expression.includes(t));
|
|
53
|
-
const matchesDarwin = DARWIN_ONLY_GATE_TOKENS.some((t) => expression.includes(t));
|
|
54
|
-
const matchesLinux = LINUX_ONLY_GATE_TOKENS.some((t) => expression.includes(t));
|
|
55
|
-
// Negation gates (`!= "WINNT"`, `not CONFIG["MAKENSISU"]`) flip the
|
|
56
|
-
// semantics. Keep this conservative: if we cannot confidently parse
|
|
57
|
-
// a negation, return false so we don't wrongly suppress a warning.
|
|
58
|
-
const negated = /\bnot\b|!=/.test(expression);
|
|
59
|
-
if (negated)
|
|
60
|
-
return false;
|
|
61
|
-
if (matchesWindows && host !== 'win32')
|
|
62
|
-
return true;
|
|
63
|
-
if (matchesDarwin && host !== 'darwin')
|
|
64
|
-
return true;
|
|
65
|
-
if (matchesLinux && host !== 'linux')
|
|
66
|
-
return true;
|
|
67
|
-
return false;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Walks from a starting directory up to (but not above) the engine root,
|
|
71
|
-
* yielding the first `moz.build` encountered. Returns undefined when no
|
|
72
|
-
* ancestor has one, typically only for files that live above any
|
|
73
|
-
* moz.build entry point, which would not be packageable anyway.
|
|
74
|
-
*/
|
|
75
|
-
async function findOwningMozBuild(engineDir, sourceDir) {
|
|
76
|
-
let current = sourceDir;
|
|
77
|
-
const root = engineDir.replace(/\/+$/, '');
|
|
78
|
-
while (current.startsWith(root)) {
|
|
79
|
-
const candidate = join(current, 'moz.build');
|
|
80
|
-
if (await pathExists(candidate))
|
|
81
|
-
return candidate;
|
|
82
|
-
const parent = dirname(current);
|
|
83
|
-
if (parent === current)
|
|
84
|
-
break;
|
|
85
|
-
current = parent;
|
|
86
|
-
}
|
|
87
|
-
return undefined;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Matches a `basename` appearing at the tail of a quoted path literal
|
|
91
|
-
* on a single moz.build line. Catches both the bare entry
|
|
92
|
-
* `"installing_page.css"` and the path-prefixed entry
|
|
93
|
-
* `"stubinstaller/installing_page.css"`.
|
|
94
|
-
*/
|
|
95
|
-
function matchesQuotedBasename(line, basename) {
|
|
96
|
-
const escaped = escapeRegex(basename);
|
|
97
|
-
return new RegExp(`["'](?:[^"']*\\/)?${escaped}["']`).test(line);
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Scans a moz.build file for a basename match inside a conditional
|
|
101
|
-
* block, returning the gate expression when one encloses the match.
|
|
102
|
-
*
|
|
103
|
-
* The scanner uses indentation to track block scope (Python-style):
|
|
104
|
-
* an `if CONFIG[…]:` line opens a scope at indent N+1, and dedenting
|
|
105
|
-
* back to indent N closes it. A basename match inside that scope
|
|
106
|
-
* inherits the gate expression.
|
|
107
|
-
*
|
|
108
|
-
* @param content moz.build file content
|
|
109
|
-
* @param basename Basename of the source file we are auditing
|
|
110
|
-
* @returns The enclosing gate expression, or undefined if none
|
|
111
|
-
*/
|
|
112
|
-
export function findEnclosingGate(content, basename) {
|
|
113
|
-
const lines = content.split('\n');
|
|
114
|
-
const stack = [];
|
|
115
|
-
for (const line of lines) {
|
|
116
|
-
if (line.trim() === '')
|
|
117
|
-
continue;
|
|
118
|
-
const indent = (/^(\s*)/.exec(line)?.[1] ?? '').length;
|
|
119
|
-
while (stack.length > 0) {
|
|
120
|
-
const top = stack[stack.length - 1];
|
|
121
|
-
if (top && indent <= top.indent) {
|
|
122
|
-
stack.pop();
|
|
123
|
-
continue;
|
|
124
|
-
}
|
|
125
|
-
break;
|
|
126
|
-
}
|
|
127
|
-
const ifMatch = /^\s*if\s+(.+?):\s*(?:#.*)?$/.exec(line);
|
|
128
|
-
if (ifMatch?.[1]) {
|
|
129
|
-
stack.push({ indent, expression: ifMatch[1] });
|
|
130
|
-
continue;
|
|
131
|
-
}
|
|
132
|
-
if (matchesQuotedBasename(line, basename)) {
|
|
133
|
-
const top = stack[stack.length - 1];
|
|
134
|
-
if (top)
|
|
135
|
-
return top.expression;
|
|
136
|
-
return undefined;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
return undefined;
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Path-convention gates: directories whose files are packaged by
|
|
143
|
-
* platform-specific build recipes (NSIS stub installer, DMG creation, Linux
|
|
144
|
-
* installer scripts) that live outside the moz.build graph. A file under any
|
|
145
|
-
* of these fragments is platform-restricted regardless of what its nearest
|
|
146
|
-
* `moz.build` says.
|
|
147
|
-
*
|
|
148
|
-
* `stubinstaller/` is the Windows NSIS stub installer asset tree, referenced
|
|
149
|
-
* from `browser/installer/windows/Makefile.in` and `nsis/stub.nsh` rather
|
|
150
|
-
* than through any `if CONFIG[…]:` block an ancestor moz.build exposes.
|
|
151
|
-
*/
|
|
152
|
-
const PATH_GATES = [
|
|
153
|
-
{ fragment: '/stubinstaller/', platform: 'win32', label: 'path convention: /stubinstaller/' },
|
|
154
|
-
{
|
|
155
|
-
fragment: '/browser/installer/windows/',
|
|
156
|
-
platform: 'win32',
|
|
157
|
-
label: 'path convention: browser/installer/windows/',
|
|
158
|
-
},
|
|
159
|
-
{
|
|
160
|
-
fragment: '/browser/installer/macosx/',
|
|
161
|
-
platform: 'darwin',
|
|
162
|
-
label: 'path convention: browser/installer/macosx/',
|
|
163
|
-
},
|
|
164
|
-
{
|
|
165
|
-
fragment: '/browser/installer/linux/',
|
|
166
|
-
platform: 'linux',
|
|
167
|
-
label: 'path convention: browser/installer/linux/',
|
|
168
|
-
},
|
|
169
|
-
];
|
|
170
|
-
/**
|
|
171
|
-
* Returns a path-convention gate for `sourcePath` when one applies.
|
|
172
|
-
* Leading slash added so `startsWith`-style prefix traps
|
|
173
|
-
* (`browser/installer/windows/…`) match whether or not the input
|
|
174
|
-
* starts with a separator.
|
|
175
|
-
*/
|
|
176
|
-
function findPathConventionGate(sourcePath) {
|
|
177
|
-
const normalised = `/${sourcePath}`.replace(/\/+/g, '/');
|
|
178
|
-
for (const entry of PATH_GATES) {
|
|
179
|
-
if (normalised.includes(entry.fragment)) {
|
|
180
|
-
return { platform: entry.platform, label: entry.label };
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
return undefined;
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Determines whether the given source file is gated off on the current
|
|
187
|
-
* host by an enclosing `if CONFIG[...]:` block in its owning moz.build,
|
|
188
|
-
* or by a path-convention rule for installer-tree subdirectories that
|
|
189
|
-
* are packaged via Makefile.in recipes the audit does not parse.
|
|
190
|
-
* Returns `gatedOff: false` and no expression when no gate is found. The
|
|
191
|
-
* file is not platform-restricted, so the caller should audit it
|
|
192
|
-
* normally.
|
|
193
|
-
*
|
|
194
|
-
* @param engineDir Absolute path to the engine root
|
|
195
|
-
* @param sourcePath Engine-relative POSIX path of the source file
|
|
196
|
-
* @returns Detection result
|
|
197
|
-
*/
|
|
198
|
-
export async function detectPlatformGate(engineDir, sourcePath) {
|
|
199
|
-
let host;
|
|
200
|
-
try {
|
|
201
|
-
host = getPlatform();
|
|
202
|
-
}
|
|
203
|
-
catch {
|
|
204
|
-
// Unrecognised host platform. The platform gates below are advisory, so an
|
|
205
|
-
// unknown host disables them rather than failing a warn-only audit.
|
|
206
|
-
host = undefined;
|
|
207
|
-
}
|
|
208
|
-
const sourceDir = dirname(join(engineDir, sourcePath));
|
|
209
|
-
const mozBuild = await findOwningMozBuild(engineDir, sourceDir);
|
|
210
|
-
if (mozBuild) {
|
|
211
|
-
let content;
|
|
212
|
-
try {
|
|
213
|
-
content = await readText(mozBuild);
|
|
214
|
-
}
|
|
215
|
-
catch {
|
|
216
|
-
// An unreadable moz.build contributes no platform gates. The audit is
|
|
217
|
-
// warn-only, so a missing input degrades to 'no gate found', not an error.
|
|
218
|
-
content = '';
|
|
219
|
-
}
|
|
220
|
-
const sourceBasename = sourcePath.split('/').pop() ?? '';
|
|
221
|
-
const expression = findEnclosingGate(content, sourceBasename);
|
|
222
|
-
if (expression) {
|
|
223
|
-
if (host && isGateOffHost(expression, host)) {
|
|
224
|
-
return { gatedOff: true, gateExpression: expression };
|
|
225
|
-
}
|
|
226
|
-
return { gatedOff: false, gateExpression: expression };
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
const pathGate = findPathConventionGate(sourcePath);
|
|
230
|
-
if (pathGate && host && host !== pathGate.platform) {
|
|
231
|
-
return { gatedOff: true, gateExpression: pathGate.label };
|
|
232
|
-
}
|
|
233
|
-
return { gatedOff: false };
|
|
234
|
-
}
|
|
235
|
-
/**
|
|
236
|
-
* Maximum ancestor levels walked looking for a gating `DIRS` entry, and the
|
|
237
|
-
* largest `moz.build` read while doing it. The audit runs on every build, so
|
|
238
|
-
* a pathological tree must not be able to make it slow. Beyond these bounds
|
|
239
|
-
* the walk gives up and the caller keeps today's behaviour (warn).
|
|
240
|
-
*/
|
|
241
|
-
const MAX_ANCESTOR_DEPTH = 12;
|
|
242
|
-
const MAX_MOZ_BUILD_BYTES = 256 * 1024;
|
|
243
|
-
/** Matches a line that begins a `DIRS` assignment. */
|
|
244
|
-
const DIRS_ASSIGNMENT_PATTERN = /^\s*DIRS\s*\+?=/;
|
|
245
|
-
/**
|
|
246
|
-
* Collects the full stack of `if CONFIG[…]:` expressions enclosing the
|
|
247
|
-
* `DIRS` entry whose value equals `relDir`.
|
|
248
|
-
*
|
|
249
|
-
* Two differences from {@link findEnclosingGate}, both load-bearing here:
|
|
250
|
-
* only quoted values inside a `DIRS` assignment are considered (an
|
|
251
|
-
* unrelated string literal elsewhere in the file must not gate a
|
|
252
|
-
* directory), and every enclosing expression is returned rather than the
|
|
253
|
-
* innermost. Firefox nests these: `toolkit/moz.build` reaches
|
|
254
|
-
* `mozapps/defaultagent` inside `OS_ARCH == "WINNT"`, then a `CC_TYPE`
|
|
255
|
-
* test, then `MOZ_DEFAULT_BROWSER_AGENT`, and it is the outermost one that
|
|
256
|
-
* excludes the directory on a macOS host.
|
|
257
|
-
*
|
|
258
|
-
* @param content - `moz.build` file content
|
|
259
|
-
* @param relDir - Directory path relative to the `moz.build`, POSIX-separated
|
|
260
|
-
* @returns Enclosing gate expressions, outermost first. Empty when ungated
|
|
261
|
-
* or when no `DIRS` entry reaches `relDir`
|
|
262
|
-
*/
|
|
263
|
-
function findDirsEntryGates(content, relDir) {
|
|
264
|
-
const lines = content.split('\n');
|
|
265
|
-
const stack = [];
|
|
266
|
-
let inDirs = false;
|
|
267
|
-
for (const line of lines) {
|
|
268
|
-
if (line.trim() === '')
|
|
269
|
-
continue;
|
|
270
|
-
const indent = (/^(\s*)/.exec(line)?.[1] ?? '').length;
|
|
271
|
-
while (stack.length > 0) {
|
|
272
|
-
const top = stack[stack.length - 1];
|
|
273
|
-
if (top && indent <= top.indent) {
|
|
274
|
-
stack.pop();
|
|
275
|
-
continue;
|
|
276
|
-
}
|
|
277
|
-
break;
|
|
278
|
-
}
|
|
279
|
-
const ifMatch = /^\s*if\s+(.+?):\s*(?:#.*)?$/.exec(line);
|
|
280
|
-
if (ifMatch?.[1]) {
|
|
281
|
-
stack.push({ indent, expression: ifMatch[1] });
|
|
282
|
-
inDirs = false;
|
|
283
|
-
continue;
|
|
284
|
-
}
|
|
285
|
-
if (DIRS_ASSIGNMENT_PATTERN.test(line)) {
|
|
286
|
-
// A `DIRS += [` list body continues on later lines. A single-line
|
|
287
|
-
// `DIRS += ["x"]` is fully handled by the match below.
|
|
288
|
-
inDirs = !line.includes(']');
|
|
289
|
-
if (dirsLineNames(line, relDir))
|
|
290
|
-
return stack.map((entry) => entry.expression);
|
|
291
|
-
continue;
|
|
292
|
-
}
|
|
293
|
-
if (inDirs) {
|
|
294
|
-
if (dirsLineNames(line, relDir))
|
|
295
|
-
return stack.map((entry) => entry.expression);
|
|
296
|
-
if (line.includes(']'))
|
|
297
|
-
inDirs = false;
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
return undefined;
|
|
301
|
-
}
|
|
302
|
-
/** True when `line` carries `relDir` as a quoted value. */
|
|
303
|
-
function dirsLineNames(line, relDir) {
|
|
304
|
-
const escaped = escapeRegex(relDir.replace(/\/+$/, ''));
|
|
305
|
-
return new RegExp(`["']${escaped}\\/?["']`).test(line);
|
|
306
|
-
}
|
|
307
|
-
/**
|
|
308
|
-
* Determines whether the source file's directory is excluded from this
|
|
309
|
-
* build by a gate in an ancestor `moz.build`.
|
|
310
|
-
*
|
|
311
|
-
* `detectPlatformGate` reads only the file's own nearest `moz.build`, which
|
|
312
|
-
* misses the common Firefox shape where the whole subtree is reached
|
|
313
|
-
* through a conditional `DIRS +=` one or more levels up: nothing in
|
|
314
|
-
* `toolkit/mozapps/defaultagent/moz.build` says "Windows only", yet none of
|
|
315
|
-
* it is built on macOS.
|
|
316
|
-
*
|
|
317
|
-
* Errs toward not skipping, like the rest of this module: an unreadable or
|
|
318
|
-
* oversized ancestor, or a directory no `DIRS` entry names, yields
|
|
319
|
-
* `gatedOff: false`.
|
|
320
|
-
*
|
|
321
|
-
* @param engineDir - Absolute path to the engine root
|
|
322
|
-
* @param sourcePath - Engine-relative POSIX path of the source file
|
|
323
|
-
*/
|
|
324
|
-
export async function detectAncestorDirsGate(engineDir, sourcePath) {
|
|
325
|
-
let host;
|
|
326
|
-
try {
|
|
327
|
-
host = getPlatform();
|
|
328
|
-
}
|
|
329
|
-
catch {
|
|
330
|
-
return { gatedOff: false };
|
|
331
|
-
}
|
|
332
|
-
const segments = sourcePath.split('/').filter(Boolean);
|
|
333
|
-
// Drop the basename: the walk is over directories.
|
|
334
|
-
segments.pop();
|
|
335
|
-
const root = engineDir.replace(/[/\\]+$/, '');
|
|
336
|
-
const depth = Math.min(segments.length, MAX_ANCESTOR_DEPTH);
|
|
337
|
-
// Start at the immediate parent of the file's directory and walk up, so
|
|
338
|
-
// the nearest gating ancestor is found first.
|
|
339
|
-
for (let cut = segments.length - 1; cut >= segments.length - depth; cut -= 1) {
|
|
340
|
-
const ancestorSegments = segments.slice(0, cut);
|
|
341
|
-
const relDir = segments.slice(cut).join('/');
|
|
342
|
-
if (relDir === '')
|
|
343
|
-
continue;
|
|
344
|
-
const mozBuild = join(root, ...ancestorSegments, 'moz.build');
|
|
345
|
-
if (!(await pathExists(mozBuild)))
|
|
346
|
-
continue;
|
|
347
|
-
let content;
|
|
348
|
-
try {
|
|
349
|
-
const stats = await stat(mozBuild);
|
|
350
|
-
if (stats.size > MAX_MOZ_BUILD_BYTES)
|
|
351
|
-
continue;
|
|
352
|
-
content = await readText(mozBuild);
|
|
353
|
-
}
|
|
354
|
-
catch {
|
|
355
|
-
continue;
|
|
356
|
-
}
|
|
357
|
-
const gates = findDirsEntryGates(content, relDir);
|
|
358
|
-
if (gates === undefined)
|
|
359
|
-
continue;
|
|
360
|
-
const offHost = gates.find((expression) => isGateOffHost(expression, host));
|
|
361
|
-
if (offHost !== undefined) {
|
|
362
|
-
return {
|
|
363
|
-
gatedOff: true,
|
|
364
|
-
gateExpression: offHost,
|
|
365
|
-
gateFile: [...ancestorSegments, 'moz.build'].join('/'),
|
|
366
|
-
};
|
|
367
|
-
}
|
|
368
|
-
// The directory is reached from here and this host passes every gate.
|
|
369
|
-
// A further ancestor cannot un-reach it.
|
|
370
|
-
return { gatedOff: false };
|
|
371
|
-
}
|
|
372
|
-
return { gatedOff: false };
|
|
373
|
-
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/** Parsed jar.mn registration anchored to a specific engine source path. */
|
|
2
|
-
export interface RegistrationHit {
|
|
3
|
-
/** Target path extracted from the entry (POSIX). */
|
|
4
|
-
target: string;
|
|
5
|
-
/** Source path from the entry (POSIX, relative to the jar.mn directory). */
|
|
6
|
-
source: string;
|
|
7
|
-
/** Absolute path of the jar.mn that owns the registration. */
|
|
8
|
-
jarManifest: string;
|
|
9
|
-
}
|
|
10
|
-
/** Result of a registration-aware dist probe. */
|
|
11
|
-
export interface RegistrationProbeResult {
|
|
12
|
-
/** Absolute path of the packaged artifact matching the registration target. */
|
|
13
|
-
artifact: string;
|
|
14
|
-
/** The registration entry that anchored the match. */
|
|
15
|
-
hit: RegistrationHit;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Parses a single jar.mn line into `{ target, source }` when the line is a
|
|
19
|
-
* content entry with an explicit `(source)` reference. Returns undefined
|
|
20
|
-
* for comments, headers (`browser.jar:`), `%` manifest directives, blank
|
|
21
|
-
* lines, and entries without a source reference.
|
|
22
|
-
*
|
|
23
|
-
* Accepted entry shapes:
|
|
24
|
-
* ` content/browser/foo.js (content/foo.js)` bare
|
|
25
|
-
* `* content/browser/foo.js (content/foo.js)` `*` = preprocessed
|
|
26
|
-
* `en-US.jar: content/foo.js (content/foo.js)` locale-prefixed
|
|
27
|
-
*/
|
|
28
|
-
export declare function parseJarMnEntry(line: string): {
|
|
29
|
-
target: string;
|
|
30
|
-
source: string;
|
|
31
|
-
} | undefined;
|
|
32
|
-
/**
|
|
33
|
-
* Scans a jar.mn file's contents for an entry whose source reference
|
|
34
|
-
* matches `relativeSource` (POSIX, relative to the jar.mn directory).
|
|
35
|
-
* Returns the first match. jar.mn enforces uniqueness of `(source)` in
|
|
36
|
-
* practice, so a first-match wins behaviour is adequate.
|
|
37
|
-
*/
|
|
38
|
-
export declare function findJarMnEntryForSource(content: string, relativeSource: string): {
|
|
39
|
-
target: string;
|
|
40
|
-
source: string;
|
|
41
|
-
} | undefined;
|
|
42
|
-
/**
|
|
43
|
-
* Walks from the source's directory upward to the engine root, returning
|
|
44
|
-
* the first jar.mn entry that registers the given source. Returns undefined
|
|
45
|
-
* when no ancestor jar.mn claims the source.
|
|
46
|
-
*
|
|
47
|
-
* @param engineDir Absolute engine root. The walk halts here.
|
|
48
|
-
* @param source Engine-relative POSIX source path.
|
|
49
|
-
*/
|
|
50
|
-
export declare function findRegisteredTarget(engineDir: string, source: string): Promise<RegistrationHit | undefined>;
|
|
51
|
-
/**
|
|
52
|
-
* Probes the dist tree for the artifact registered against the given
|
|
53
|
-
* source. Returns the matched candidate and the registration hit that
|
|
54
|
-
* anchored it. Undefined when the source has no owning jar.mn or when
|
|
55
|
-
* no same-basename candidate under the search roots ends with the
|
|
56
|
-
* registered target path.
|
|
57
|
-
*
|
|
58
|
-
* Suffix-matching against the target path is intentional: jar.mn targets
|
|
59
|
-
* are relative to the jar root (`browser.jar:`, `toolkit.jar:`), but the
|
|
60
|
-
* dist tree prefixes every entry with a jar-specific directory
|
|
61
|
-
* (`.../chrome/browser/content/browser/…`). The source basename plus the
|
|
62
|
-
* target suffix are unambiguous across every packaging convention we
|
|
63
|
-
* care about.
|
|
64
|
-
*
|
|
65
|
-
* @param engineDir Absolute engine root.
|
|
66
|
-
* @param source Engine-relative POSIX source path.
|
|
67
|
-
* @param searchRoots Absolute roots to probe (dist/, _tests/).
|
|
68
|
-
*/
|
|
69
|
-
export declare function resolveArtifactByRegistration(engineDir: string, source: string, searchRoots: readonly string[]): Promise<RegistrationProbeResult | undefined>;
|
|
70
|
-
/**
|
|
71
|
-
* Returns the absolute paths of every same-basename candidate under the
|
|
72
|
-
* given search roots. Used by the audit to enumerate all false-match
|
|
73
|
-
* candidates when the heuristic fallback downgrades to "missing". The
|
|
74
|
-
* operator needs to see the full set, not just the scorer's pick, to
|
|
75
|
-
* distinguish a registration bug from a genuine packaging drop.
|
|
76
|
-
*
|
|
77
|
-
* @param source Engine-relative POSIX source path.
|
|
78
|
-
* @param searchRoots Absolute roots to scan.
|
|
79
|
-
*/
|
|
80
|
-
export declare function collectSameBasenameCandidates(source: string, searchRoots: readonly string[]): Promise<string[]>;
|
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/*
|
|
3
|
-
* Registration-aware artifact resolution for the post-build dist-tree audit.
|
|
4
|
-
*
|
|
5
|
-
* The basename-plus-similarity heuristic in `build-audit-resolve.ts` cannot
|
|
6
|
-
* distinguish two unrelated files that share a source basename: one fork
|
|
7
|
-
* registers `content/mybrowser.js` in `browser/base/jar.mn` (packaged under
|
|
8
|
-
* `chrome/browser/content/browser/mybrowser.js`) while an unrelated patch
|
|
9
|
-
* registers a `mybrowser.js` pref file under `browser/defaults/preferences/`.
|
|
10
|
-
* The basename walker surfaces both, `scoreCandidate` awards them an equal
|
|
11
|
-
* trailing-overlap score, and whichever the directory walk hits first wins.
|
|
12
|
-
*
|
|
13
|
-
* This module anchors resolution to the `(source)` reference inside `jar.mn`.
|
|
14
|
-
* For a source under audit it walks the ancestor directories for an owning
|
|
15
|
-
* `jar.mn`, finds the entry whose `(source)` resolves to that path, and
|
|
16
|
-
* exposes both the registered target and the manifest that owns it. Callers
|
|
17
|
-
* prefer candidates whose dist-tree path ends with the registered target and
|
|
18
|
-
* report an unambiguous "registered but not packaged" miss when none exists.
|
|
19
|
-
*
|
|
20
|
-
* When no jar.mn registration is found, the caller falls back to the
|
|
21
|
-
* similarity heuristic, which covers sources registered through moz.build
|
|
22
|
-
* (`FINAL_TARGET_FILES`, `JS_PREFERENCE_FILES`) or `package-manifest.in`.
|
|
23
|
-
* Parsing every Firefox registration surface would bloat the audit, and the
|
|
24
|
-
* heuristic's weak case is surfaced to the operator in the warning copy.
|
|
25
|
-
*/
|
|
26
|
-
import { basename, dirname, join, relative, sep } from 'node:path';
|
|
27
|
-
import { pathExists, readText } from '../utils/fs.js';
|
|
28
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
29
|
-
import { findAllByBasename } from './build-audit-resolve.js';
|
|
30
|
-
/** Ceiling on ancestor-directory hops when searching for an owning jar.mn. */
|
|
31
|
-
const MAX_JAR_MN_SCAN_DEPTH = 8;
|
|
32
|
-
/**
|
|
33
|
-
* Parses a single jar.mn line into `{ target, source }` when the line is a
|
|
34
|
-
* content entry with an explicit `(source)` reference. Returns undefined
|
|
35
|
-
* for comments, headers (`browser.jar:`), `%` manifest directives, blank
|
|
36
|
-
* lines, and entries without a source reference.
|
|
37
|
-
*
|
|
38
|
-
* Accepted entry shapes:
|
|
39
|
-
* ` content/browser/foo.js (content/foo.js)` bare
|
|
40
|
-
* `* content/browser/foo.js (content/foo.js)` `*` = preprocessed
|
|
41
|
-
* `en-US.jar: content/foo.js (content/foo.js)` locale-prefixed
|
|
42
|
-
*/
|
|
43
|
-
export function parseJarMnEntry(line) {
|
|
44
|
-
if (!line)
|
|
45
|
-
return undefined;
|
|
46
|
-
const trimmed = line.trim();
|
|
47
|
-
if (trimmed === '' || trimmed.startsWith('#') || trimmed.startsWith('%'))
|
|
48
|
-
return undefined;
|
|
49
|
-
// Leading `*` (preprocessed) and optional `locale.jar:` prefix are dropped
|
|
50
|
-
// before matching the target/(source) pair. Both are whitespace-separated
|
|
51
|
-
// from the target entry.
|
|
52
|
-
const stripped = trimmed.replace(/^\*\s+/, '').replace(/^[A-Za-z0-9.\-_]+\.jar:\s+/, '');
|
|
53
|
-
const match = /^(\S+)\s+\(([^)]+)\)\s*$/.exec(stripped);
|
|
54
|
-
if (!match)
|
|
55
|
-
return undefined;
|
|
56
|
-
const target = (match[1] ?? '').trim();
|
|
57
|
-
const source = (match[2] ?? '').trim();
|
|
58
|
-
if (!target || !source)
|
|
59
|
-
return undefined;
|
|
60
|
-
return { target, source };
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Scans a jar.mn file's contents for an entry whose source reference
|
|
64
|
-
* matches `relativeSource` (POSIX, relative to the jar.mn directory).
|
|
65
|
-
* Returns the first match. jar.mn enforces uniqueness of `(source)` in
|
|
66
|
-
* practice, so a first-match wins behaviour is adequate.
|
|
67
|
-
*/
|
|
68
|
-
export function findJarMnEntryForSource(content, relativeSource) {
|
|
69
|
-
const normalized = normalizePathSlashes(relativeSource);
|
|
70
|
-
for (const line of content.split('\n')) {
|
|
71
|
-
const parsed = parseJarMnEntry(line);
|
|
72
|
-
if (!parsed)
|
|
73
|
-
continue;
|
|
74
|
-
if (parsed.source === normalized)
|
|
75
|
-
return parsed;
|
|
76
|
-
}
|
|
77
|
-
return undefined;
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Walks from the source's directory upward to the engine root, returning
|
|
81
|
-
* the first jar.mn entry that registers the given source. Returns undefined
|
|
82
|
-
* when no ancestor jar.mn claims the source.
|
|
83
|
-
*
|
|
84
|
-
* @param engineDir Absolute engine root. The walk halts here.
|
|
85
|
-
* @param source Engine-relative POSIX source path.
|
|
86
|
-
*/
|
|
87
|
-
export async function findRegisteredTarget(engineDir, source) {
|
|
88
|
-
const sourceAbs = join(engineDir, source);
|
|
89
|
-
const root = engineDir.replace(/[/\\]+$/, '');
|
|
90
|
-
let current = dirname(sourceAbs);
|
|
91
|
-
let depth = 0;
|
|
92
|
-
while (depth <= MAX_JAR_MN_SCAN_DEPTH &&
|
|
93
|
-
(current === root || current.startsWith(`${root}/`) || current.startsWith(`${root}\\`))) {
|
|
94
|
-
const jarMn = join(current, 'jar.mn');
|
|
95
|
-
if (await pathExists(jarMn)) {
|
|
96
|
-
let content;
|
|
97
|
-
try {
|
|
98
|
-
content = await readText(jarMn);
|
|
99
|
-
}
|
|
100
|
-
catch {
|
|
101
|
-
// An unreadable jar.mn contributes no registration hints. The resolver falls
|
|
102
|
-
// through to its other strategies.
|
|
103
|
-
content = '';
|
|
104
|
-
}
|
|
105
|
-
const rel = relative(current, sourceAbs).split(sep).join('/');
|
|
106
|
-
const entry = findJarMnEntryForSource(content, rel);
|
|
107
|
-
if (entry) {
|
|
108
|
-
return { target: entry.target, source: entry.source, jarManifest: jarMn };
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
const parent = dirname(current);
|
|
112
|
-
if (parent === current)
|
|
113
|
-
break;
|
|
114
|
-
current = parent;
|
|
115
|
-
depth += 1;
|
|
116
|
-
}
|
|
117
|
-
return undefined;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Normalises an absolute filesystem path to POSIX separators so the
|
|
121
|
-
* suffix comparison against a jar.mn target (always POSIX) is platform-
|
|
122
|
-
* independent.
|
|
123
|
-
*/
|
|
124
|
-
function toPosix(path) {
|
|
125
|
-
return normalizePathSlashes(path);
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Probes the dist tree for the artifact registered against the given
|
|
129
|
-
* source. Returns the matched candidate and the registration hit that
|
|
130
|
-
* anchored it. Undefined when the source has no owning jar.mn or when
|
|
131
|
-
* no same-basename candidate under the search roots ends with the
|
|
132
|
-
* registered target path.
|
|
133
|
-
*
|
|
134
|
-
* Suffix-matching against the target path is intentional: jar.mn targets
|
|
135
|
-
* are relative to the jar root (`browser.jar:`, `toolkit.jar:`), but the
|
|
136
|
-
* dist tree prefixes every entry with a jar-specific directory
|
|
137
|
-
* (`.../chrome/browser/content/browser/…`). The source basename plus the
|
|
138
|
-
* target suffix are unambiguous across every packaging convention we
|
|
139
|
-
* care about.
|
|
140
|
-
*
|
|
141
|
-
* @param engineDir Absolute engine root.
|
|
142
|
-
* @param source Engine-relative POSIX source path.
|
|
143
|
-
* @param searchRoots Absolute roots to probe (dist/, _tests/).
|
|
144
|
-
*/
|
|
145
|
-
export async function resolveArtifactByRegistration(engineDir, source, searchRoots) {
|
|
146
|
-
const hit = await findRegisteredTarget(engineDir, source);
|
|
147
|
-
if (!hit)
|
|
148
|
-
return undefined;
|
|
149
|
-
const name = basename(source);
|
|
150
|
-
const targetSuffix = `/${hit.target.replace(/^\/+/, '')}`;
|
|
151
|
-
const candidates = [];
|
|
152
|
-
for (const root of searchRoots) {
|
|
153
|
-
const found = await findAllByBasename(root, name);
|
|
154
|
-
candidates.push(...found);
|
|
155
|
-
}
|
|
156
|
-
for (const candidate of candidates) {
|
|
157
|
-
if (toPosix(candidate).endsWith(targetSuffix)) {
|
|
158
|
-
return { artifact: candidate, hit };
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
return undefined;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Returns the absolute paths of every same-basename candidate under the
|
|
165
|
-
* given search roots. Used by the audit to enumerate all false-match
|
|
166
|
-
* candidates when the heuristic fallback downgrades to "missing". The
|
|
167
|
-
* operator needs to see the full set, not just the scorer's pick, to
|
|
168
|
-
* distinguish a registration bug from a genuine packaging drop.
|
|
169
|
-
*
|
|
170
|
-
* @param source Engine-relative POSIX source path.
|
|
171
|
-
* @param searchRoots Absolute roots to scan.
|
|
172
|
-
*/
|
|
173
|
-
export async function collectSameBasenameCandidates(source, searchRoots) {
|
|
174
|
-
const name = basename(source);
|
|
175
|
-
const out = [];
|
|
176
|
-
for (const root of searchRoots) {
|
|
177
|
-
const found = await findAllByBasename(root, name);
|
|
178
|
-
out.push(...found);
|
|
179
|
-
}
|
|
180
|
-
return out;
|
|
181
|
-
}
|