@hominis/fireforge 0.54.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 +287 -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 -438
- 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 -332
- 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 -420
- package/dist/src/commands/setup.js +78 -90
- package/dist/src/commands/status.js +44 -413
- package/dist/src/commands/test.js +97 -422
- package/dist/src/commands/token.js +185 -228
- package/dist/src/commands/typecheck.js +59 -208
- 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 -692
- package/docs/exit-codes.md +76 -94
- package/docs/furnace.md +113 -181
- package/docs/gate.md +205 -0
- package/docs/getting-started.md +165 -0
- package/docs/machine-output.md +201 -277
- package/docs/migrating.md +261 -0
- package/docs/patch-workflow.md +163 -653
- package/docs/quality.md +220 -0
- package/docs/source-workflow.md +228 -0
- package/docs/testing.md +101 -712
- 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 -91
- package/dist/src/commands/check-run.d.ts +0 -33
- package/dist/src/commands/check-run.js +0 -112
- 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 -218
- 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 -282
- 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/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 -52
- 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 -261
- 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 -117
- package/dist/src/commands/patch/staged-dependency-validate.d.ts +0 -15
- package/dist/src/commands/patch/staged-dependency-validate.js +0 -49
- package/dist/src/commands/patch/staged-dependency.d.ts +0 -22
- package/dist/src/commands/patch/staged-dependency.js +0 -248
- 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 -267
- 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-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 -35
- package/dist/src/commands/re-export-hunks.js +0 -220
- 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 -191
- 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 -39
- package/dist/src/commands/re-export-single.js +0 -388
- 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 -28
- package/dist/src/commands/re-export-summary.js +0 -36
- 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 -29
- package/dist/src/commands/test-build-phase.js +0 -290
- 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 -63
- package/dist/src/commands/test-orchestrate.js +0 -274
- 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 -52
- package/dist/src/commands/test-stale-gate.js +0 -165
- package/dist/src/commands/test-verdict.d.ts +0 -92
- package/dist/src/commands/test-verdict.js +0 -162
- 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.d.ts +0 -56
- 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 -274
- 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 -92
- package/dist/src/core/config-validate.d.ts +0 -11
- package/dist/src/core/config-validate.js +0 -503
- 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/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 -62
- package/dist/src/core/furnace-apply-overwrite-warn.js +0 -124
- 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 -146
- 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 -79
- package/dist/src/core/furnace-constants.js +0 -123
- 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-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 -61
- package/dist/src/core/furnace-jsconfig.js +0 -208
- 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-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 -302
- 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 -318
- 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 -204
- 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.d.ts +0 -78
- package/dist/src/core/patch-lint-cache.js +0 -233
- package/dist/src/core/patch-lint-checkjs-any-import.d.ts +0 -39
- package/dist/src/core/patch-lint-checkjs-any-import.js +0 -63
- 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.d.ts +0 -180
- package/dist/src/core/patch-lint-checkjs.js +0 -611
- 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 -5
- package/dist/src/core/patch-lint-imports.js +0 -67
- 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 -78
- package/dist/src/core/patch-lint-staged-registration.js +0 -110
- package/dist/src/core/patch-lint-token-scale.d.ts +0 -57
- package/dist/src/core/patch-lint-token-scale.js +0 -286
- 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 -191
- package/dist/src/core/patch-lint.js +0 -529
- 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 -161
- package/dist/src/core/patch-parse.js +0 -347
- package/dist/src/core/patch-policy-content.d.ts +0 -40
- package/dist/src/core/patch-policy-content.js +0 -216
- 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-shim.d.ts +0 -90
- package/dist/src/core/typecheck-shim.js +0 -507
- package/dist/src/core/typecheck.d.ts +0 -75
- package/dist/src/core/typecheck.js +0 -433
- 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 -1367
- 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 -703
- package/dist/src/types/config.js +0 -15
- package/dist/src/types/furnace.d.ts +0 -415
- 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,1367 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Command option types for CLI commands.
|
|
3
|
-
*/
|
|
4
|
-
import type { FirefoxProduct, ProjectLicense } from '../config.js';
|
|
5
|
-
import type { PatchCategory, PatchSizeShare } from './patches.js';
|
|
6
|
-
/**
|
|
7
|
-
* `--dry-run`: print the planned change and exit without writing anything.
|
|
8
|
-
*
|
|
9
|
-
* Twenty-four option types spelled this field with five different doc
|
|
10
|
-
* comments for one behaviour. The contract is uniform and load-bearing (a
|
|
11
|
-
* dry run must perform every check the real run does and then write
|
|
12
|
-
* nothing), so it is stated once.
|
|
13
|
-
*/
|
|
14
|
-
export interface DryRunnable {
|
|
15
|
-
/** Print the planned change without writing anything. */
|
|
16
|
-
dryRun?: boolean;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* `--yes`: answer the confirmation prompt non-interactively.
|
|
20
|
-
*
|
|
21
|
-
* Required for non-TTY runs, where there is no prompt to answer. It waives
|
|
22
|
-
* the prompt only, never a safety gate. Flags that waive a refusal are
|
|
23
|
-
* spelled `--force*` and live on their own types.
|
|
24
|
-
*/
|
|
25
|
-
export interface Confirmable {
|
|
26
|
-
/** Skip the confirmation prompt. Required for non-TTY runs. */
|
|
27
|
-
yes?: boolean;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* `--force-unsafe`: proceed past a refusal the command would otherwise raise.
|
|
31
|
-
*
|
|
32
|
-
* Distinct from {@link Confirmable}: this waives a correctness gate (a
|
|
33
|
-
* projected-lint failure, a patchPolicy violation), not a prompt.
|
|
34
|
-
*/
|
|
35
|
-
export interface UnsafeOverridable {
|
|
36
|
-
/** Bypass refusals the command would otherwise raise. */
|
|
37
|
-
forceUnsafe?: boolean;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* `--wait-lock [seconds]` for commands that take the ENGINE SESSION lock.
|
|
41
|
-
*
|
|
42
|
-
* Parsed at the CLI layer (`true` for the bare flag, meaning 60 seconds) and
|
|
43
|
-
* consumed there to bound the wait. The command implementation ignores it.
|
|
44
|
-
*/
|
|
45
|
-
export interface EngineLockWaitable {
|
|
46
|
-
/** Parsed `--wait-lock [seconds]` value. `true` means the 60-second default. */
|
|
47
|
-
waitLock?: number | boolean;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* `--wait-lock [seconds]` for commands that mutate patch metadata under the
|
|
51
|
-
* PATCH DIRECTORY lock.
|
|
52
|
-
*
|
|
53
|
-
* Separate from {@link EngineLockWaitable}: the two flags share a
|
|
54
|
-
* spelling but bound different locks, and a reader needs to know which one a
|
|
55
|
-
* command contends for.
|
|
56
|
-
*/
|
|
57
|
-
export interface PatchLockWaitable {
|
|
58
|
-
/** Wait budget for the patch directory lock (`--wait-lock [seconds]`). */
|
|
59
|
-
waitLock?: number | boolean;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Options for the setup command.
|
|
63
|
-
*/
|
|
64
|
-
export interface SetupOptions {
|
|
65
|
-
/** Browser name */
|
|
66
|
-
name?: string;
|
|
67
|
-
/** Vendor/company name */
|
|
68
|
-
vendor?: string;
|
|
69
|
-
/** Application ID (reverse-domain format) */
|
|
70
|
-
appId?: string;
|
|
71
|
-
/** Binary name (executable name) */
|
|
72
|
-
binaryName?: string;
|
|
73
|
-
/** Firefox version to base on */
|
|
74
|
-
firefoxVersion?: string;
|
|
75
|
-
/** Firefox product type (firefox, firefox-esr, firefox-beta, firefox-devedition) */
|
|
76
|
-
product?: FirefoxProduct;
|
|
77
|
-
/** Overwrite existing configuration without prompting */
|
|
78
|
-
force?: boolean;
|
|
79
|
-
/** Project license SPDX identifier */
|
|
80
|
-
license?: ProjectLicense;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Options for the download command.
|
|
84
|
-
*/
|
|
85
|
-
export interface DownloadOptions {
|
|
86
|
-
/** Force re-download, deleting existing engine/ */
|
|
87
|
-
force?: boolean;
|
|
88
|
-
/** With `force`: skip the confirmation for an engine with changes to lose */
|
|
89
|
-
yes?: boolean;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Options for the source command.
|
|
93
|
-
*/
|
|
94
|
-
export interface SourceSetOptions {
|
|
95
|
-
/** Firefox version to set */
|
|
96
|
-
version: string;
|
|
97
|
-
/** Firefox product type */
|
|
98
|
-
product: FirefoxProduct;
|
|
99
|
-
/** Optional pinned SHA-256 for the resolved source archive */
|
|
100
|
-
sha256?: string;
|
|
101
|
-
/** Clear any existing pinned SHA-256 */
|
|
102
|
-
clearSha256?: boolean;
|
|
103
|
-
/** Optional release-candidate build directory (e.g. "build2") */
|
|
104
|
-
candidate?: string;
|
|
105
|
-
/** Clear any existing release-candidate build directory */
|
|
106
|
-
clearCandidate?: boolean;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Options for the build command.
|
|
110
|
-
*/
|
|
111
|
-
export interface BuildOptions extends EngineLockWaitable {
|
|
112
|
-
/** Wait for the objdir browser before deploying/building. */
|
|
113
|
-
waitBrowser?: number | boolean;
|
|
114
|
-
/** Also write the run log here, outside `.fireforge/logs/` retention. */
|
|
115
|
-
keepLog?: string;
|
|
116
|
-
/** Fast UI-only rebuild */
|
|
117
|
-
ui?: boolean;
|
|
118
|
-
/** Number of parallel jobs */
|
|
119
|
-
jobs?: number;
|
|
120
|
-
/** Brand to build (stable, esr, etc.) */
|
|
121
|
-
brand?: string;
|
|
122
|
-
/**
|
|
123
|
-
* When a mozinfo mismatch is detected that looks like a safe path
|
|
124
|
-
* relocation (same structure, different prefix), patch mozinfo paths
|
|
125
|
-
* in place and run `mach configure` rather than aborting with a
|
|
126
|
-
* full-rebuild instruction. Falls back to the original abort message
|
|
127
|
-
* for any mismatch the rewriter cannot prove safe.
|
|
128
|
-
*/
|
|
129
|
-
rewriteMozinfo?: boolean;
|
|
130
|
-
/**
|
|
131
|
-
* Refuse the build (rather than warn) when it would overwrite engine
|
|
132
|
-
* content recorded in neither a patch body nor the pristine baseline.
|
|
133
|
-
* The default is a loud warning, because an interactive
|
|
134
|
-
* operator often means to discard the drift. A scripted gate on a
|
|
135
|
-
* multi-session checkout wants the hard stop.
|
|
136
|
-
*/
|
|
137
|
-
refuseUnexportedDrift?: boolean;
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Options for the export command.
|
|
141
|
-
*/
|
|
142
|
-
export interface ExportOptions extends EngineLockWaitable {
|
|
143
|
-
/** Name/description for the patch */
|
|
144
|
-
name?: string;
|
|
145
|
-
/** Category classification */
|
|
146
|
-
category?: PatchCategory;
|
|
147
|
-
/** Detailed description of what the patch does */
|
|
148
|
-
description?: string;
|
|
149
|
-
/** Allow superseding multiple existing patches without confirmation */
|
|
150
|
-
supersede?: boolean;
|
|
151
|
-
/** Skip patch lint checks (downgrade errors to warnings) */
|
|
152
|
-
skipLint?: boolean;
|
|
153
|
-
/**
|
|
154
|
-
* Print the computed export plan without writing anything. With
|
|
155
|
-
* `--supersede`, the dry-run output includes which existing patches would
|
|
156
|
-
* be superseded and which files caused the coverage.
|
|
157
|
-
*/
|
|
158
|
-
dryRun?: boolean;
|
|
159
|
-
/** Place the new patch at this exact unused order without renumbering existing patches. */
|
|
160
|
-
order?: number;
|
|
161
|
-
/** Place the new patch immediately before the named patch. */
|
|
162
|
-
before?: string;
|
|
163
|
-
/** Place the new patch immediately after the named patch. */
|
|
164
|
-
after?: string;
|
|
165
|
-
/**
|
|
166
|
-
* Skip the confirmation prompt when placement forces a renumber of more
|
|
167
|
-
* than one existing patch. Required for non-TTY runs that use placement
|
|
168
|
-
* flags.
|
|
169
|
-
*/
|
|
170
|
-
yes?: boolean;
|
|
171
|
-
/** Bypass cross-patch lint refusal for projected placement state. */
|
|
172
|
-
forceUnsafe?: boolean;
|
|
173
|
-
/** Exclude furnace-managed file paths from the export. */
|
|
174
|
-
excludeFurnace?: boolean;
|
|
175
|
-
/**
|
|
176
|
-
* Export the deployed engine copy even when the `components/` source
|
|
177
|
-
* changed since the last furnace apply. Without this flag the export is
|
|
178
|
-
* refused so a stale deployed copy cannot silently land in the patch.
|
|
179
|
-
*/
|
|
180
|
-
allowStaleFurnace?: boolean;
|
|
181
|
-
/**
|
|
182
|
-
* Acknowledge that the export will create cross-patch ownership overlap
|
|
183
|
-
* with existing non-superseded patches. Without this flag, `export`
|
|
184
|
-
* refuses when one or more `filesAffected` are already claimed by
|
|
185
|
-
* another patch, because the resulting queue fails `verify` immediately.
|
|
186
|
-
*/
|
|
187
|
-
allowOverlap?: boolean;
|
|
188
|
-
/**
|
|
189
|
-
* Force a tier override on the new patch's `PatchMetadata.tier`. Only
|
|
190
|
-
* `"branding"` is currently recognised. Commander rejects other values
|
|
191
|
-
* before the handler runs. Use when a branding patch legitimately
|
|
192
|
-
* touches a non-allowlisted sibling that `isBrandingOnlyPatch` cannot
|
|
193
|
-
* reach (a fork-specific theme override under `browser/themes/<name>/`,
|
|
194
|
-
* a vendor-specific icon resource, etc.).
|
|
195
|
-
*/
|
|
196
|
-
tier?: 'branding';
|
|
197
|
-
/**
|
|
198
|
-
* Lint check IDs to suppress on this patch. Writes to
|
|
199
|
-
* `PatchMetadata.lintIgnore`. Repeatable on the CLI, and each occurrence
|
|
200
|
-
* appends to the list. Useful when a patch is advisory-noisy by nature
|
|
201
|
-
* (a cohesive branding bundle, an auto-generated manifest) and a
|
|
202
|
-
* specific check does not apply, but `--skip-lint` is too coarse a
|
|
203
|
-
* hammer.
|
|
204
|
-
*/
|
|
205
|
-
lintIgnore?: string[];
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Options for the reset command.
|
|
209
|
-
*/
|
|
210
|
-
export interface ResetOptions extends Confirmable {
|
|
211
|
-
/** Show what would be reset without doing it */
|
|
212
|
-
dryRun?: boolean;
|
|
213
|
-
}
|
|
214
|
-
/**
|
|
215
|
-
* Options for the discard command.
|
|
216
|
-
*/
|
|
217
|
-
export interface DiscardOptions extends Confirmable {
|
|
218
|
-
/**
|
|
219
|
-
* Restore to pristine upstream (HEAD) instead of the patch-applied
|
|
220
|
-
* baseline, deleting patch-created files.
|
|
221
|
-
*/
|
|
222
|
-
toUpstream?: boolean;
|
|
223
|
-
/** Show what would be discarded without doing it */
|
|
224
|
-
dryRun?: boolean;
|
|
225
|
-
}
|
|
226
|
-
/**
|
|
227
|
-
* Options for the package command.
|
|
228
|
-
*/
|
|
229
|
-
export interface PackageOptions {
|
|
230
|
-
/** Brand to package */
|
|
231
|
-
brand?: string;
|
|
232
|
-
}
|
|
233
|
-
/**
|
|
234
|
-
* Options for the import command.
|
|
235
|
-
*/
|
|
236
|
-
export interface ImportOptions {
|
|
237
|
-
/**
|
|
238
|
-
* Answer the engine-drift prompt non-interactively. Unlike `force`,
|
|
239
|
-
* this does not waive the patch-integrity gate.
|
|
240
|
-
*/
|
|
241
|
-
yes?: boolean;
|
|
242
|
-
/** Specific patches to apply (by name) */
|
|
243
|
-
patches?: string[];
|
|
244
|
-
/** Continue applying patches even if one fails */
|
|
245
|
-
continue?: boolean;
|
|
246
|
-
/** Force import even when engine HEAD has drifted from base commit */
|
|
247
|
-
force?: boolean;
|
|
248
|
-
/**
|
|
249
|
-
* Apply patches only up to and including this patch (by name or ordinal).
|
|
250
|
-
* Subsequent patches are left unapplied. Useful for bisection and curated
|
|
251
|
-
* rebuild workflows.
|
|
252
|
-
*/
|
|
253
|
-
until?: string;
|
|
254
|
-
/** Preview which patches would be applied without modifying the engine */
|
|
255
|
-
dryRun?: boolean;
|
|
256
|
-
}
|
|
257
|
-
/**
|
|
258
|
-
* Options for the re-export command.
|
|
259
|
-
*/
|
|
260
|
-
export interface ReExportOptions extends EngineLockWaitable {
|
|
261
|
-
/** Re-export all patches */
|
|
262
|
-
all?: boolean;
|
|
263
|
-
/** Scan directories for new/removed files and update filesAffected */
|
|
264
|
-
scan?: boolean;
|
|
265
|
-
/**
|
|
266
|
-
* Explicit engine-relative files to add while scanning. Unlike broad
|
|
267
|
-
* `--scan`, this does not collect adjacent files from the same directory.
|
|
268
|
-
* Requires `--scan`. A `<patch>:<path>` entry names its owning patch, which
|
|
269
|
-
* a call with several target patches requires; selected patches without
|
|
270
|
-
* an entry then refresh scan-less.
|
|
271
|
-
*/
|
|
272
|
-
scanFiles?: string[];
|
|
273
|
-
/**
|
|
274
|
-
* Path to a JSON manifest containing bulk scan assignments:
|
|
275
|
-
* `{ "assignments": [{ "patch": "<patch>", "files": ["path"] }] }`.
|
|
276
|
-
* Requires `--scan`. Mutually exclusive with positional patches, `--all`,
|
|
277
|
-
* `--scan-file`, and `--files`.
|
|
278
|
-
*/
|
|
279
|
-
scanFilesManifest?: string;
|
|
280
|
-
/**
|
|
281
|
-
* Restrict the re-exported patch's filesAffected to this explicit list.
|
|
282
|
-
* Files currently in the patch but not in this list are dropped (shrink).
|
|
283
|
-
* Files in this list but not currently in the patch are added. Mutually
|
|
284
|
-
* exclusive with `--scan` and `--all`. Applies to a single target patch
|
|
285
|
-
* at a time.
|
|
286
|
-
*/
|
|
287
|
-
files?: string[];
|
|
288
|
-
/** Show what would change without writing */
|
|
289
|
-
dryRun?: boolean;
|
|
290
|
-
/** Skip patch lint checks (downgrade errors to warnings) */
|
|
291
|
-
skipLint?: boolean;
|
|
292
|
-
/** Skip confirmation prompt on shrink (required for non-TTY) */
|
|
293
|
-
yes?: boolean;
|
|
294
|
-
/**
|
|
295
|
-
* Explicitly allow `--files` to remove paths that are currently owned by
|
|
296
|
-
* the patch. Without this acknowledgement, non-dry-run shrinks are refused
|
|
297
|
-
* before the interactive/`--yes` confirmation path.
|
|
298
|
-
*/
|
|
299
|
-
allowShrink?: boolean;
|
|
300
|
-
/**
|
|
301
|
-
* Export the deployed engine copy even when the `components/` source
|
|
302
|
-
* changed since the last furnace apply. Without this flag the re-export
|
|
303
|
-
* is refused so a stale deployed copy cannot silently land in the patch.
|
|
304
|
-
*/
|
|
305
|
-
allowStaleFurnace?: boolean;
|
|
306
|
-
/** Bypass cross-patch lint refusal on projected shrink state */
|
|
307
|
-
forceUnsafe?: boolean;
|
|
308
|
-
/**
|
|
309
|
-
* After every selected patch re-exports cleanly, stamp each re-exported
|
|
310
|
-
* patch's `sourceEsrVersion` in `patches.json` to the current
|
|
311
|
-
* `firefox.version` from `fireforge.json`. Opt-in because the default
|
|
312
|
-
* contract of `re-export` is "refresh the patch body and filesAffected".
|
|
313
|
-
* Version stamping is normally a `rebase` responsibility. Use this when
|
|
314
|
-
* re-exporting after a manual Firefox bump that did not go through
|
|
315
|
-
* `rebase`.
|
|
316
|
-
*/
|
|
317
|
-
stamp?: boolean;
|
|
318
|
-
/**
|
|
319
|
-
* Force a tier override on the selected patch(es). Only `"branding"` is
|
|
320
|
-
* currently recognised. Mutually exclusive with `--all`, since mass
|
|
321
|
-
* tier changes are virtually always footguns: different patches in
|
|
322
|
-
* the queue have different shapes.
|
|
323
|
-
*/
|
|
324
|
-
tier?: 'branding';
|
|
325
|
-
/**
|
|
326
|
-
* Lint check IDs to suppress, appended (union) to the patch's existing
|
|
327
|
-
* `lintIgnore` list. De-duplicated. Mutually exclusive with `--all`. To
|
|
328
|
-
* remove an entry or clear the list, use `fireforge patch lint-ignore`,
|
|
329
|
-
* which has explicit `--add` / `--remove` / `--clear` modes.
|
|
330
|
-
*/
|
|
331
|
-
lintIgnore?: string[];
|
|
332
|
-
/**
|
|
333
|
-
* Refuse (non-zero exit, patch not written) a scan-less re-export when
|
|
334
|
-
* unmanaged files exist adjacent to the patch's ownership, instead of
|
|
335
|
-
* warning. Gate-driven workflows use this so a freshly created file
|
|
336
|
-
* beside a patch's owned files cannot be silently left out of the
|
|
337
|
-
* refreshed body. Beside `--scan` it judges the neighbours the scan did
|
|
338
|
-
* not adopt. Mutually exclusive with `--files`, which sets filesAffected
|
|
339
|
-
* explicitly.
|
|
340
|
-
*/
|
|
341
|
-
refuseAdjacentUnmanaged?: boolean;
|
|
342
|
-
/**
|
|
343
|
-
* Bypass per-patch lint result cache reads and writes for this invocation
|
|
344
|
-
* (`--no-cache`). The cache is what lets a repeat re-export of an unchanged
|
|
345
|
-
* patch skip the checkJs program build entirely.
|
|
346
|
-
*/
|
|
347
|
-
noCache?: boolean;
|
|
348
|
-
/**
|
|
349
|
-
* Refuse (non-zero exit, patch not written) a re-export whose refreshed
|
|
350
|
-
* body would add or drop lines, in a file the patch already owns, that
|
|
351
|
-
* the old patch body did not carry.
|
|
352
|
-
* This is the multi-session guard against silently capturing another
|
|
353
|
-
* session's uncommitted edits in files the patch already owns. The drift preview
|
|
354
|
-
* always prints. This flag turns it into a hard stop. Beside `--scan` it
|
|
355
|
-
* guards the files each patch already owns (adopted files count as
|
|
356
|
-
* expected). Mutually exclusive with `--files`.
|
|
357
|
-
*/
|
|
358
|
-
refuseForeignDrift?: boolean;
|
|
359
|
-
/**
|
|
360
|
-
* Engine-relative files whose drift is expected (`--expect`, repeatable).
|
|
361
|
-
* Requires `--refuse-foreign-drift`. The content-based drift detector
|
|
362
|
-
* cannot tell the exporting session's own slice edits from another
|
|
363
|
-
* session's, so a slice export under the refusal flag names its intended
|
|
364
|
-
* files here: drift confined to expected files proceeds, drift anywhere
|
|
365
|
-
* else still refuses.
|
|
366
|
-
*/
|
|
367
|
-
expect?: string[];
|
|
368
|
-
/**
|
|
369
|
-
* Engine-relative files that are an approved unmanaged exception
|
|
370
|
-
* (`--expect-unmanaged`, repeatable). Requires
|
|
371
|
-
* `--refuse-adjacent-unmanaged`. The adjacency refusal is all-or-nothing
|
|
372
|
-
* without it: a project with a reviewed, intentionally unmanaged path
|
|
373
|
-
* beside a patch's ownership has to drop the flag entirely and hand-read
|
|
374
|
-
* the notice, which is a weaker belt than the one being disarmed.
|
|
375
|
-
* Approved paths are still listed. They are carved out of the refusal
|
|
376
|
-
* rather than hidden.
|
|
377
|
-
*/
|
|
378
|
-
expectUnmanaged?: string[];
|
|
379
|
-
/**
|
|
380
|
-
* Engine-relative files this session created and will adopt with its next
|
|
381
|
-
* export (`--expect-new`, repeatable). Requires
|
|
382
|
-
* `--refuse-adjacent-unmanaged`. Lets the owners of a new file's
|
|
383
|
-
* registration re-export first while a peer's unmanaged neighbour still
|
|
384
|
-
* refuses. The path must be changed in engine/ and owned by no patch.
|
|
385
|
-
*/
|
|
386
|
-
expectNew?: string[];
|
|
387
|
-
/**
|
|
388
|
-
* Reviewed ignore list for `--refuse-adjacent-unmanaged`
|
|
389
|
-
* (`--adjacent-ignore`, repeatable): an engine-relative path, or a glob
|
|
390
|
-
* whose `*` stays within one segment (`**` is refused). Matches are
|
|
391
|
-
* reported, never refused.
|
|
392
|
-
*/
|
|
393
|
-
adjacentIgnore?: string[];
|
|
394
|
-
/**
|
|
395
|
-
* Explicitly retire named files in a scan-less export: an absent file the
|
|
396
|
-
* patch created, or a patch-modified upstream file whose engine copy is
|
|
397
|
-
* back at HEAD.
|
|
398
|
-
*/
|
|
399
|
-
expectRemoved?: string[];
|
|
400
|
-
/**
|
|
401
|
-
* Where a refused `--scan` adoption writes its one `--from`-ready
|
|
402
|
-
* declaration report (`--declarations-out`). Defaults to
|
|
403
|
-
* `.fireforge/declarations/`.
|
|
404
|
-
*/
|
|
405
|
-
declarationsOut?: string;
|
|
406
|
-
/**
|
|
407
|
-
* `--hunks-from <diff>`: export each named file as the patch's current
|
|
408
|
-
* body plus only the hunks in this diff, leaving every other session's
|
|
409
|
-
* edits in the file out.
|
|
410
|
-
*/
|
|
411
|
-
hunksFrom?: string;
|
|
412
|
-
/**
|
|
413
|
-
* `--exclude-hunks <diff>`: export each named file as the working tree
|
|
414
|
-
* minus the hunks in this diff.
|
|
415
|
-
*/
|
|
416
|
-
excludeHunks?: string;
|
|
417
|
-
}
|
|
418
|
-
/**
|
|
419
|
-
* Options for the `fireforge patch tier` subcommand. Sets or clears the
|
|
420
|
-
* `PatchMetadata.tier` field on a single patch without rewriting the
|
|
421
|
-
* `.patch` file body. The manifest is the only thing that changes.
|
|
422
|
-
*/
|
|
423
|
-
export interface PatchTierOptions extends Confirmable, DryRunnable, PatchLockWaitable {
|
|
424
|
-
/** Force the named tier on the patch. Only `"branding"` is recognised. */
|
|
425
|
-
tier?: 'branding';
|
|
426
|
-
/** Remove the `tier` override entirely, restoring auto-detection. */
|
|
427
|
-
clear?: boolean;
|
|
428
|
-
}
|
|
429
|
-
/**
|
|
430
|
-
* Options for the `fireforge patch lint-ignore` subcommand. Modes are
|
|
431
|
-
* mutually exclusive: exactly one of `add`, `remove`, or `clear` must
|
|
432
|
-
* be set per invocation.
|
|
433
|
-
*/
|
|
434
|
-
export interface PatchLintIgnoreOptions extends Confirmable, DryRunnable, PatchLockWaitable {
|
|
435
|
-
/** Lint check IDs to add to the patch's `lintIgnore` list (union, de-duped). */
|
|
436
|
-
add?: string[];
|
|
437
|
-
/** Lint check IDs to remove from the patch's `lintIgnore` list. */
|
|
438
|
-
remove?: string[];
|
|
439
|
-
/** Drop the `lintIgnore` field entirely. */
|
|
440
|
-
clear?: boolean;
|
|
441
|
-
/**
|
|
442
|
-
* With `add`: write `{ rule, max, reason }` ceiling entries instead of
|
|
443
|
-
* bare IDs. Only the measured size rules accept one. Requires `reason`.
|
|
444
|
-
*/
|
|
445
|
-
max?: number;
|
|
446
|
-
/** Why the ceiling exists. Required with `max` or a `<rule>=<max>` add. */
|
|
447
|
-
reason?: string;
|
|
448
|
-
/** With a ceiling on `large-patch-lines`: the share it bounds. */
|
|
449
|
-
share?: PatchSizeShare;
|
|
450
|
-
/**
|
|
451
|
-
* Add every entry in a JSON file under one lock hold: an array of
|
|
452
|
-
* entries, or a lint report whose ceilings for the patch are rebaselined.
|
|
453
|
-
*/
|
|
454
|
-
from?: string;
|
|
455
|
-
}
|
|
456
|
-
/**
|
|
457
|
-
* Options for the `fireforge patch staged-dependency` subcommand. Modes are
|
|
458
|
-
* mutually exclusive: add a declaration, remove one or more matching
|
|
459
|
-
* declarations, or clear all staged dependencies from the patch.
|
|
460
|
-
*/
|
|
461
|
-
export interface PatchStagedDependencyOptions extends Confirmable, DryRunnable, PatchLockWaitable {
|
|
462
|
-
/** Add a staged dependency declaration. */
|
|
463
|
-
add?: boolean;
|
|
464
|
-
/** Remove matching staged dependency declarations. */
|
|
465
|
-
remove?: boolean;
|
|
466
|
-
/** Drop the stagedDependencies field entirely. */
|
|
467
|
-
clear?: boolean;
|
|
468
|
-
/**
|
|
469
|
-
* Declaration shape: `import` (forward import, the default when unset) or
|
|
470
|
-
* `registration` (jar.mn packaging line, customElements or actor
|
|
471
|
-
* registration). Registration entries use `line` instead of `specifier`.
|
|
472
|
-
*/
|
|
473
|
-
kind?: string;
|
|
474
|
-
/** Declaring file path relative to engine/. */
|
|
475
|
-
file?: string;
|
|
476
|
-
/** Exact import specifier as it appears in source (`kind: import`). */
|
|
477
|
-
specifier?: string;
|
|
478
|
-
/**
|
|
479
|
-
* Registration/packaging line as the patch adds it, compared
|
|
480
|
-
* whitespace-trimmed (`kind: registration`).
|
|
481
|
-
*/
|
|
482
|
-
line?: string;
|
|
483
|
-
/** Later-created file path relative to engine/. */
|
|
484
|
-
creates?: string;
|
|
485
|
-
/** Optional exact patch filename expected to create `creates`. */
|
|
486
|
-
owner?: string;
|
|
487
|
-
/** Optional human-readable rationale stored with the declaration. */
|
|
488
|
-
reason?: string;
|
|
489
|
-
/**
|
|
490
|
-
* JSON file of declarations to add in one call (`--add` only): a
|
|
491
|
-
* `lint --per-patch --report` document or a plain array of declarations.
|
|
492
|
-
*/
|
|
493
|
-
from?: string;
|
|
494
|
-
}
|
|
495
|
-
/**
|
|
496
|
-
* Options for the `patch split` command.
|
|
497
|
-
*/
|
|
498
|
-
export interface PatchSplitOptions extends Confirmable, PatchLockWaitable, UnsafeOverridable {
|
|
499
|
-
/** Files to move out of the source patch (engine-relative). */
|
|
500
|
-
files: string[];
|
|
501
|
-
/** Name for the new patch (used in its filename slug). */
|
|
502
|
-
name: string;
|
|
503
|
-
/** Category for the new patch. Defaults to the source patch's category. */
|
|
504
|
-
category?: string;
|
|
505
|
-
/** Description for the new patch. */
|
|
506
|
-
description?: string;
|
|
507
|
-
/** Exact sparse order for the new patch (mutually exclusive with before/after). */
|
|
508
|
-
order?: number;
|
|
509
|
-
/** Place the new patch before this patch identifier. */
|
|
510
|
-
before?: string;
|
|
511
|
-
/** Place the new patch after this patch identifier (default: the source). */
|
|
512
|
-
after?: string;
|
|
513
|
-
/** Preview without writing. */
|
|
514
|
-
dryRun?: boolean;
|
|
515
|
-
/** Skip per-patch lint of the projected bodies. */
|
|
516
|
-
skipLint?: boolean;
|
|
517
|
-
/** Where a refusal writes its one `--from`-ready declaration report. */
|
|
518
|
-
declarationsOut?: string;
|
|
519
|
-
/** Write the committed old-to-new filename map of renumbered patches here as JSON. */
|
|
520
|
-
mapOut?: string;
|
|
521
|
-
}
|
|
522
|
-
/**
|
|
523
|
-
* Options for the `fireforge patch move-files` subcommand. Without
|
|
524
|
-
* `--create` it is preview-only: it validates an ownership transfer and
|
|
525
|
-
* prints the explicit `re-export --files` commands needed to perform it.
|
|
526
|
-
* With `--create --order <n>` the target patch is created at that order
|
|
527
|
-
* and the files move into it as one split-style transaction.
|
|
528
|
-
*/
|
|
529
|
-
export interface PatchMoveFilesOptions extends Confirmable, PatchLockWaitable, UnsafeOverridable {
|
|
530
|
-
/** File paths relative to engine/ to move from the source patch to the target patch. */
|
|
531
|
-
file?: string[];
|
|
532
|
-
/** Create the target patch (transactional bootstrap of a split). Requires `order`. */
|
|
533
|
-
create?: boolean;
|
|
534
|
-
/** Exact sparse order for the created patch. Only valid with `create`. */
|
|
535
|
-
order?: number;
|
|
536
|
-
/** Category for the created patch. Defaults to the source patch's. */
|
|
537
|
-
category?: string;
|
|
538
|
-
/** Description for the created patch. */
|
|
539
|
-
description?: string;
|
|
540
|
-
/** Preview the create+move without writing. */
|
|
541
|
-
dryRun?: boolean;
|
|
542
|
-
/** Skip per-patch lint of the projected bodies. */
|
|
543
|
-
skipLint?: boolean;
|
|
544
|
-
/** Where a refusal writes its one `--from`-ready declaration report. */
|
|
545
|
-
declarationsOut?: string;
|
|
546
|
-
/**
|
|
547
|
-
* New engine files no patch owns, adopted into the destination in the
|
|
548
|
-
* same transaction (engine-relative, repeatable).
|
|
549
|
-
*/
|
|
550
|
-
scanFile?: string[];
|
|
551
|
-
/**
|
|
552
|
-
* Allow the move to empty the source: re-point the declarations it owns
|
|
553
|
-
* to the destination and retire its slot. Not valid with `create`.
|
|
554
|
-
*/
|
|
555
|
-
retireEmpty?: boolean;
|
|
556
|
-
}
|
|
557
|
-
/**
|
|
558
|
-
* Options for the rebase command.
|
|
559
|
-
*/
|
|
560
|
-
export interface RebaseOptions {
|
|
561
|
-
/**
|
|
562
|
-
* Seconds to wait for the patch directory lock. The rebase loop rewrites
|
|
563
|
-
* patch bodies under that lock.
|
|
564
|
-
*/
|
|
565
|
-
waitLock?: number | boolean;
|
|
566
|
-
/** Resume a previously interrupted rebase session */
|
|
567
|
-
continue?: boolean;
|
|
568
|
-
/** Cancel the current rebase session and restore engine */
|
|
569
|
-
abort?: boolean;
|
|
570
|
-
/** Show what would happen without modifying anything */
|
|
571
|
-
dryRun?: boolean;
|
|
572
|
-
/** Maximum fuzz factor for git apply (default 3) */
|
|
573
|
-
maxFuzz?: number;
|
|
574
|
-
/** Skip dirty-tree confirmation prompt */
|
|
575
|
-
yes?: boolean;
|
|
576
|
-
}
|
|
577
|
-
/**
|
|
578
|
-
* Options for the run command.
|
|
579
|
-
*/
|
|
580
|
-
export interface RunOptions {
|
|
581
|
-
/** Additional arguments to pass to the browser */
|
|
582
|
-
args?: string[];
|
|
583
|
-
/** Launch with this profile directory, passed to Firefox as `-profile`. */
|
|
584
|
-
profile?: string;
|
|
585
|
-
/**
|
|
586
|
-
* Launch with a fresh temporary profile, removed when the run ends.
|
|
587
|
-
* Implied by `smokeExit` unless `profile` is given.
|
|
588
|
-
*/
|
|
589
|
-
tempProfile?: boolean;
|
|
590
|
-
/**
|
|
591
|
-
* Pass `-purgecaches` with a named `profile`, so Firefox discards the
|
|
592
|
-
* profile's startup cache (compiled chrome scripts) before it runs. A UI
|
|
593
|
-
* build keeps the build id the cache is keyed on, so a kept profile would
|
|
594
|
-
* otherwise run the chrome scripts an earlier build cached. Default
|
|
595
|
-
* `true`; `--no-purge-caches` sets `false`. Fresh temporary profiles and
|
|
596
|
-
* mach's own profile-default (cleaned before every run) have no cache to
|
|
597
|
-
* purge.
|
|
598
|
-
*/
|
|
599
|
-
purgeCaches?: boolean;
|
|
600
|
-
/**
|
|
601
|
-
* Enable smoke-run mode. Launches the browser, streams the console,
|
|
602
|
-
* sends SIGTERM to the whole process group after `smokeExit` seconds,
|
|
603
|
-
* and applies the smoke exit contract:
|
|
604
|
-
* - `0`: clean window (no unallowed error lines).
|
|
605
|
-
* - `ExitCode.SMOKE_EXIT_FAILURE` (12): one or more console lines
|
|
606
|
-
* matched the error heuristic and were not covered by the allowlist.
|
|
607
|
-
* - `ExitCode.SMOKE_LAUNCH_FAILURE` (13): the browser exited with a
|
|
608
|
-
* non-clean status before the smoke window elapsed (a launch-side
|
|
609
|
-
* failure we cannot observe as a console line, such as a crash
|
|
610
|
-
* before console wiring, or a missing profile), or exited before the
|
|
611
|
-
* window with no browser console output at all (a launch that never
|
|
612
|
-
* reached a window, such as a profile in a startup-crash streak).
|
|
613
|
-
*
|
|
614
|
-
* POSIX only (process-group semantics do not map cleanly onto Windows).
|
|
615
|
-
* `runSmokeExit` rejects the flag up front on `win32`.
|
|
616
|
-
*/
|
|
617
|
-
smokeExit?: number;
|
|
618
|
-
/**
|
|
619
|
-
* Repeatable regex patterns that mark a matching console line as
|
|
620
|
-
* benign. Matches are still counted for the summary but do not drive
|
|
621
|
-
* the smoke-run exit code.
|
|
622
|
-
*/
|
|
623
|
-
consoleAllow?: string[];
|
|
624
|
-
/**
|
|
625
|
-
* Path to a newline-delimited allowlist regex file. Blank lines and
|
|
626
|
-
* `#` comments are ignored. Each remaining line is compiled as a
|
|
627
|
-
* regex and appended to the active allowlist.
|
|
628
|
-
*/
|
|
629
|
-
consoleAllowFile?: string;
|
|
630
|
-
/**
|
|
631
|
-
* Mirror the captured console output to this file path so agents can
|
|
632
|
-
* inspect the raw stream after smoke-exit returns.
|
|
633
|
-
*/
|
|
634
|
-
captureConsole?: string;
|
|
635
|
-
/**
|
|
636
|
-
* Launch the browser with `--headless` (forwarded to the binary via
|
|
637
|
-
* `mach run`). Primarily for smoke mode on shared desktops: a headed
|
|
638
|
-
* smoke window absorbs live keyboard/mouse input, and the resulting
|
|
639
|
-
* console errors contaminate the capture and can fail the run.
|
|
640
|
-
*/
|
|
641
|
-
headless?: boolean;
|
|
642
|
-
}
|
|
643
|
-
/**
|
|
644
|
-
* Options for the test command.
|
|
645
|
-
*/
|
|
646
|
-
export interface TestOptions extends EngineLockWaitable {
|
|
647
|
-
/** Queue behind a browser using this objdir; bare flag means 60 seconds. */
|
|
648
|
-
waitBrowser?: number | boolean;
|
|
649
|
-
/** Queue behind the mochitest/Marionette port holder. */
|
|
650
|
-
waitPort?: number | boolean;
|
|
651
|
-
/**
|
|
652
|
-
* The `--wait-browser`/`--wait-port` budgets the pre-lock pass already
|
|
653
|
-
* spent (and stripped from `waitBrowser`/`waitPort`). The first in-lock
|
|
654
|
-
* check probes once; a check that follows work this invocation did under
|
|
655
|
-
* the lock (its pre-test build, or an earlier run of a `--repeat` or
|
|
656
|
-
* `--negative-control` sequence) waits them out again, because refusing
|
|
657
|
-
* there throws that work away.
|
|
658
|
-
*/
|
|
659
|
-
spentWaits?: {
|
|
660
|
-
waitBrowser?: number | boolean;
|
|
661
|
-
waitPort?: number | boolean;
|
|
662
|
-
};
|
|
663
|
-
/** Also write the run log here, outside `.fireforge/logs/` retention. */
|
|
664
|
-
keepLog?: string;
|
|
665
|
-
/** Forward mochitest's `--restart-between-tests` (mochitest dispatch only). */
|
|
666
|
-
restartBetweenTests?: boolean;
|
|
667
|
-
/** Copy a file into the profile at a relative destination (repeatable source=destination). */
|
|
668
|
-
profileFile?: string[];
|
|
669
|
-
/** Run tests in headless mode */
|
|
670
|
-
headless?: boolean;
|
|
671
|
-
/**
|
|
672
|
-
* Pass mozbuild's full verbosity through for the TEST phase by unsetting
|
|
673
|
-
* the coding-agent markers it quiets output on. Off by default, because
|
|
674
|
-
* that quieting is worth keeping for builds.
|
|
675
|
-
*/
|
|
676
|
-
fullOutput?: boolean;
|
|
677
|
-
/** Run incremental UI build before testing */
|
|
678
|
-
build?: boolean;
|
|
679
|
-
/**
|
|
680
|
-
* Run the scoped pre-test build (packaging exactly the requested paths,
|
|
681
|
-
* MIXED harnesses allowed) and exit without dispatching tests. One
|
|
682
|
-
* ~10-minute build then covers both an xpcshell and a browser-chrome
|
|
683
|
-
* half of a slice. Run each harness afterwards without `--build`.
|
|
684
|
-
* Emits `FIREFORGE-VERDICT: PASS` on success.
|
|
685
|
-
*/
|
|
686
|
-
buildOnly?: boolean;
|
|
687
|
-
/**
|
|
688
|
-
* Refuse, before the build, instead of dropping any earlier packaging
|
|
689
|
-
* claim. Scoped builds keep earlier paths by default while each path's own
|
|
690
|
-
* staging inputs and `engine/mozconfig` are unchanged; this flag makes a
|
|
691
|
-
* drop fail-closed. Valid only with `--build`/`--build-only` and explicit
|
|
692
|
-
* paths. See `src/core/coverage-extend.ts`.
|
|
693
|
-
*/
|
|
694
|
-
extendCoverage?: boolean;
|
|
695
|
-
/**
|
|
696
|
-
* Forwarded to the PRE-TEST build: refuse (rather than warn) when that
|
|
697
|
-
* build would overwrite engine content recorded in neither a patch body
|
|
698
|
-
* nor the pristine baseline. Same meaning as `fireforge build`'s flag of
|
|
699
|
-
* the same name. A scripted `test --build` is exactly the shape the
|
|
700
|
-
* multi-session hazard shows up in, so it must be able to arm the
|
|
701
|
-
* refusal too. Valid only with `--build`/`--build-only`.
|
|
702
|
-
*/
|
|
703
|
-
refuseUnexportedDrift?: boolean;
|
|
704
|
-
/**
|
|
705
|
-
* Which components the pre-test build deploys: `all` (default), `reached`
|
|
706
|
-
* (only those a requested test reaches) or `none`. `false` is
|
|
707
|
-
* `--no-furnace-apply`, the same as `none`. Valid only with
|
|
708
|
-
* `--build`/`--build-only`.
|
|
709
|
-
*/
|
|
710
|
-
furnaceApply?: boolean | 'all' | 'reached' | 'none';
|
|
711
|
-
/** Forward mach's pathless auto-selection mode. Valid only with no explicit paths. */
|
|
712
|
-
auto?: boolean;
|
|
713
|
-
/**
|
|
714
|
-
* Run a marionette preflight before tests. Reports PASS/FAIL in under a
|
|
715
|
-
* minute. When test paths are supplied, a FAIL aborts before mach test is
|
|
716
|
-
* spawned. When no paths are supplied, runs the preflight only and exits.
|
|
717
|
-
*/
|
|
718
|
-
doctor?: boolean;
|
|
719
|
-
/**
|
|
720
|
-
* Extra arguments forwarded verbatim to `mach test` (repeatable). Escape
|
|
721
|
-
* valve for upstream xpcshell/mochitest flags that FireForge does not
|
|
722
|
-
* model directly. Order relative to other flags is preserved, and
|
|
723
|
-
* passthrough values appear after `--headless` if both are set.
|
|
724
|
-
*/
|
|
725
|
-
machArg?: string[];
|
|
726
|
-
/**
|
|
727
|
-
* Override the Marionette control port (default 2828) used by the
|
|
728
|
-
* stale-browser probe, the `--doctor` preflight, and (unless mach args set
|
|
729
|
-
* `--flavor=xpcshell` / `xpcshell-tests`) auto-forwarded mach flags:
|
|
730
|
-
* `--setpref=marionette.port=<n>` for the browser listener and
|
|
731
|
-
* `--marionette=127.0.0.1:<n>` for the mochitest harness client. Omits the
|
|
732
|
-
* client flag when `--mach-arg` already passes `--marionette`. Set when a
|
|
733
|
-
* stale process holds the default port or CI uses another port.
|
|
734
|
-
*/
|
|
735
|
-
marionettePort?: number;
|
|
736
|
-
/** Kill a recognized stale browser process holding the Marionette port, then continue. */
|
|
737
|
-
killStaleMarionette?: boolean;
|
|
738
|
-
/**
|
|
739
|
-
* Terminate harness helper processes (`xpcshell` httpd, `pywebsocket`,
|
|
740
|
-
* `ssltunnel`, `moz-http2`) that survived an earlier run in this
|
|
741
|
-
* project's objdir. The census itself runs on every test dispatch and is
|
|
742
|
-
* report-only. This flag opts into the kill. Survivors slow later runs
|
|
743
|
-
* without appearing in their output, so the visibility is the default and
|
|
744
|
-
* the termination is the choice. `test.reapOrphans: "reap"` in
|
|
745
|
-
* `fireforge.json` makes it the repo's default.
|
|
746
|
-
*/
|
|
747
|
-
reapOrphans?: boolean;
|
|
748
|
-
/**
|
|
749
|
-
* Path to write the harness process-group id to, rewritten on every mach
|
|
750
|
-
* spawn (each retry attempt and shard) and removed when the run ends under
|
|
751
|
-
* FireForge's control. mach runs as its own process-group leader, so a
|
|
752
|
-
* supervisor's kill of its own group never reaches it; a supervisor that
|
|
753
|
-
* had to SIGKILL FireForge takes the whole harness tree afterwards with
|
|
754
|
-
* `kill -- -<pgid>`. The file survives exactly that case, by design.
|
|
755
|
-
*/
|
|
756
|
-
pgidFile?: string;
|
|
757
|
-
/** Permit tests against packageable engine edits newer than the last successful build. */
|
|
758
|
-
allowStaleBuild?: boolean;
|
|
759
|
-
/**
|
|
760
|
-
* Permit tests despite `components.conf` changes that only a full
|
|
761
|
-
* `fireforge build` compiles into the StaticComponents table. The
|
|
762
|
-
* packaged child process will resolve the old table. For operators who
|
|
763
|
-
* rebuilt out-of-band and accept the risk. Distinct from
|
|
764
|
-
* `allowStaleBuild`, which only accepts stale packaged content.
|
|
765
|
-
*/
|
|
766
|
-
allowStaleComponents?: boolean;
|
|
767
|
-
/** Run the configured short harness canary. `true` means use `fireforge.json`'s test.canaryPath. */
|
|
768
|
-
canary?: string | boolean;
|
|
769
|
-
/**
|
|
770
|
-
* Retry budget for recognized harness crashes (resource-monitor
|
|
771
|
-
* tracebacks, pre-test no-output hangs, post-green shutdown re-entry).
|
|
772
|
-
* 0 disables retries. Defaults to {@link DEFAULT_HARNESS_RETRIES} at the
|
|
773
|
-
* command layer.
|
|
774
|
-
*/
|
|
775
|
-
harnessRetries?: number;
|
|
776
|
-
/**
|
|
777
|
-
* Force dispatch through the generic `mach test` command instead of the
|
|
778
|
-
* suite-specific `mach xpcshell-test` / `mach mochitest` commands a
|
|
779
|
-
* single-suite run auto-selects. Escape hatch for the rare case where a
|
|
780
|
-
* suite-specific command misbehaves. On a healthy host the generic command
|
|
781
|
-
* is equivalent. The default (auto suite dispatch) skips the mozlog
|
|
782
|
-
* resource monitor that crashes `mach test` on a broken host.
|
|
783
|
-
*/
|
|
784
|
-
genericMachTest?: boolean;
|
|
785
|
-
/**
|
|
786
|
-
* Commander negation flag for `--no-shard`. When false, multiple test
|
|
787
|
-
* paths run in one combined mach invocation. By default they shard into
|
|
788
|
-
* sequential single-file harness runs with an aggregate report.
|
|
789
|
-
*/
|
|
790
|
-
shard?: boolean;
|
|
791
|
-
/**
|
|
792
|
-
* Project-relative (or absolute) artifact path published to the harness
|
|
793
|
-
* run as `<BINARYNAME>_PERF_SAMPLE_JSON`, for downstream perf-budget
|
|
794
|
-
* checkers that consume a sample artifact after the run.
|
|
795
|
-
*/
|
|
796
|
-
perfSamples?: string;
|
|
797
|
-
/**
|
|
798
|
-
* Seeded isolated path-argument order for mochitest runs. `true` draws a
|
|
799
|
-
* fresh seed; a number replays the shard permutation. Native mach
|
|
800
|
-
* `--shuffle` within a shard remains unseeded. Also exported as
|
|
801
|
-
* `FIREFORGE_SHUFFLE_SEED` for custom task code and recorded on the verdict.
|
|
802
|
-
*/
|
|
803
|
-
shuffle?: number | boolean;
|
|
804
|
-
/**
|
|
805
|
-
* Run the same selection this many times under one engine-lock hold (the
|
|
806
|
-
* pre-test build, when requested, runs once). Each run prints a
|
|
807
|
-
* `FIREFORGE-RUN:` line; the verdict aggregates them with `runs=<p>/<n>`.
|
|
808
|
-
*/
|
|
809
|
-
repeat?: number;
|
|
810
|
-
/**
|
|
811
|
-
* Project-relative path of a reviewed `git diff` against `engine/` or
|
|
812
|
-
* `components/` sources, applied after the pre-test build and before each
|
|
813
|
-
* dispatch, and restored byte-exact before the lock is released. The
|
|
814
|
-
* verdict carries `control=caught|missed|inconclusive`. See
|
|
815
|
-
* `src/core/negative-control.ts`.
|
|
816
|
-
*/
|
|
817
|
-
negativeControl?: string;
|
|
818
|
-
/**
|
|
819
|
-
* Let a browser run proceed when the mochitest server or Marionette port
|
|
820
|
-
* is held by something that is not this checkout's own, relying on the
|
|
821
|
-
* engine harness's busy-port fallback. Same as `test.mochitestPorts: "auto"`.
|
|
822
|
-
*/
|
|
823
|
-
autoPorts?: boolean;
|
|
824
|
-
/**
|
|
825
|
-
* Hold the engine session lock shared for a build-less run with auto
|
|
826
|
-
* ports, so peers' build-less runs overlap. Same as `test.lockMode: "shared"`.
|
|
827
|
-
*/
|
|
828
|
-
sharedLock?: boolean;
|
|
829
|
-
/** Run shards on this many harness instances at once (requires auto ports). */
|
|
830
|
-
jobs?: number;
|
|
831
|
-
/** Dispatch n files per mach invocation, judged per file from the raw log. */
|
|
832
|
-
shardSize?: number;
|
|
833
|
-
/** Write per-file results (mozlog raw log) as JSON to this path. */
|
|
834
|
-
results?: string;
|
|
835
|
-
}
|
|
836
|
-
/**
|
|
837
|
-
* Options for the furnace apply command.
|
|
838
|
-
*/
|
|
839
|
-
export interface FurnaceApplyOptions extends DryRunnable {
|
|
840
|
-
/** Proceed despite baseVersion drift (stale overrides) */
|
|
841
|
-
force?: boolean;
|
|
842
|
-
/** Watch component directories and re-apply on changes */
|
|
843
|
-
watch?: boolean;
|
|
844
|
-
/**
|
|
845
|
-
* Resolved `--wait-lock` budget in seconds, or undefined for the default.
|
|
846
|
-
* Threaded to the furnace lock `runFurnaceMutation` takes INSIDE the
|
|
847
|
-
* engine session lock, so one flag governs both.
|
|
848
|
-
*/
|
|
849
|
-
waitLockSeconds?: number;
|
|
850
|
-
}
|
|
851
|
-
/**
|
|
852
|
-
* `--wait-lock` budget for a furnace command that takes only Furnace's own
|
|
853
|
-
* lock (`.fireforge/furnace.lock`, via `runFurnaceMutation`): `create`,
|
|
854
|
-
* `remove`, `rename`, `refresh`, `scan`, `override`, `preview` and the
|
|
855
|
-
* `chrome-doc` pair. Without it the flag was accepted and ignored on those
|
|
856
|
-
* commands, so their lock budget came only from `FIREFORGE_WAIT_LOCK`.
|
|
857
|
-
*/
|
|
858
|
-
export interface FurnaceLockWaitable {
|
|
859
|
-
/**
|
|
860
|
-
* Resolved `--wait-lock` budget in seconds, or undefined for the default
|
|
861
|
-
* (`FIREFORGE_WAIT_LOCK`, else the furnace lock's own 30 s).
|
|
862
|
-
*/
|
|
863
|
-
waitLockSeconds?: number;
|
|
864
|
-
}
|
|
865
|
-
/**
|
|
866
|
-
* Options for the furnace preview command.
|
|
867
|
-
*/
|
|
868
|
-
export interface FurnacePreviewOptions extends FurnaceLockWaitable {
|
|
869
|
-
/** Force reinstall Storybook dependencies */
|
|
870
|
-
install?: boolean;
|
|
871
|
-
}
|
|
872
|
-
/**
|
|
873
|
-
* Options for the furnace deploy command.
|
|
874
|
-
*/
|
|
875
|
-
export interface FurnaceDeployOptions extends DryRunnable {
|
|
876
|
-
/** Proceed despite baseVersion drift (stale overrides) */
|
|
877
|
-
force?: boolean;
|
|
878
|
-
/** Skip the validation step (apply only, no accessibility/compatibility checks) */
|
|
879
|
-
skipValidate?: boolean;
|
|
880
|
-
/**
|
|
881
|
-
* Resolved `--wait-lock` budget in seconds, or undefined for the default.
|
|
882
|
-
* Threaded to the furnace lock `runFurnaceMutation` takes INSIDE the
|
|
883
|
-
* engine session lock, so one flag governs both.
|
|
884
|
-
*/
|
|
885
|
-
waitLockSeconds?: number;
|
|
886
|
-
}
|
|
887
|
-
/**
|
|
888
|
-
* Options for the furnace refresh command.
|
|
889
|
-
*/
|
|
890
|
-
export interface FurnaceRefreshOptions extends DryRunnable, FurnaceLockWaitable {
|
|
891
|
-
/** Refresh all overrides in a single batch */
|
|
892
|
-
all?: boolean;
|
|
893
|
-
/** Conflict resolution strategy for automated use (ours = keep local, theirs = accept upstream) */
|
|
894
|
-
strategy?: 'ours' | 'theirs';
|
|
895
|
-
/** Reset the override's baseline to the current engine HEAD, skipping three-way merge */
|
|
896
|
-
resetBase?: boolean;
|
|
897
|
-
}
|
|
898
|
-
/**
|
|
899
|
-
* Options for the furnace rename command.
|
|
900
|
-
*/
|
|
901
|
-
export interface FurnaceRenameOptions extends DryRunnable, FurnaceLockWaitable {
|
|
902
|
-
}
|
|
903
|
-
/**
|
|
904
|
-
* Options for the furnace sync command.
|
|
905
|
-
*/
|
|
906
|
-
export interface FurnaceSyncOptions extends DryRunnable {
|
|
907
|
-
/** Conflict resolution strategy for three-way merge (ours = keep local, theirs = accept upstream) */
|
|
908
|
-
strategy?: 'ours' | 'theirs';
|
|
909
|
-
/**
|
|
910
|
-
* Resolved `--wait-lock` budget in seconds, or undefined for the default.
|
|
911
|
-
* Threaded to the furnace lock `runFurnaceMutation` takes INSIDE the
|
|
912
|
-
* engine session lock, so one flag governs both.
|
|
913
|
-
*/
|
|
914
|
-
waitLockSeconds?: number;
|
|
915
|
-
}
|
|
916
|
-
/**
|
|
917
|
-
* Options for the furnace validate command.
|
|
918
|
-
*/
|
|
919
|
-
export interface FurnaceValidateOptions {
|
|
920
|
-
/** Auto-fix registration issues (missing jar.mn entries, customElements.js registration) */
|
|
921
|
-
fix?: boolean;
|
|
922
|
-
/** Write one schemaVersion-1 JSON document to stdout instead of the human report. */
|
|
923
|
-
json?: boolean;
|
|
924
|
-
/** Fail when more than this many warnings remain after `validationExceptions`. */
|
|
925
|
-
maxWarnings?: number;
|
|
926
|
-
}
|
|
927
|
-
/**
|
|
928
|
-
* Options for the furnace override command.
|
|
929
|
-
*/
|
|
930
|
-
export interface FurnaceOverrideOptions extends FurnaceLockWaitable {
|
|
931
|
-
/** Override type: css-only or full */
|
|
932
|
-
type?: 'css-only' | 'full';
|
|
933
|
-
/** Description of the override */
|
|
934
|
-
description?: string;
|
|
935
|
-
}
|
|
936
|
-
/**
|
|
937
|
-
* Options for the furnace remove command: the confirmation mixin plus the
|
|
938
|
-
* furnace lock budget.
|
|
939
|
-
*/
|
|
940
|
-
export interface FurnaceRemoveOptions extends Confirmable, FurnaceLockWaitable {
|
|
941
|
-
}
|
|
942
|
-
/**
|
|
943
|
-
* Options for the furnace create command.
|
|
944
|
-
*/
|
|
945
|
-
export interface FurnaceCreateOptions extends FurnaceLockWaitable {
|
|
946
|
-
/** Component description */
|
|
947
|
-
description?: string;
|
|
948
|
-
/**
|
|
949
|
-
* Engine-relative directory the test scaffold writes into, instead of
|
|
950
|
-
* the default `browser/base/content/test/<binaryName>/` (browser-chrome)
|
|
951
|
-
* or `browser/base/content/test/<binaryName>-xpcshell/<component>/`
|
|
952
|
-
* (xpcshell). Must stay under `browser/base/content/test/` so the
|
|
953
|
-
* manifest registration keeps working. Not supported for
|
|
954
|
-
* `--test-style=mochikit` (that harness lives in the upstream
|
|
955
|
-
* toolkit/content/tests/widgets tree).
|
|
956
|
-
*/
|
|
957
|
-
testDir?: string;
|
|
958
|
-
/** Include Fluent l10n support */
|
|
959
|
-
localized?: boolean;
|
|
960
|
-
/** Register in customElements.js (default: true) */
|
|
961
|
-
register?: boolean;
|
|
962
|
-
/** Scaffold Mochitest directory and register in moz.build */
|
|
963
|
-
withTests?: boolean;
|
|
964
|
-
/**
|
|
965
|
-
* Scaffold an xpcshell test harness (headless, no tabbrowser) instead of
|
|
966
|
-
* browser-chrome. Required for forks without a `tabbrowser` (storage-only
|
|
967
|
-
* code, observer-driven modules). Implies `withTests` when set. Writes an
|
|
968
|
-
* `xpcshell.toml` + `test_<name>.js` under
|
|
969
|
-
* `engine/browser/base/content/test/<binary-name>-xpcshell/` and leaves
|
|
970
|
-
* moz.build registration to the operator (add the directory to
|
|
971
|
-
* `XPCSHELL_TESTS_MANIFESTS`).
|
|
972
|
-
*/
|
|
973
|
-
xpcshell?: boolean;
|
|
974
|
-
/**
|
|
975
|
-
* Test harness style to scaffold when `--with-tests` is set.
|
|
976
|
-
*
|
|
977
|
-
* - `browser-chrome` (default when `--with-tests` is set without
|
|
978
|
-
* `--test-style`): browser mochitest scaffold. Requires a working
|
|
979
|
-
* `tabbrowser`. Prefer this for interactive chrome/widget coverage
|
|
980
|
-
* (including on macOS).
|
|
981
|
-
* - `mochikit`: opt-in MochiKit test at
|
|
982
|
-
* `engine/toolkit/content/tests/widgets/test_<tag>.html` that loads
|
|
983
|
-
* the component via `chrome://global/`. Use when the top-level chrome
|
|
984
|
-
* document lacks a `tabbrowser`. On macOS the toolkit mochitest-chrome
|
|
985
|
-
* flavor can be unreliable (long idle timeout).
|
|
986
|
-
* - `xpcshell`: equivalent to setting `--xpcshell`. Headless, storage-only.
|
|
987
|
-
*/
|
|
988
|
-
testStyle?: 'mochikit' | 'browser-chrome' | 'xpcshell';
|
|
989
|
-
/** Stock component tag names composed internally by this component */
|
|
990
|
-
compose?: string[];
|
|
991
|
-
/**
|
|
992
|
-
* Participate in a pre-existing feature-scoped Fluent bundle at this
|
|
993
|
-
* path (as used by `insertFTLIfNeeded`, e.g. `browser/mybrowser-dock.ftl`)
|
|
994
|
-
* instead of scaffolding a per-component `.ftl`. Implies `localized`.
|
|
995
|
-
* Persists onto the furnace.json entry so validation and apply skip the
|
|
996
|
-
* per-component paths.
|
|
997
|
-
*/
|
|
998
|
-
sharedFtl?: string;
|
|
999
|
-
/**
|
|
1000
|
-
* Show the planned file set and furnace.json changes without writing
|
|
1001
|
-
* anything. All validation that does not require disk writes (tag name
|
|
1002
|
-
* shape, name conflicts, engine pre-existence, `--compose` targets, cycle
|
|
1003
|
-
* detection, prefix warning) runs before the plan is emitted, so a
|
|
1004
|
-
* dry-run faithfully previews the real command's outcome.
|
|
1005
|
-
*/
|
|
1006
|
-
dryRun?: boolean;
|
|
1007
|
-
/**
|
|
1008
|
-
* Bypass the configured `componentPrefix` check for the supplied name.
|
|
1009
|
-
* Without this flag, a name that does not start with the prefix is
|
|
1010
|
-
* rejected before any files are written, so a prefix-mismatched
|
|
1011
|
-
* component cannot leave behind a half-scaffolded state. Pass this
|
|
1012
|
-
* flag only when you know the prefix mismatch is intentional, e.g.
|
|
1013
|
-
* creating an experimental component whose name intentionally breaks
|
|
1014
|
-
* the fork's convention.
|
|
1015
|
-
*/
|
|
1016
|
-
allowPrefixMismatch?: boolean;
|
|
1017
|
-
}
|
|
1018
|
-
/**
|
|
1019
|
-
* Options for the wire command.
|
|
1020
|
-
*/
|
|
1021
|
-
export interface WireOptions {
|
|
1022
|
-
init?: string;
|
|
1023
|
-
destroy?: string;
|
|
1024
|
-
dom?: string;
|
|
1025
|
-
dryRun?: boolean;
|
|
1026
|
-
after?: string;
|
|
1027
|
-
subscriptDir?: string;
|
|
1028
|
-
/**
|
|
1029
|
-
* Chrome document the DOM fragment's `#include` is inserted into, relative
|
|
1030
|
-
* to engine/. Defaults to the first entry of
|
|
1031
|
-
* `furnace.json.tokenHostDocuments` when set, otherwise
|
|
1032
|
-
* `browser/base/content/browser.xhtml`.
|
|
1033
|
-
*/
|
|
1034
|
-
target?: string;
|
|
1035
|
-
}
|
|
1036
|
-
/**
|
|
1037
|
-
* Options for the register command.
|
|
1038
|
-
*/
|
|
1039
|
-
export interface RegisterOptions {
|
|
1040
|
-
dryRun?: boolean;
|
|
1041
|
-
after?: string;
|
|
1042
|
-
/** Scaffold a missing manifest (moz.build / xpcshell.toml) and wire the parent chain. */
|
|
1043
|
-
createManifest?: boolean;
|
|
1044
|
-
}
|
|
1045
|
-
/**
|
|
1046
|
-
* Options for the patch delete command.
|
|
1047
|
-
*/
|
|
1048
|
-
export interface PatchDeleteOptions extends Confirmable, DryRunnable, PatchLockWaitable {
|
|
1049
|
-
/** Bypass the hard refusal when later patches depend on the target. */
|
|
1050
|
-
forceUnsafe?: boolean;
|
|
1051
|
-
/** Also delete the engine files the patch creates that are still on disk. */
|
|
1052
|
-
deleteCreated?: boolean;
|
|
1053
|
-
}
|
|
1054
|
-
/**
|
|
1055
|
-
* Options for the `fireforge patch retire` subcommand: `patch delete` that
|
|
1056
|
-
* keeps the removed patch's order as a retired slot in `patches.json`.
|
|
1057
|
-
*/
|
|
1058
|
-
export interface PatchRetireOptions extends PatchDeleteOptions {
|
|
1059
|
-
/** Optional human-readable rationale stored on the retired slot. */
|
|
1060
|
-
reason?: string;
|
|
1061
|
-
}
|
|
1062
|
-
/**
|
|
1063
|
-
* Options for the `fireforge patch stage` subcommand: stage the named
|
|
1064
|
-
* patches' files and only their `patches.json` rows in the project index.
|
|
1065
|
-
*/
|
|
1066
|
-
export type PatchStageOptions = DryRunnable & PatchLockWaitable;
|
|
1067
|
-
/**
|
|
1068
|
-
* Options for the `fireforge patch reserve` subcommand: hold an order
|
|
1069
|
-
* number for a patch not exported yet, or release the hold.
|
|
1070
|
-
*/
|
|
1071
|
-
export interface PatchReserveOptions extends DryRunnable, PatchLockWaitable {
|
|
1072
|
-
/** Category the reserved patch will carry (required to reserve). */
|
|
1073
|
-
category?: string;
|
|
1074
|
-
/** Who holds the reservation (required to reserve). */
|
|
1075
|
-
owner?: string;
|
|
1076
|
-
/** Optional human-readable rationale stored on the reserved slot. */
|
|
1077
|
-
reason?: string;
|
|
1078
|
-
/** Release the reservation at the order instead of creating one. */
|
|
1079
|
-
release?: boolean;
|
|
1080
|
-
}
|
|
1081
|
-
/**
|
|
1082
|
-
* Options for the `fireforge patch rename` subcommand. Updates the patch's
|
|
1083
|
-
* filename, manifest `name`, and (optionally) `description` atomically
|
|
1084
|
-
* without rewriting the `.patch` file body. Companion to `re-export --files`
|
|
1085
|
-
* for the case where the body is already correct but the patch's identity
|
|
1086
|
-
* describes a pre-shrink scope.
|
|
1087
|
-
*/
|
|
1088
|
-
export interface PatchRenameOptions extends Confirmable, DryRunnable, PatchLockWaitable, UnsafeOverridable {
|
|
1089
|
-
/**
|
|
1090
|
-
* New human-readable name. Sanitised the same way `export --name`
|
|
1091
|
-
* sanitises into the filename slug (lowercase, non-alphanumerics
|
|
1092
|
-
* collapsed to `-`, length-capped). The patch's `name` field stores
|
|
1093
|
-
* the raw value. The filename uses the sanitised slug. Optional when
|
|
1094
|
-
* `--category`/`--order`/`--description` carry the change.
|
|
1095
|
-
*/
|
|
1096
|
-
to?: string;
|
|
1097
|
-
/**
|
|
1098
|
-
* New category (validated against configured categories). Rewrites
|
|
1099
|
-
* the filename prefix and the manifest row in one transaction, so
|
|
1100
|
-
* recategorising does not require `patch delete` + fresh export.
|
|
1101
|
-
*/
|
|
1102
|
-
category?: string;
|
|
1103
|
-
/**
|
|
1104
|
-
* Move the patch to this exact unused sparse order. Collisions refuse
|
|
1105
|
-
* with a pointer to `patch reorder` (which renumbers siblings). An
|
|
1106
|
-
* order change is projected through cross-patch lint first.
|
|
1107
|
-
*/
|
|
1108
|
-
order?: number;
|
|
1109
|
-
/**
|
|
1110
|
-
* Replacement description. Omit to leave the description unchanged
|
|
1111
|
-
* (intentional: operators frequently want to relabel the slug
|
|
1112
|
-
* without touching the description).
|
|
1113
|
-
*/
|
|
1114
|
-
description?: string;
|
|
1115
|
-
}
|
|
1116
|
-
/**
|
|
1117
|
-
* Options for the patch reorder command.
|
|
1118
|
-
*/
|
|
1119
|
-
export interface PatchReorderOptions extends PatchLockWaitable {
|
|
1120
|
-
to?: number;
|
|
1121
|
-
before?: string;
|
|
1122
|
-
after?: string;
|
|
1123
|
-
/**
|
|
1124
|
-
* Shift a run of patches up by this many orders (`--shift <n> --from
|
|
1125
|
-
* <order> [--through <order>]`) instead of moving one patch.
|
|
1126
|
-
*/
|
|
1127
|
-
shift?: number;
|
|
1128
|
-
/** First order of the run `shift` moves. */
|
|
1129
|
-
from?: number;
|
|
1130
|
-
/** Last order of the run `shift` moves (default: the end of the run). */
|
|
1131
|
-
through?: number;
|
|
1132
|
-
/** Write the committed old-to-new filename map here as JSON. */
|
|
1133
|
-
mapOut?: string;
|
|
1134
|
-
yes?: boolean;
|
|
1135
|
-
dryRun?: boolean;
|
|
1136
|
-
forceUnsafe?: boolean;
|
|
1137
|
-
}
|
|
1138
|
-
/**
|
|
1139
|
-
* Options for the patch compact command.
|
|
1140
|
-
*/
|
|
1141
|
-
export interface PatchCompactOptions extends Confirmable, DryRunnable, PatchLockWaitable, UnsafeOverridable {
|
|
1142
|
-
}
|
|
1143
|
-
/**
|
|
1144
|
-
* Options for the status command.
|
|
1145
|
-
*/
|
|
1146
|
-
export interface StatusOptions {
|
|
1147
|
-
raw?: boolean;
|
|
1148
|
-
/**
|
|
1149
|
-
* Report the engine-session lock instead of file status:
|
|
1150
|
-
* holder pid, the command it is running, how long it has held the lock,
|
|
1151
|
-
* and how many waiters are queued behind it. Read-only: it never
|
|
1152
|
-
* acquires the lock, so it is safe to run while a build or test holds
|
|
1153
|
-
* it, which is when an operator usually asks.
|
|
1154
|
-
*/
|
|
1155
|
-
lock?: boolean;
|
|
1156
|
-
unmanaged?: boolean;
|
|
1157
|
-
/**
|
|
1158
|
-
* Render a flat file→owning-patch ownership table instead of the three-
|
|
1159
|
-
* bucket classification. Sources the path list from the manifest's
|
|
1160
|
-
* `filesAffected` per patch and flags any path claimed by more than one
|
|
1161
|
-
* patch as an ownership conflict.
|
|
1162
|
-
*/
|
|
1163
|
-
ownership?: boolean;
|
|
1164
|
-
/**
|
|
1165
|
-
* Print the recorded test-packaging coverage of the last build baseline
|
|
1166
|
-
* (scope, timestamp, recording invocation) and exit. Read-only, and the
|
|
1167
|
-
* counterpart to the out-of-coverage test refusal.
|
|
1168
|
-
*/
|
|
1169
|
-
testCoverage?: boolean;
|
|
1170
|
-
/** Output machine-readable JSON instead of human-readable text. */
|
|
1171
|
-
json?: boolean;
|
|
1172
|
-
/**
|
|
1173
|
-
* With `--json`: emit only the summary counts (plus the offending
|
|
1174
|
-
* files per fail-set classification when the `--check`/`--fail-on`
|
|
1175
|
-
* policy is active), omitting the per-file `files[]` payload that
|
|
1176
|
-
* grows with the queue. Refused without `--json`.
|
|
1177
|
-
*/
|
|
1178
|
-
summary?: boolean;
|
|
1179
|
-
/**
|
|
1180
|
-
* With `--json` (and composing with `--summary`), append an additive
|
|
1181
|
-
* `ownership` block (the flat path→owning-patch rows plus
|
|
1182
|
-
* managed/unmanaged/conflict counts) so a gate reads ownership,
|
|
1183
|
-
* classification, and the check verdict from one scan instead of three
|
|
1184
|
-
* back-to-back `status` invocations. This is a modifier rather than a
|
|
1185
|
-
* mode: exit semantics are unchanged, so ownership conflicts still fail
|
|
1186
|
-
* only the human `--ownership` mode. Refused without `--json`.
|
|
1187
|
-
*/
|
|
1188
|
-
includeOwnership?: boolean;
|
|
1189
|
-
/**
|
|
1190
|
-
* Exit non-zero when any classification in the fail policy is
|
|
1191
|
-
* non-empty (default policy: unmanaged, patch-owned-drift, conflict).
|
|
1192
|
-
* Composes with the default view and `--json`. Refused alongside
|
|
1193
|
-
* `--raw`/`--unmanaged`/`--ownership`/`--test-coverage`.
|
|
1194
|
-
*/
|
|
1195
|
-
check?: boolean;
|
|
1196
|
-
/**
|
|
1197
|
-
* Comma-separated classification list replacing the default `--check`
|
|
1198
|
-
* policy. Implies `--check`. Unknown values refuse, naming the valid
|
|
1199
|
-
* classification set. `ownership-conflict` (a path claimed by more than
|
|
1200
|
-
* one patch) is accepted beside the file classifications.
|
|
1201
|
-
*/
|
|
1202
|
-
failOn?: string;
|
|
1203
|
-
/**
|
|
1204
|
-
* Comma-separated classification list that never fails `--check`,
|
|
1205
|
-
* removed from the fail set. Implies `--check`. Naming a class in both
|
|
1206
|
-
* `failOn` and `allow` refuses.
|
|
1207
|
-
*/
|
|
1208
|
-
allow?: string;
|
|
1209
|
-
/**
|
|
1210
|
-
* With `allow`: fail on every present classification that neither
|
|
1211
|
-
* `failOn` nor `allow` names, so a classification added by a later
|
|
1212
|
-
* FireForge fails closed. Implies `--check`.
|
|
1213
|
-
*/
|
|
1214
|
-
failOnUnknown?: boolean;
|
|
1215
|
-
/**
|
|
1216
|
-
* Judge only these patches (`--patches`, each value may be a comma
|
|
1217
|
-
* list): files they own or claim and ownership rows naming them.
|
|
1218
|
-
*/
|
|
1219
|
-
patches?: string[];
|
|
1220
|
-
}
|
|
1221
|
-
/**
|
|
1222
|
-
* Options for the token add command.
|
|
1223
|
-
*/
|
|
1224
|
-
export interface TokenAddOptions {
|
|
1225
|
-
/**
|
|
1226
|
-
* Required for a base declaration. Optional under
|
|
1227
|
-
* {@link TokenAddOptions.variant}, which routes into a `:root<selector>`
|
|
1228
|
-
* block where no category applies.
|
|
1229
|
-
*/
|
|
1230
|
-
category?: string;
|
|
1231
|
-
mode: string;
|
|
1232
|
-
description?: string;
|
|
1233
|
-
darkValue?: string;
|
|
1234
|
-
dryRun?: boolean;
|
|
1235
|
-
/** Declare the category banner in the tokens CSS when it does not exist yet. */
|
|
1236
|
-
createCategory?: boolean;
|
|
1237
|
-
/**
|
|
1238
|
-
* Attribute selector fragment (e.g. `[data-skin=precision]` or
|
|
1239
|
-
* `[data-private]`) routing the declaration into a `:root<variant>` block.
|
|
1240
|
-
*/
|
|
1241
|
-
variant?: string;
|
|
1242
|
-
}
|
|
1243
|
-
/**
|
|
1244
|
-
* Options for the doctor command.
|
|
1245
|
-
*/
|
|
1246
|
-
export interface DoctorOptions {
|
|
1247
|
-
/**
|
|
1248
|
-
* Seconds to wait for the patch directory lock. This command can mutate
|
|
1249
|
-
* the patch manifest under that lock.
|
|
1250
|
-
*/
|
|
1251
|
-
waitLock?: number | boolean;
|
|
1252
|
-
/**
|
|
1253
|
-
* Rebuild patches.json from the on-disk patch files, preserving every
|
|
1254
|
-
* field the patch bodies cannot express. Refused when patches.json exists
|
|
1255
|
-
* but cannot be parsed, unless `allowMetadataLoss` is also set.
|
|
1256
|
-
*/
|
|
1257
|
-
repairPatchesManifest?: boolean;
|
|
1258
|
-
/**
|
|
1259
|
-
* Repair only the `filesAffected` lists that disagree with their patch
|
|
1260
|
-
* body. Narrower than `repairPatchesManifest`: it rewrites one field on the
|
|
1261
|
-
* drifted rows and leaves every other row byte-identical, and it needs no
|
|
1262
|
-
* project config, so it works on a project whose fireforge.json is broken.
|
|
1263
|
-
*/
|
|
1264
|
-
repairFilesAffected?: boolean;
|
|
1265
|
-
/**
|
|
1266
|
-
* Accept the whole-manifest metadata reinvention that rebuilding an
|
|
1267
|
-
* unparseable patches.json implies. Only meaningful with
|
|
1268
|
-
* `repairPatchesManifest`.
|
|
1269
|
-
*/
|
|
1270
|
-
allowMetadataLoss?: boolean;
|
|
1271
|
-
/**
|
|
1272
|
-
* Project what a requested repair would change and write nothing. Refused
|
|
1273
|
-
* without a repair flag rather than accepted as a silent no-op.
|
|
1274
|
-
*/
|
|
1275
|
-
dryRun?: boolean;
|
|
1276
|
-
/**
|
|
1277
|
-
* Clear a stale `pendingResolution` marker, but only after the same
|
|
1278
|
-
* read-only queue health checks used by `fireforge verify` report no
|
|
1279
|
-
* error-severity findings.
|
|
1280
|
-
*/
|
|
1281
|
-
clearResolution?: boolean;
|
|
1282
|
-
/**
|
|
1283
|
-
* Opt-in repair path for furnace-specific checks. When true, doctor will:
|
|
1284
|
-
* - clear stale `.fireforge/furnace-state.json` entries whose component is
|
|
1285
|
-
* no longer in `furnace.json`,
|
|
1286
|
-
* - run `applyAllComponents` to reconcile any engine drift,
|
|
1287
|
-
* - clear the `pendingRepair` marker on success.
|
|
1288
|
-
* Mirrors `repairPatchesManifest` in that the repair is only attempted when
|
|
1289
|
-
* the caller explicitly asks for it, so a read-only `doctor` run stays cheap
|
|
1290
|
-
* and side-effect-free.
|
|
1291
|
-
*/
|
|
1292
|
-
repairFurnace?: boolean;
|
|
1293
|
-
/** Run extra post-rebase checks for common Firefox registration surfaces. */
|
|
1294
|
-
postRebaseAudit?: boolean;
|
|
1295
|
-
}
|
|
1296
|
-
/** Options controlling how the lint command filters and tags its output. */
|
|
1297
|
-
export interface LintCommandOptions {
|
|
1298
|
-
/**
|
|
1299
|
-
* When set, tag each issue as `introduced` or `cumulative` based on
|
|
1300
|
-
* whether its file changed since this git revision (e.g. `HEAD`, a
|
|
1301
|
-
* branch name, or a SHA). Issues are not filtered and the full set
|
|
1302
|
-
* still prints, but a diff-scoped summary makes it easy to see which
|
|
1303
|
-
* errors the current task introduced.
|
|
1304
|
-
*/
|
|
1305
|
-
since?: string;
|
|
1306
|
-
/**
|
|
1307
|
-
* When set together with {@link since}, scope the exit code to issues
|
|
1308
|
-
* tagged `introduced`. Cumulative pre-existing errors still print, so the
|
|
1309
|
-
* operator sees the full queue state, but do not fail lint. This is for a
|
|
1310
|
-
* branch whose own diff is clean but whose repo carries unrelated
|
|
1311
|
-
* `raw-color` / license-header errors from older patches.
|
|
1312
|
-
*
|
|
1313
|
-
* Requires {@link since}: without a revision to diff against there is no
|
|
1314
|
-
* distinction between introduced and cumulative, so the flag is rejected
|
|
1315
|
-
* up-front rather than silently ignored.
|
|
1316
|
-
*/
|
|
1317
|
-
onlyIntroduced?: boolean;
|
|
1318
|
-
/**
|
|
1319
|
-
* Lint each patch in the queue as its own isolated diff, rather than the
|
|
1320
|
-
* aggregate `git diff HEAD` across all applied patches.
|
|
1321
|
-
*
|
|
1322
|
-
* On a repo where `import` or `rebase` has just applied the full queue,
|
|
1323
|
-
* the aggregate diff sums every patch's changes, and the patch-size
|
|
1324
|
-
* advisory rules (`large-patch-lines`, `large-patch-files`) fire against
|
|
1325
|
-
* that sum, reporting "Patch is 37529 lines" for a queue of
|
|
1326
|
-
* individually-fine patches. `--per-patch` rescopes the diff to each patch's own
|
|
1327
|
-
* `filesAffected`, honours the patch's own `lintIgnore`, and runs the
|
|
1328
|
-
* cross-patch rules once over the whole queue so queue-level findings
|
|
1329
|
-
* still surface.
|
|
1330
|
-
*
|
|
1331
|
-
* Positional file arguments change meaning under this flag: they are PATCH
|
|
1332
|
-
* selectors resolved like {@link patches} entries, not engine file paths.
|
|
1333
|
-
*/
|
|
1334
|
-
perPatch?: boolean;
|
|
1335
|
-
/**
|
|
1336
|
-
* Restrict `--per-patch` to a named subset of the queue (by filename,
|
|
1337
|
-
* filename ± `.patch`, or manifest `name`). Lets a change that touches a
|
|
1338
|
-
* handful of patches run the per-patch gate over just those instead of
|
|
1339
|
-
* the full ~90-patch queue. Only valid with {@link perPatch}. Queue-level
|
|
1340
|
-
* findings (policy, cross-patch) are scoped to files the subset touches.
|
|
1341
|
-
*/
|
|
1342
|
-
patches?: string[];
|
|
1343
|
-
/**
|
|
1344
|
-
* Maximum warning count tolerated before lint exits non-zero. Mirrors
|
|
1345
|
-
* ESLint's `--max-warnings` shape for release gates that want advisory
|
|
1346
|
-
* findings to become blocking without changing default CLI behavior.
|
|
1347
|
-
*/
|
|
1348
|
-
maxWarnings?: number;
|
|
1349
|
-
/**
|
|
1350
|
-
* Bypass per-patch lint cache reads and writes. Accepted in aggregate mode
|
|
1351
|
-
* for CLI consistency, but only `--per-patch` currently uses the cache.
|
|
1352
|
-
*/
|
|
1353
|
-
noCache?: boolean;
|
|
1354
|
-
/**
|
|
1355
|
-
* With `--per-patch`, write a machine-readable JSON report (schemaVersion
|
|
1356
|
-
* 1: per-patch lineCount, filesAffected, tier, thresholds, issues, and
|
|
1357
|
-
* lintIgnore-suppressed issues) to this path. Requires
|
|
1358
|
-
* {@link perPatch}.
|
|
1359
|
-
*/
|
|
1360
|
-
report?: string;
|
|
1361
|
-
/**
|
|
1362
|
-
* With `--per-patch`: `'full'` (default) prints every NOTICE line;
|
|
1363
|
-
* `'summary'` prints one line per check with its count and patch count.
|
|
1364
|
-
* Errors and warnings always print in full.
|
|
1365
|
-
*/
|
|
1366
|
-
notices?: 'summary' | 'full';
|
|
1367
|
-
}
|