@hominis/fireforge 0.55.0 → 0.60.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +233 -6
- package/README.md +51 -17
- package/dist/bin/fireforge.js +34 -129
- package/dist/build-info.json +4 -4
- package/dist/src/check/check.js +394 -0
- package/dist/src/check/gate.js +448 -0
- package/dist/src/check/index.js +10 -0
- package/dist/src/check/record.js +155 -0
- package/dist/src/cli/command.js +286 -0
- package/dist/src/cli/output.js +96 -0
- package/dist/src/cli/program.js +231 -0
- package/dist/src/cli/stdio.js +59 -0
- package/dist/src/cli/version.js +99 -0
- package/dist/src/commands/bootstrap.js +17 -102
- package/dist/src/commands/build.js +34 -456
- package/dist/src/commands/check.js +44 -157
- package/dist/src/commands/config.js +50 -226
- package/dist/src/commands/discard.js +38 -215
- package/dist/src/commands/doctor.js +29 -456
- package/dist/src/commands/download.js +35 -499
- package/dist/src/commands/export.js +42 -431
- package/dist/src/commands/furnace.js +220 -0
- package/dist/src/commands/gate.js +127 -0
- package/dist/src/commands/import.js +44 -445
- package/dist/src/commands/index.js +86 -0
- package/dist/src/commands/lint.js +44 -546
- package/dist/src/commands/merge-driver.js +56 -0
- package/dist/src/commands/migrate.js +75 -0
- package/dist/src/commands/override.js +43 -0
- package/dist/src/commands/package.js +48 -77
- package/dist/src/commands/patch.js +221 -0
- package/dist/src/commands/re-export.js +55 -359
- package/dist/src/commands/rebase.js +69 -0
- package/dist/src/commands/register.js +62 -103
- package/dist/src/commands/reset.js +28 -91
- package/dist/src/commands/resolve.js +20 -167
- package/dist/src/commands/restore.js +19 -0
- package/dist/src/commands/run.js +60 -382
- package/dist/src/commands/setup.js +78 -90
- package/dist/src/commands/status.js +44 -413
- package/dist/src/commands/test.js +97 -423
- package/dist/src/commands/token.js +185 -228
- package/dist/src/commands/typecheck.js +59 -241
- package/dist/src/commands/verify.js +28 -334
- package/dist/src/commands/version.js +14 -0
- package/dist/src/commands/watch.js +20 -218
- package/dist/src/commands/wire.js +60 -349
- package/dist/src/commands/workspace.js +117 -0
- package/dist/src/config/edit.js +237 -0
- package/dist/src/config/index.js +15 -0
- package/dist/src/config/load.js +59 -0
- package/dist/src/config/previous.js +404 -0
- package/dist/src/config/schema/build.js +63 -0
- package/dist/src/config/schema/check.js +113 -0
- package/dist/src/config/schema/common.js +71 -0
- package/dist/src/config/schema/export-queue.js +36 -0
- package/dist/src/config/schema/firefox.js +69 -0
- package/dist/src/config/schema/gate.js +199 -0
- package/dist/src/config/schema/identity.js +55 -0
- package/dist/src/config/schema/index.js +45 -0
- package/dist/src/config/schema/lint.js +297 -0
- package/dist/src/config/schema/policy.js +111 -0
- package/dist/src/config/schema/source.js +90 -0
- package/dist/src/config/schema/test.js +17 -0
- package/dist/src/config/schema/toolchains.js +17 -0
- package/dist/src/config/schema/typecheck.js +29 -0
- package/dist/src/config/schema/wire.js +15 -0
- package/dist/src/diff/apply.js +129 -0
- package/dist/src/diff/index.js +16 -0
- package/dist/src/diff/model.js +267 -0
- package/dist/src/diff/query.js +65 -0
- package/dist/src/doctor/index.js +240 -0
- package/dist/src/engine/archive.js +396 -0
- package/dist/src/engine/audit.js +66 -0
- package/dist/src/engine/build.js +150 -0
- package/dist/src/engine/hostLocks.js +66 -0
- package/dist/src/engine/index.js +26 -0
- package/dist/src/engine/installManifests.js +147 -0
- package/dist/src/engine/mach.js +97 -0
- package/dist/src/engine/machHints.js +80 -0
- package/dist/src/engine/mozconfig.js +110 -0
- package/dist/src/engine/objdir.js +124 -0
- package/dist/src/engine/package.js +169 -0
- package/dist/src/engine/pin.js +12 -0
- package/dist/src/engine/pool.js +423 -0
- package/dist/src/engine/pristine.js +281 -0
- package/dist/src/engine/python.js +68 -0
- package/dist/src/engine/resourceGuard.js +582 -0
- package/dist/src/engine/run.js +259 -0
- package/dist/src/engine/smoke.js +204 -0
- package/dist/src/engine/staleness.js +229 -0
- package/dist/src/engine/watch.js +82 -0
- package/dist/src/engine/workspace.js +85 -0
- package/dist/src/furnace/config.js +360 -0
- package/dist/src/furnace/deploy.js +414 -0
- package/dist/src/furnace/diff.js +59 -0
- package/dist/src/furnace/edit.js +64 -0
- package/dist/src/furnace/fragments.js +53 -0
- package/dist/src/furnace/index.js +19 -0
- package/dist/src/furnace/operations.js +283 -0
- package/dist/src/furnace/registration.js +220 -0
- package/dist/src/furnace/scaffold.js +311 -0
- package/dist/src/furnace/typing.js +252 -0
- package/dist/src/furnace/validate.js +662 -0
- package/dist/src/git/apply.js +129 -0
- package/dist/src/git/diff.js +143 -0
- package/dist/src/git/index.js +33 -0
- package/dist/src/git/objects.js +201 -0
- package/dist/src/git/refs.js +85 -0
- package/dist/src/git/repo.js +222 -0
- package/dist/src/git/run.js +242 -0
- package/dist/src/git/status.js +156 -0
- package/dist/src/kernel/errors.js +123 -0
- package/dist/src/kernel/fs.js +515 -0
- package/dist/src/kernel/glob.js +63 -0
- package/dist/src/kernel/hash.js +28 -0
- package/dist/src/kernel/journal.js +524 -0
- package/dist/src/kernel/json-edit.js +198 -0
- package/dist/src/kernel/json.js +101 -0
- package/dist/src/kernel/lock.js +589 -0
- package/dist/src/kernel/log.js +154 -0
- package/dist/src/kernel/process/identity.js +313 -0
- package/dist/src/kernel/process/index.js +8 -0
- package/dist/src/kernel/process/listing.js +128 -0
- package/dist/src/kernel/process/spawn.js +430 -0
- package/dist/src/kernel/process/tree.js +301 -0
- package/dist/src/kernel/schema.js +308 -0
- package/dist/src/kernel/signals.js +171 -0
- package/dist/src/kernel/text.js +151 -0
- package/dist/src/kernel/time.js +83 -0
- package/dist/src/kernel/tty.js +84 -0
- package/dist/src/lint/cache.js +77 -0
- package/dist/src/lint/checkjs.js +400 -0
- package/dist/src/lint/index.js +3 -0
- package/dist/src/lint/input.js +100 -0
- package/dist/src/lint/report.js +107 -0
- package/dist/src/lint/rule.js +41 -0
- package/dist/src/lint/rules/css.js +308 -0
- package/dist/src/lint/rules/javascript.js +299 -0
- package/dist/src/lint/rules/jsdoc.js +249 -0
- package/dist/src/lint/rules/license.js +93 -0
- package/dist/src/lint/rules/policy.js +201 -0
- package/dist/src/lint/rules/registration.js +264 -0
- package/dist/src/lint/rules/size.js +299 -0
- package/dist/src/lint/run.js +126 -0
- package/dist/src/lint/shim.js +323 -0
- package/dist/src/lint/typescript.js +186 -0
- package/dist/src/lint/waivers.js +93 -0
- package/dist/src/mode/changes.js +264 -0
- package/dist/src/mode/diagnose.js +173 -0
- package/dist/src/mode/export.js +147 -0
- package/dist/src/mode/index.js +23 -0
- package/dist/src/mode/migrate.js +181 -0
- package/dist/src/mode/previousWaivers.js +206 -0
- package/dist/src/mode/pristine.js +61 -0
- package/dist/src/mode/rebase.js +197 -0
- package/dist/src/mode/report.js +157 -0
- package/dist/src/mode/setup.js +103 -0
- package/dist/src/mode/tracked.js +116 -0
- package/dist/src/mode/upgrade.js +281 -0
- package/dist/src/mode/watch.js +83 -0
- package/dist/src/mode/workspace.js +189 -0
- package/dist/src/mozbuild/index.js +6 -0
- package/dist/src/mozbuild/jar.js +366 -0
- package/dist/src/mozbuild/mozbuild.js +321 -0
- package/dist/src/mozbuild/paths.js +96 -0
- package/dist/src/mozbuild/references.js +39 -0
- package/dist/src/mozbuild/testManifest.js +343 -0
- package/dist/src/mozbuild/text.js +142 -0
- package/dist/src/project/changes.js +145 -0
- package/dist/src/project/checkout.js +66 -0
- package/dist/src/project/index.js +11 -0
- package/dist/src/project/license.js +119 -0
- package/dist/src/project/project.js +111 -0
- package/dist/src/project/state.js +85 -0
- package/dist/src/project/tracked.js +1 -0
- package/dist/src/queue/apply.js +270 -0
- package/dist/src/queue/attribute.js +159 -0
- package/dist/src/queue/baseline.js +409 -0
- package/dist/src/queue/capture.js +298 -0
- package/dist/src/queue/changes.js +234 -0
- package/dist/src/queue/index.js +50 -0
- package/dist/src/queue/manifest.js +341 -0
- package/dist/src/queue/operations.js +454 -0
- package/dist/src/queue/placement.js +220 -0
- package/dist/src/queue/queue.js +359 -0
- package/dist/src/queue/restore.js +103 -0
- package/dist/src/queue/session.js +685 -0
- package/dist/src/queue/status.js +137 -0
- package/dist/src/register/files.js +39 -0
- package/dist/src/register/index.js +8 -0
- package/dist/src/register/js.js +217 -0
- package/dist/src/register/register.js +359 -0
- package/dist/src/register/wire.js +146 -0
- package/dist/src/source/adopt.js +99 -0
- package/dist/src/source/changes.js +132 -0
- package/dist/src/source/edit.js +278 -0
- package/dist/src/source/export.js +70 -0
- package/dist/src/source/groups.js +131 -0
- package/dist/src/source/index.js +20 -0
- package/dist/src/source/materialize.js +382 -0
- package/dist/src/source/merge.js +255 -0
- package/dist/src/source/objects.js +102 -0
- package/dist/src/source/previous.js +166 -0
- package/dist/src/source/records.js +138 -0
- package/dist/src/source/refresh.js +264 -0
- package/dist/src/source/tree.js +337 -0
- package/dist/src/syntax/css.js +215 -0
- package/dist/src/syntax/fragments.js +63 -0
- package/dist/src/syntax/index.js +10 -0
- package/dist/src/syntax/js.js +270 -0
- package/dist/src/test/classify.js +826 -0
- package/dist/src/test/control.js +236 -0
- package/dist/src/test/host.js +266 -0
- package/dist/src/test/index.js +11 -0
- package/dist/src/test/plan.js +347 -0
- package/dist/src/test/rawLog.js +138 -0
- package/dist/src/test/run.js +404 -0
- package/dist/src/test/verdict.js +420 -0
- package/dist/src/test/xpcshell.js +143 -0
- package/dist/src/tokens/add.js +304 -0
- package/dist/src/tokens/coverage.js +65 -0
- package/dist/src/tokens/css.js +58 -0
- package/dist/src/tokens/index.js +12 -0
- package/dist/src/tokens/lint.js +96 -0
- package/dist/src/tokens/model.js +118 -0
- package/dist/src/tokens/settings.js +87 -0
- package/dist/src/tokens/siblings.js +104 -0
- package/dist/src/typecheck/explain.js +123 -0
- package/dist/src/typecheck/index.js +8 -0
- package/dist/src/typecheck/typecheck.js +332 -0
- package/docs/README.md +23 -28
- package/docs/authoring.md +97 -0
- package/docs/configuration.md +307 -766
- package/docs/exit-codes.md +76 -94
- package/docs/furnace.md +111 -221
- package/docs/gate.md +205 -0
- package/docs/getting-started.md +165 -0
- package/docs/machine-output.md +201 -290
- package/docs/migrating.md +261 -0
- package/docs/patch-workflow.md +159 -723
- package/docs/quality.md +220 -0
- package/docs/source-workflow.md +228 -0
- package/docs/testing.md +101 -719
- package/docs/workspaces.md +187 -0
- package/package.json +22 -30
- package/templates/configs/common.mozconfig +8 -2
- package/templates/configs/darwin.mozconfig +6 -7
- package/templates/configs/linux.mozconfig +5 -8
- package/templates/configs/win32.mozconfig +3 -9
- package/dist/bin/fireforge.d.ts +0 -9
- package/dist/src/cli-usage-error.d.ts +0 -46
- package/dist/src/cli-usage-error.js +0 -81
- package/dist/src/cli.d.ts +0 -41
- package/dist/src/cli.js +0 -380
- package/dist/src/commands/bootstrap-checks.d.ts +0 -16
- package/dist/src/commands/bootstrap-checks.js +0 -66
- package/dist/src/commands/bootstrap.d.ts +0 -10
- package/dist/src/commands/build-prelock.d.ts +0 -20
- package/dist/src/commands/build-prelock.js +0 -50
- package/dist/src/commands/build.d.ts +0 -13
- package/dist/src/commands/check-report.d.ts +0 -41
- package/dist/src/commands/check-report.js +0 -98
- package/dist/src/commands/check-run.d.ts +0 -44
- package/dist/src/commands/check-run.js +0 -125
- package/dist/src/commands/check-steps.d.ts +0 -75
- package/dist/src/commands/check-steps.js +0 -200
- package/dist/src/commands/check.d.ts +0 -32
- package/dist/src/commands/config.d.ts +0 -13
- package/dist/src/commands/declarations-report.d.ts +0 -49
- package/dist/src/commands/declarations-report.js +0 -83
- package/dist/src/commands/destructive-decision.d.ts +0 -19
- package/dist/src/commands/destructive-decision.js +0 -31
- package/dist/src/commands/discard.d.ts +0 -12
- package/dist/src/commands/doctor-check-core.d.ts +0 -110
- package/dist/src/commands/doctor-check-core.js +0 -24
- package/dist/src/commands/doctor-engine-eslint.d.ts +0 -3
- package/dist/src/commands/doctor-engine-eslint.js +0 -17
- package/dist/src/commands/doctor-external-toolchains.d.ts +0 -3
- package/dist/src/commands/doctor-external-toolchains.js +0 -56
- package/dist/src/commands/doctor-furnace-config-sync.d.ts +0 -18
- package/dist/src/commands/doctor-furnace-config-sync.js +0 -295
- package/dist/src/commands/doctor-furnace-jar.d.ts +0 -14
- package/dist/src/commands/doctor-furnace-jar.js +0 -44
- package/dist/src/commands/doctor-furnace.d.ts +0 -8
- package/dist/src/commands/doctor-furnace.js +0 -514
- package/dist/src/commands/doctor-macos-sdk.d.ts +0 -8
- package/dist/src/commands/doctor-macos-sdk.js +0 -158
- package/dist/src/commands/doctor-orphaned-harness.d.ts +0 -41
- package/dist/src/commands/doctor-orphaned-harness.js +0 -98
- package/dist/src/commands/doctor-patch-manifest.d.ts +0 -9
- package/dist/src/commands/doctor-patch-manifest.js +0 -156
- package/dist/src/commands/doctor-post-rebase-audit.d.ts +0 -2
- package/dist/src/commands/doctor-post-rebase-audit.js +0 -108
- package/dist/src/commands/doctor-source-pin.d.ts +0 -29
- package/dist/src/commands/doctor-source-pin.js +0 -91
- package/dist/src/commands/doctor-working-tree.d.ts +0 -27
- package/dist/src/commands/doctor-working-tree.js +0 -89
- package/dist/src/commands/doctor.d.ts +0 -49
- package/dist/src/commands/download.d.ts +0 -11
- package/dist/src/commands/export-adopt-check.d.ts +0 -37
- package/dist/src/commands/export-adopt-check.js +0 -97
- package/dist/src/commands/export-all.d.ts +0 -11
- package/dist/src/commands/export-all.js +0 -361
- package/dist/src/commands/export-flow.d.ts +0 -124
- package/dist/src/commands/export-flow.js +0 -423
- package/dist/src/commands/export-placement-conflicts.d.ts +0 -17
- package/dist/src/commands/export-placement-conflicts.js +0 -75
- package/dist/src/commands/export-placement-gate.d.ts +0 -42
- package/dist/src/commands/export-placement-gate.js +0 -107
- package/dist/src/commands/export-placement-policy.d.ts +0 -22
- package/dist/src/commands/export-placement-policy.js +0 -54
- package/dist/src/commands/export-shared.d.ts +0 -152
- package/dist/src/commands/export-shared.js +0 -396
- package/dist/src/commands/export-staged-registration.d.ts +0 -46
- package/dist/src/commands/export-staged-registration.js +0 -91
- package/dist/src/commands/export.d.ts +0 -13
- package/dist/src/commands/forward-import-remedy.d.ts +0 -31
- package/dist/src/commands/forward-import-remedy.js +0 -62
- package/dist/src/commands/furnace/apply.d.ts +0 -8
- package/dist/src/commands/furnace/apply.js +0 -327
- package/dist/src/commands/furnace/authoring-config.d.ts +0 -13
- package/dist/src/commands/furnace/authoring-config.js +0 -19
- package/dist/src/commands/furnace/chrome-doc-remove.d.ts +0 -14
- package/dist/src/commands/furnace/chrome-doc-remove.js +0 -148
- package/dist/src/commands/furnace/chrome-doc-templates.d.ts +0 -152
- package/dist/src/commands/furnace/chrome-doc-templates.js +0 -331
- package/dist/src/commands/furnace/chrome-doc-tests.d.ts +0 -23
- package/dist/src/commands/furnace/chrome-doc-tests.js +0 -148
- package/dist/src/commands/furnace/chrome-doc.d.ts +0 -87
- package/dist/src/commands/furnace/chrome-doc.js +0 -365
- package/dist/src/commands/furnace/create-browser-test.d.ts +0 -44
- package/dist/src/commands/furnace/create-browser-test.js +0 -179
- package/dist/src/commands/furnace/create-dry-run.d.ts +0 -49
- package/dist/src/commands/furnace/create-dry-run.js +0 -107
- package/dist/src/commands/furnace/create-features.d.ts +0 -24
- package/dist/src/commands/furnace/create-features.js +0 -55
- package/dist/src/commands/furnace/create-mochikit.d.ts +0 -29
- package/dist/src/commands/furnace/create-mochikit.js +0 -75
- package/dist/src/commands/furnace/create-readback.d.ts +0 -22
- package/dist/src/commands/furnace/create-readback.js +0 -32
- package/dist/src/commands/furnace/create-templates.d.ts +0 -119
- package/dist/src/commands/furnace/create-templates.js +0 -283
- package/dist/src/commands/furnace/create-validation.d.ts +0 -6
- package/dist/src/commands/furnace/create-validation.js +0 -59
- package/dist/src/commands/furnace/create-xpcshell.d.ts +0 -27
- package/dist/src/commands/furnace/create-xpcshell.js +0 -80
- package/dist/src/commands/furnace/create.d.ts +0 -24
- package/dist/src/commands/furnace/create.js +0 -407
- package/dist/src/commands/furnace/deploy-fragment-includers.d.ts +0 -59
- package/dist/src/commands/furnace/deploy-fragment-includers.js +0 -120
- package/dist/src/commands/furnace/deploy-named.d.ts +0 -48
- package/dist/src/commands/furnace/deploy-named.js +0 -107
- package/dist/src/commands/furnace/deploy.d.ts +0 -9
- package/dist/src/commands/furnace/deploy.js +0 -229
- package/dist/src/commands/furnace/diff.d.ts +0 -11
- package/dist/src/commands/furnace/diff.js +0 -238
- package/dist/src/commands/furnace/index.d.ts +0 -4
- package/dist/src/commands/furnace/index.js +0 -283
- package/dist/src/commands/furnace/init.d.ts +0 -11
- package/dist/src/commands/furnace/init.js +0 -287
- package/dist/src/commands/furnace/list.d.ts +0 -8
- package/dist/src/commands/furnace/list.js +0 -104
- package/dist/src/commands/furnace/override.d.ts +0 -16
- package/dist/src/commands/furnace/override.js +0 -454
- package/dist/src/commands/furnace/preview.d.ts +0 -19
- package/dist/src/commands/furnace/preview.js +0 -349
- package/dist/src/commands/furnace/refresh.d.ts +0 -10
- package/dist/src/commands/furnace/refresh.js +0 -303
- package/dist/src/commands/furnace/remove-mutations.d.ts +0 -36
- package/dist/src/commands/furnace/remove-mutations.js +0 -168
- package/dist/src/commands/furnace/remove-state.d.ts +0 -20
- package/dist/src/commands/furnace/remove-state.js +0 -60
- package/dist/src/commands/furnace/remove.d.ts +0 -8
- package/dist/src/commands/furnace/remove.js +0 -415
- package/dist/src/commands/furnace/rename-browser-test.d.ts +0 -2
- package/dist/src/commands/furnace/rename-browser-test.js +0 -68
- package/dist/src/commands/furnace/rename-dry-run.d.ts +0 -29
- package/dist/src/commands/furnace/rename-dry-run.js +0 -127
- package/dist/src/commands/furnace/rename-helpers.d.ts +0 -26
- package/dist/src/commands/furnace/rename-helpers.js +0 -85
- package/dist/src/commands/furnace/rename-registrations.d.ts +0 -41
- package/dist/src/commands/furnace/rename-registrations.js +0 -98
- package/dist/src/commands/furnace/rename-xpcshell.d.ts +0 -32
- package/dist/src/commands/furnace/rename-xpcshell.js +0 -95
- package/dist/src/commands/furnace/rename.d.ts +0 -6
- package/dist/src/commands/furnace/rename.js +0 -400
- package/dist/src/commands/furnace/scan.d.ts +0 -14
- package/dist/src/commands/furnace/scan.js +0 -192
- package/dist/src/commands/furnace/status.d.ts +0 -7
- package/dist/src/commands/furnace/status.js +0 -209
- package/dist/src/commands/furnace/sync.d.ts +0 -12
- package/dist/src/commands/furnace/sync.js +0 -145
- package/dist/src/commands/furnace/test-file-name.d.ts +0 -28
- package/dist/src/commands/furnace/test-file-name.js +0 -39
- package/dist/src/commands/furnace/validate-report.d.ts +0 -45
- package/dist/src/commands/furnace/validate-report.js +0 -91
- package/dist/src/commands/furnace/validate.d.ts +0 -8
- package/dist/src/commands/furnace/validate.js +0 -309
- package/dist/src/commands/furnace/validation-output.d.ts +0 -47
- package/dist/src/commands/furnace/validation-output.js +0 -161
- package/dist/src/commands/import.d.ts +0 -11
- package/dist/src/commands/lint-per-patch.d.ts +0 -10
- package/dist/src/commands/lint-per-patch.js +0 -428
- package/dist/src/commands/lint-per-run-checkjs.d.ts +0 -66
- package/dist/src/commands/lint-per-run-checkjs.js +0 -102
- package/dist/src/commands/lint-report.d.ts +0 -25
- package/dist/src/commands/lint-report.js +0 -76
- package/dist/src/commands/lint.d.ts +0 -47
- package/dist/src/commands/manifest.d.ts +0 -38
- package/dist/src/commands/manifest.js +0 -68
- package/dist/src/commands/package.d.ts +0 -11
- package/dist/src/commands/park.d.ts +0 -22
- package/dist/src/commands/park.js +0 -232
- package/dist/src/commands/patch/body.d.ts +0 -29
- package/dist/src/commands/patch/body.js +0 -60
- package/dist/src/commands/patch/compact.d.ts +0 -28
- package/dist/src/commands/patch/compact.js +0 -208
- package/dist/src/commands/patch/delete-gap-notice.d.ts +0 -24
- package/dist/src/commands/patch/delete-gap-notice.js +0 -48
- package/dist/src/commands/patch/delete.d.ts +0 -28
- package/dist/src/commands/patch/delete.js +0 -131
- package/dist/src/commands/patch/entry-projection.d.ts +0 -13
- package/dist/src/commands/patch/entry-projection.js +0 -24
- package/dist/src/commands/patch/index.d.ts +0 -16
- package/dist/src/commands/patch/index.js +0 -54
- package/dist/src/commands/patch/lint-ignore-from.d.ts +0 -43
- package/dist/src/commands/patch/lint-ignore-from.js +0 -141
- package/dist/src/commands/patch/lint-ignore.d.ts +0 -42
- package/dist/src/commands/patch/lint-ignore.js +0 -263
- package/dist/src/commands/patch/move-files-adopt.d.ts +0 -33
- package/dist/src/commands/patch/move-files-adopt.js +0 -65
- package/dist/src/commands/patch/move-files-create.d.ts +0 -19
- package/dist/src/commands/patch/move-files-create.js +0 -187
- package/dist/src/commands/patch/move-files-into.d.ts +0 -65
- package/dist/src/commands/patch/move-files-into.js +0 -325
- package/dist/src/commands/patch/move-files-retire.d.ts +0 -39
- package/dist/src/commands/patch/move-files-retire.js +0 -91
- package/dist/src/commands/patch/move-files.d.ts +0 -28
- package/dist/src/commands/patch/move-files.js +0 -224
- package/dist/src/commands/patch/move-size-tier.d.ts +0 -27
- package/dist/src/commands/patch/move-size-tier.js +0 -66
- package/dist/src/commands/patch/patch-context.d.ts +0 -40
- package/dist/src/commands/patch/patch-context.js +0 -51
- package/dist/src/commands/patch/removal-created-files.d.ts +0 -48
- package/dist/src/commands/patch/removal-created-files.js +0 -83
- package/dist/src/commands/patch/removal-dependents.d.ts +0 -63
- package/dist/src/commands/patch/removal-dependents.js +0 -133
- package/dist/src/commands/patch/rename.d.ts +0 -35
- package/dist/src/commands/patch/rename.js +0 -378
- package/dist/src/commands/patch/reorder-projection.d.ts +0 -17
- package/dist/src/commands/patch/reorder-projection.js +0 -49
- package/dist/src/commands/patch/reorder-shift.d.ts +0 -30
- package/dist/src/commands/patch/reorder-shift.js +0 -307
- package/dist/src/commands/patch/reorder.d.ts +0 -34
- package/dist/src/commands/patch/reorder.js +0 -375
- package/dist/src/commands/patch/reserve.d.ts +0 -33
- package/dist/src/commands/patch/reserve.js +0 -152
- package/dist/src/commands/patch/retire.d.ts +0 -34
- package/dist/src/commands/patch/retire.js +0 -133
- package/dist/src/commands/patch/split-plan.d.ts +0 -125
- package/dist/src/commands/patch/split-plan.js +0 -313
- package/dist/src/commands/patch/split-staged.d.ts +0 -108
- package/dist/src/commands/patch/split-staged.js +0 -202
- package/dist/src/commands/patch/split.d.ts +0 -43
- package/dist/src/commands/patch/split.js +0 -367
- package/dist/src/commands/patch/stage.d.ts +0 -34
- package/dist/src/commands/patch/stage.js +0 -153
- package/dist/src/commands/patch/staged-dependency-batch.d.ts +0 -48
- package/dist/src/commands/patch/staged-dependency-batch.js +0 -176
- package/dist/src/commands/patch/staged-dependency-entries.d.ts +0 -44
- package/dist/src/commands/patch/staged-dependency-entries.js +0 -80
- package/dist/src/commands/patch/staged-dependency-from.d.ts +0 -14
- package/dist/src/commands/patch/staged-dependency-from.js +0 -114
- package/dist/src/commands/patch/staged-dependency-remove.d.ts +0 -53
- package/dist/src/commands/patch/staged-dependency-remove.js +0 -114
- package/dist/src/commands/patch/staged-dependency-validate.d.ts +0 -27
- package/dist/src/commands/patch/staged-dependency-validate.js +0 -78
- package/dist/src/commands/patch/staged-dependency.d.ts +0 -22
- package/dist/src/commands/patch/staged-dependency.js +0 -251
- package/dist/src/commands/patch/tier.d.ts +0 -34
- package/dist/src/commands/patch/tier.js +0 -125
- package/dist/src/commands/patch-rename-map.d.ts +0 -30
- package/dist/src/commands/patch-rename-map.js +0 -54
- package/dist/src/commands/pending-resolution.d.ts +0 -15
- package/dist/src/commands/pending-resolution.js +0 -25
- package/dist/src/commands/re-export-adjacent-registrations.d.ts +0 -20
- package/dist/src/commands/re-export-adjacent-registrations.js +0 -75
- package/dist/src/commands/re-export-adjacent.d.ts +0 -111
- package/dist/src/commands/re-export-adjacent.js +0 -285
- package/dist/src/commands/re-export-bulk-scan.d.ts +0 -19
- package/dist/src/commands/re-export-bulk-scan.js +0 -233
- package/dist/src/commands/re-export-drift.d.ts +0 -110
- package/dist/src/commands/re-export-drift.js +0 -358
- package/dist/src/commands/re-export-each.d.ts +0 -46
- package/dist/src/commands/re-export-each.js +0 -110
- package/dist/src/commands/re-export-files.d.ts +0 -15
- package/dist/src/commands/re-export-files.js +0 -307
- package/dist/src/commands/re-export-hunks.d.ts +0 -37
- package/dist/src/commands/re-export-hunks.js +0 -264
- package/dist/src/commands/re-export-lint.d.ts +0 -137
- package/dist/src/commands/re-export-lint.js +0 -303
- package/dist/src/commands/re-export-options.d.ts +0 -29
- package/dist/src/commands/re-export-options.js +0 -192
- package/dist/src/commands/re-export-preflight.d.ts +0 -23
- package/dist/src/commands/re-export-preflight.js +0 -159
- package/dist/src/commands/re-export-purity-scope.d.ts +0 -18
- package/dist/src/commands/re-export-purity-scope.js +0 -137
- package/dist/src/commands/re-export-register.d.ts +0 -12
- package/dist/src/commands/re-export-register.js +0 -99
- package/dist/src/commands/re-export-removed.d.ts +0 -15
- package/dist/src/commands/re-export-removed.js +0 -94
- package/dist/src/commands/re-export-retired-declarations.d.ts +0 -22
- package/dist/src/commands/re-export-retired-declarations.js +0 -113
- package/dist/src/commands/re-export-scan-owner.d.ts +0 -44
- package/dist/src/commands/re-export-scan-owner.js +0 -116
- package/dist/src/commands/re-export-scan.d.ts +0 -72
- package/dist/src/commands/re-export-scan.js +0 -265
- package/dist/src/commands/re-export-single.d.ts +0 -53
- package/dist/src/commands/re-export-single.js +0 -426
- package/dist/src/commands/re-export-stale-registrations.d.ts +0 -39
- package/dist/src/commands/re-export-stale-registrations.js +0 -106
- package/dist/src/commands/re-export-summary.d.ts +0 -44
- package/dist/src/commands/re-export-summary.js +0 -59
- package/dist/src/commands/re-export.d.ts +0 -8
- package/dist/src/commands/rebase/abort.d.ts +0 -7
- package/dist/src/commands/rebase/abort.js +0 -67
- package/dist/src/commands/rebase/confirm.d.ts +0 -42
- package/dist/src/commands/rebase/confirm.js +0 -36
- package/dist/src/commands/rebase/conflict-summary.d.ts +0 -12
- package/dist/src/commands/rebase/conflict-summary.js +0 -37
- package/dist/src/commands/rebase/continue.d.ts +0 -7
- package/dist/src/commands/rebase/continue.js +0 -119
- package/dist/src/commands/rebase/index.d.ts +0 -22
- package/dist/src/commands/rebase/index.js +0 -209
- package/dist/src/commands/rebase/patch-loop.d.ts +0 -15
- package/dist/src/commands/rebase/patch-loop.js +0 -289
- package/dist/src/commands/rebase/summary.d.ts +0 -8
- package/dist/src/commands/rebase/summary.js +0 -47
- package/dist/src/commands/register.d.ts +0 -13
- package/dist/src/commands/reset.d.ts +0 -11
- package/dist/src/commands/resolve.d.ts +0 -36
- package/dist/src/commands/run.d.ts +0 -10
- package/dist/src/commands/setup-support.d.ts +0 -35
- package/dist/src/commands/setup-support.js +0 -386
- package/dist/src/commands/setup.d.ts +0 -11
- package/dist/src/commands/source.d.ts +0 -9
- package/dist/src/commands/source.js +0 -120
- package/dist/src/commands/status-check.d.ts +0 -87
- package/dist/src/commands/status-check.js +0 -161
- package/dist/src/commands/status-json.d.ts +0 -45
- package/dist/src/commands/status-json.js +0 -97
- package/dist/src/commands/status-output.d.ts +0 -23
- package/dist/src/commands/status-output.js +0 -231
- package/dist/src/commands/status-ownership.d.ts +0 -54
- package/dist/src/commands/status-ownership.js +0 -59
- package/dist/src/commands/status-scope.d.ts +0 -37
- package/dist/src/commands/status-scope.js +0 -54
- package/dist/src/commands/status.d.ts +0 -11
- package/dist/src/commands/test-appdir.d.ts +0 -6
- package/dist/src/commands/test-appdir.js +0 -29
- package/dist/src/commands/test-browser-preflight.d.ts +0 -28
- package/dist/src/commands/test-browser-preflight.js +0 -197
- package/dist/src/commands/test-build-furnace.d.ts +0 -21
- package/dist/src/commands/test-build-furnace.js +0 -53
- package/dist/src/commands/test-build-phase.d.ts +0 -34
- package/dist/src/commands/test-build-phase.js +0 -291
- package/dist/src/commands/test-checkjs.d.ts +0 -3
- package/dist/src/commands/test-checkjs.js +0 -35
- package/dist/src/commands/test-control-restore.d.ts +0 -40
- package/dist/src/commands/test-control-restore.js +0 -86
- package/dist/src/commands/test-diagnose.d.ts +0 -23
- package/dist/src/commands/test-diagnose.js +0 -317
- package/dist/src/commands/test-dispatch.d.ts +0 -39
- package/dist/src/commands/test-dispatch.js +0 -281
- package/dist/src/commands/test-furnace-reach.d.ts +0 -37
- package/dist/src/commands/test-furnace-reach.js +0 -132
- package/dist/src/commands/test-harness-env.d.ts +0 -23
- package/dist/src/commands/test-harness-env.js +0 -81
- package/dist/src/commands/test-harness-teardown.d.ts +0 -62
- package/dist/src/commands/test-harness-teardown.js +0 -128
- package/dist/src/commands/test-modes.d.ts +0 -57
- package/dist/src/commands/test-modes.js +0 -158
- package/dist/src/commands/test-multi-verdict.d.ts +0 -61
- package/dist/src/commands/test-multi-verdict.js +0 -112
- package/dist/src/commands/test-orchestrate.d.ts +0 -70
- package/dist/src/commands/test-orchestrate.js +0 -277
- package/dist/src/commands/test-perf-scope.d.ts +0 -50
- package/dist/src/commands/test-perf-scope.js +0 -138
- package/dist/src/commands/test-prelock.d.ts +0 -61
- package/dist/src/commands/test-prelock.js +0 -301
- package/dist/src/commands/test-register.d.ts +0 -4
- package/dist/src/commands/test-register.js +0 -181
- package/dist/src/commands/test-results.d.ts +0 -71
- package/dist/src/commands/test-results.js +0 -79
- package/dist/src/commands/test-run.d.ts +0 -89
- package/dist/src/commands/test-run.js +0 -251
- package/dist/src/commands/test-shards.d.ts +0 -114
- package/dist/src/commands/test-shards.js +0 -272
- package/dist/src/commands/test-stale-gate.d.ts +0 -56
- package/dist/src/commands/test-stale-gate.js +0 -208
- package/dist/src/commands/test-verdict.d.ts +0 -102
- package/dist/src/commands/test-verdict.js +0 -176
- package/dist/src/commands/test.d.ts +0 -22
- package/dist/src/commands/token-coverage.d.ts +0 -5
- package/dist/src/commands/token-coverage.js +0 -170
- package/dist/src/commands/token-lint.d.ts +0 -14
- package/dist/src/commands/token-lint.js +0 -151
- package/dist/src/commands/token-list.d.ts +0 -26
- package/dist/src/commands/token-list.js +0 -153
- package/dist/src/commands/token.d.ts +0 -14
- package/dist/src/commands/tree.d.ts +0 -19
- package/dist/src/commands/tree.js +0 -341
- package/dist/src/commands/typecheck-explain.d.ts +0 -13
- package/dist/src/commands/typecheck-explain.js +0 -100
- package/dist/src/commands/typecheck.d.ts +0 -61
- package/dist/src/commands/verify-scope.d.ts +0 -28
- package/dist/src/commands/verify-scope.js +0 -67
- package/dist/src/commands/verify.d.ts +0 -58
- package/dist/src/commands/watch.d.ts +0 -9
- package/dist/src/commands/wire.d.ts +0 -13
- package/dist/src/core/ast-utils.d.ts +0 -73
- package/dist/src/core/ast-utils.js +0 -105
- package/dist/src/core/brand-validation.d.ts +0 -7
- package/dist/src/core/brand-validation.js +0 -14
- package/dist/src/core/branding.d.ts +0 -86
- package/dist/src/core/branding.js +0 -371
- package/dist/src/core/browser-wire.d.ts +0 -48
- package/dist/src/core/browser-wire.js +0 -133
- package/dist/src/core/build-audit-platform.d.ts +0 -67
- package/dist/src/core/build-audit-platform.js +0 -373
- package/dist/src/core/build-audit-registration.d.ts +0 -80
- package/dist/src/core/build-audit-registration.js +0 -181
- package/dist/src/core/build-audit-resolve.d.ts +0 -78
- package/dist/src/core/build-audit-resolve.js +0 -240
- package/dist/src/core/build-audit-skip.d.ts +0 -57
- package/dist/src/core/build-audit-skip.js +0 -112
- package/dist/src/core/build-audit-transforms.d.ts +0 -23
- package/dist/src/core/build-audit-transforms.js +0 -92
- package/dist/src/core/build-audit.d.ts +0 -93
- package/dist/src/core/build-audit.js +0 -633
- package/dist/src/core/build-baseline-types.d.ts +0 -225
- package/dist/src/core/build-baseline-types.js +0 -10
- package/dist/src/core/build-baseline-validate.d.ts +0 -32
- package/dist/src/core/build-baseline-validate.js +0 -173
- package/dist/src/core/build-baseline.d.ts +0 -103
- package/dist/src/core/build-baseline.js +0 -261
- package/dist/src/core/build-jar-escalation.d.ts +0 -61
- package/dist/src/core/build-jar-escalation.js +0 -125
- package/dist/src/core/build-overwrite-guard.d.ts +0 -92
- package/dist/src/core/build-overwrite-guard.js +0 -235
- package/dist/src/core/build-prepare.d.ts +0 -83
- package/dist/src/core/build-prepare.js +0 -414
- package/dist/src/core/build-run-record.d.ts +0 -74
- package/dist/src/core/build-run-record.js +0 -136
- package/dist/src/core/checkjs-support-heads.d.ts +0 -41
- package/dist/src/core/checkjs-support-heads.js +0 -104
- package/dist/src/core/component-source-guard.d.ts +0 -20
- package/dist/src/core/component-source-guard.js +0 -68
- package/dist/src/core/config-mutate.d.ts +0 -16
- package/dist/src/core/config-mutate.js +0 -76
- package/dist/src/core/config-paths.d.ts +0 -16
- package/dist/src/core/config-paths.js +0 -106
- package/dist/src/core/config-state.d.ts +0 -16
- package/dist/src/core/config-state.js +0 -141
- package/dist/src/core/config-validate-build-audit.d.ts +0 -8
- package/dist/src/core/config-validate-build-audit.js +0 -80
- package/dist/src/core/config-validate-check.d.ts +0 -8
- package/dist/src/core/config-validate-check.js +0 -219
- package/dist/src/core/config-validate-file-size.d.ts +0 -15
- package/dist/src/core/config-validate-file-size.js +0 -154
- package/dist/src/core/config-validate-history.d.ts +0 -11
- package/dist/src/core/config-validate-history.js +0 -38
- package/dist/src/core/config-validate-patch-policy.d.ts +0 -7
- package/dist/src/core/config-validate-patch-policy.js +0 -284
- package/dist/src/core/config-validate-test-toolchains.d.ts +0 -8
- package/dist/src/core/config-validate-test-toolchains.js +0 -133
- package/dist/src/core/config-validate-token-scales.d.ts +0 -9
- package/dist/src/core/config-validate-token-scales.js +0 -125
- package/dist/src/core/config-validate.d.ts +0 -11
- package/dist/src/core/config-validate.js +0 -509
- package/dist/src/core/config.d.ts +0 -92
- package/dist/src/core/config.js +0 -169
- package/dist/src/core/coverage-dispatch.d.ts +0 -24
- package/dist/src/core/coverage-dispatch.js +0 -44
- package/dist/src/core/coverage-extend.d.ts +0 -89
- package/dist/src/core/coverage-extend.js +0 -239
- package/dist/src/core/coverage-records.d.ts +0 -107
- package/dist/src/core/coverage-records.js +0 -383
- package/dist/src/core/destructive.d.ts +0 -144
- package/dist/src/core/destructive.js +0 -182
- package/dist/src/core/dev-profile.d.ts +0 -28
- package/dist/src/core/dev-profile.js +0 -58
- package/dist/src/core/diff-hunks.d.ts +0 -73
- package/dist/src/core/diff-hunks.js +0 -286
- package/dist/src/core/discard-baseline.d.ts +0 -60
- package/dist/src/core/discard-baseline.js +0 -247
- package/dist/src/core/display-state.d.ts +0 -50
- package/dist/src/core/display-state.js +0 -87
- package/dist/src/core/engine-changes.d.ts +0 -40
- package/dist/src/core/engine-changes.js +0 -95
- package/dist/src/core/engine-precondition.d.ts +0 -42
- package/dist/src/core/engine-precondition.js +0 -60
- package/dist/src/core/engine-session-lock.d.ts +0 -119
- package/dist/src/core/engine-session-lock.js +0 -374
- package/dist/src/core/engine-write-boundary.d.ts +0 -5
- package/dist/src/core/engine-write-boundary.js +0 -41
- package/dist/src/core/export-moved-code-shape.d.ts +0 -98
- package/dist/src/core/export-moved-code-shape.js +0 -220
- package/dist/src/core/file-lock-owner.d.ts +0 -103
- package/dist/src/core/file-lock-owner.js +0 -259
- package/dist/src/core/file-lock-queue.d.ts +0 -67
- package/dist/src/core/file-lock-queue.js +0 -219
- package/dist/src/core/file-lock-shared.d.ts +0 -57
- package/dist/src/core/file-lock-shared.js +0 -117
- package/dist/src/core/file-lock.d.ts +0 -143
- package/dist/src/core/file-lock.js +0 -531
- package/dist/src/core/firefox-archive.d.ts +0 -45
- package/dist/src/core/firefox-archive.js +0 -96
- package/dist/src/core/firefox-cache.d.ts +0 -30
- package/dist/src/core/firefox-cache.js +0 -248
- package/dist/src/core/firefox-download.d.ts +0 -30
- package/dist/src/core/firefox-download.js +0 -152
- package/dist/src/core/firefox-extract.d.ts +0 -42
- package/dist/src/core/firefox-extract.js +0 -248
- package/dist/src/core/firefox-ignorefile.d.ts +0 -17
- package/dist/src/core/firefox-ignorefile.js +0 -30
- package/dist/src/core/firefox.d.ts +0 -66
- package/dist/src/core/firefox.js +0 -121
- package/dist/src/core/forward-registrations.d.ts +0 -33
- package/dist/src/core/forward-registrations.js +0 -16
- package/dist/src/core/furnace-apply-dry-run.d.ts +0 -12
- package/dist/src/core/furnace-apply-dry-run.js +0 -99
- package/dist/src/core/furnace-apply-ftl.d.ts +0 -49
- package/dist/src/core/furnace-apply-ftl.js +0 -210
- package/dist/src/core/furnace-apply-helpers.d.ts +0 -106
- package/dist/src/core/furnace-apply-helpers.js +0 -436
- package/dist/src/core/furnace-apply-output.d.ts +0 -36
- package/dist/src/core/furnace-apply-output.js +0 -111
- package/dist/src/core/furnace-apply-overwrite-warn.d.ts +0 -67
- package/dist/src/core/furnace-apply-overwrite-warn.js +0 -131
- package/dist/src/core/furnace-apply-undeploy-actions.d.ts +0 -10
- package/dist/src/core/furnace-apply-undeploy-actions.js +0 -48
- package/dist/src/core/furnace-apply.d.ts +0 -49
- package/dist/src/core/furnace-apply.js +0 -465
- package/dist/src/core/furnace-checksum-utils.d.ts +0 -25
- package/dist/src/core/furnace-checksum-utils.js +0 -54
- package/dist/src/core/furnace-composed-source.d.ts +0 -76
- package/dist/src/core/furnace-composed-source.js +0 -167
- package/dist/src/core/furnace-config-array-utils.d.ts +0 -11
- package/dist/src/core/furnace-config-array-utils.js +0 -26
- package/dist/src/core/furnace-config-custom.d.ts +0 -15
- package/dist/src/core/furnace-config-custom.js +0 -73
- package/dist/src/core/furnace-config-order.d.ts +0 -8
- package/dist/src/core/furnace-config-order.js +0 -90
- package/dist/src/core/furnace-config-tokens.d.ts +0 -17
- package/dist/src/core/furnace-config-tokens.js +0 -42
- package/dist/src/core/furnace-config-validate-exceptions.d.ts +0 -17
- package/dist/src/core/furnace-config-validate-exceptions.js +0 -122
- package/dist/src/core/furnace-config-validate.d.ts +0 -32
- package/dist/src/core/furnace-config-validate.js +0 -167
- package/dist/src/core/furnace-config.d.ts +0 -139
- package/dist/src/core/furnace-config.js +0 -511
- package/dist/src/core/furnace-constants.d.ts +0 -81
- package/dist/src/core/furnace-constants.js +0 -125
- package/dist/src/core/furnace-css-fragments.d.ts +0 -96
- package/dist/src/core/furnace-css-fragments.js +0 -279
- package/dist/src/core/furnace-deploy-owner.d.ts +0 -29
- package/dist/src/core/furnace-deploy-owner.js +0 -116
- package/dist/src/core/furnace-dir-entry.d.ts +0 -20
- package/dist/src/core/furnace-dir-entry.js +0 -21
- package/dist/src/core/furnace-fragment-includers.d.ts +0 -56
- package/dist/src/core/furnace-fragment-includers.js +0 -122
- package/dist/src/core/furnace-graph-utils.d.ts +0 -11
- package/dist/src/core/furnace-graph-utils.js +0 -93
- package/dist/src/core/furnace-jsconfig.d.ts +0 -87
- package/dist/src/core/furnace-jsconfig.js +0 -248
- package/dist/src/core/furnace-marker.d.ts +0 -15
- package/dist/src/core/furnace-marker.js +0 -21
- package/dist/src/core/furnace-operation.d.ts +0 -195
- package/dist/src/core/furnace-operation.js +0 -444
- package/dist/src/core/furnace-precondition.d.ts +0 -61
- package/dist/src/core/furnace-precondition.js +0 -67
- package/dist/src/core/furnace-refresh.d.ts +0 -28
- package/dist/src/core/furnace-refresh.js +0 -125
- package/dist/src/core/furnace-registration-ast.d.ts +0 -53
- package/dist/src/core/furnace-registration-ast.js +0 -402
- package/dist/src/core/furnace-registration-jar-inplace.d.ts +0 -12
- package/dist/src/core/furnace-registration-jar-inplace.js +0 -79
- package/dist/src/core/furnace-registration-remove.d.ts +0 -56
- package/dist/src/core/furnace-registration-remove.js +0 -260
- package/dist/src/core/furnace-registration-rename.d.ts +0 -26
- package/dist/src/core/furnace-registration-rename.js +0 -77
- package/dist/src/core/furnace-registration-validate.d.ts +0 -53
- package/dist/src/core/furnace-registration-validate.js +0 -110
- package/dist/src/core/furnace-registration.d.ts +0 -112
- package/dist/src/core/furnace-registration.js +0 -348
- package/dist/src/core/furnace-rollback.d.ts +0 -48
- package/dist/src/core/furnace-rollback.js +0 -170
- package/dist/src/core/furnace-scanner.d.ts +0 -47
- package/dist/src/core/furnace-scanner.js +0 -236
- package/dist/src/core/furnace-stale-export.d.ts +0 -60
- package/dist/src/core/furnace-stale-export.js +0 -125
- package/dist/src/core/furnace-staleness.d.ts +0 -24
- package/dist/src/core/furnace-staleness.js +0 -67
- package/dist/src/core/furnace-state-persist.d.ts +0 -68
- package/dist/src/core/furnace-state-persist.js +0 -116
- package/dist/src/core/furnace-step-errors.d.ts +0 -23
- package/dist/src/core/furnace-step-errors.js +0 -25
- package/dist/src/core/furnace-stories.d.ts +0 -37
- package/dist/src/core/furnace-stories.js +0 -186
- package/dist/src/core/furnace-tag-map.d.ts +0 -47
- package/dist/src/core/furnace-tag-map.js +0 -182
- package/dist/src/core/furnace-validate-accessibility.d.ts +0 -39
- package/dist/src/core/furnace-validate-accessibility.js +0 -417
- package/dist/src/core/furnace-validate-checks.d.ts +0 -4
- package/dist/src/core/furnace-validate-checks.js +0 -6
- package/dist/src/core/furnace-validate-compatibility.d.ts +0 -6
- package/dist/src/core/furnace-validate-compatibility.js +0 -295
- package/dist/src/core/furnace-validate-exceptions.d.ts +0 -49
- package/dist/src/core/furnace-validate-exceptions.js +0 -98
- package/dist/src/core/furnace-validate-helpers.d.ts +0 -7
- package/dist/src/core/furnace-validate-helpers.js +0 -4
- package/dist/src/core/furnace-validate-icon-button.d.ts +0 -7
- package/dist/src/core/furnace-validate-icon-button.js +0 -78
- package/dist/src/core/furnace-validate-registration.d.ts +0 -67
- package/dist/src/core/furnace-validate-registration.js +0 -487
- package/dist/src/core/furnace-validate-structure.d.ts +0 -22
- package/dist/src/core/furnace-validate-structure.js +0 -122
- package/dist/src/core/furnace-validate.d.ts +0 -41
- package/dist/src/core/furnace-validate.js +0 -331
- package/dist/src/core/furnace-version-drift.d.ts +0 -57
- package/dist/src/core/furnace-version-drift.js +0 -102
- package/dist/src/core/gecko-dom-types.d.ts +0 -2
- package/dist/src/core/gecko-dom-types.js +0 -17
- package/dist/src/core/git-base.d.ts +0 -101
- package/dist/src/core/git-base.js +0 -162
- package/dist/src/core/git-diff-new-file.d.ts +0 -40
- package/dist/src/core/git-diff-new-file.js +0 -118
- package/dist/src/core/git-diff.d.ts +0 -82
- package/dist/src/core/git-diff.js +0 -539
- package/dist/src/core/git-file-ops.d.ts +0 -108
- package/dist/src/core/git-file-ops.js +0 -280
- package/dist/src/core/git-readonly-index.d.ts +0 -91
- package/dist/src/core/git-readonly-index.js +0 -177
- package/dist/src/core/git-status.d.ts +0 -84
- package/dist/src/core/git-status.js +0 -208
- package/dist/src/core/git.d.ts +0 -114
- package/dist/src/core/git.js +0 -540
- package/dist/src/core/harness-helper-pids.d.ts +0 -98
- package/dist/src/core/harness-helper-pids.js +0 -240
- package/dist/src/core/harness-orphans.d.ts +0 -118
- package/dist/src/core/harness-orphans.js +0 -268
- package/dist/src/core/harness-port-fallback.d.ts +0 -60
- package/dist/src/core/harness-port-fallback.js +0 -96
- package/dist/src/core/harness-port-reservation.d.ts +0 -60
- package/dist/src/core/harness-port-reservation.js +0 -122
- package/dist/src/core/history-log-file.d.ts +0 -61
- package/dist/src/core/history-log-file.js +0 -164
- package/dist/src/core/history-log.d.ts +0 -20
- package/dist/src/core/history-log.js +0 -30
- package/dist/src/core/json-preserving-edit.d.ts +0 -22
- package/dist/src/core/json-preserving-edit.js +0 -199
- package/dist/src/core/launchable-build.d.ts +0 -39
- package/dist/src/core/launchable-build.js +0 -85
- package/dist/src/core/license-headers.d.ts +0 -103
- package/dist/src/core/license-headers.js +0 -328
- package/dist/src/core/line-prefixer.d.ts +0 -18
- package/dist/src/core/line-prefixer.js +0 -34
- package/dist/src/core/lit-template-regions.d.ts +0 -4
- package/dist/src/core/lit-template-regions.js +0 -50
- package/dist/src/core/mach-build-artifacts.d.ts +0 -176
- package/dist/src/core/mach-build-artifacts.js +0 -436
- package/dist/src/core/mach-error-hints.d.ts +0 -24
- package/dist/src/core/mach-error-hints.js +0 -135
- package/dist/src/core/mach-known-noise-filter.d.ts +0 -122
- package/dist/src/core/mach-known-noise-filter.js +0 -257
- package/dist/src/core/mach-mozconfig.d.ts +0 -57
- package/dist/src/core/mach-mozconfig.js +0 -166
- package/dist/src/core/mach-python.d.ts +0 -19
- package/dist/src/core/mach-python.js +0 -131
- package/dist/src/core/mach-resource-shim.d.ts +0 -107
- package/dist/src/core/mach-resource-shim.js +0 -640
- package/dist/src/core/mach.d.ts +0 -284
- package/dist/src/core/mach.js +0 -445
- package/dist/src/core/marionette-port.d.ts +0 -153
- package/dist/src/core/marionette-port.js +0 -474
- package/dist/src/core/marionette-preflight.d.ts +0 -58
- package/dist/src/core/marionette-preflight.js +0 -332
- package/dist/src/core/markdown-table.d.ts +0 -104
- package/dist/src/core/markdown-table.js +0 -265
- package/dist/src/core/mochitest-server-port.d.ts +0 -81
- package/dist/src/core/mochitest-server-port.js +0 -175
- package/dist/src/core/module-resolution-preflight.d.ts +0 -65
- package/dist/src/core/module-resolution-preflight.js +0 -171
- package/dist/src/core/moz-manifest-helpers.d.ts +0 -79
- package/dist/src/core/moz-manifest-helpers.js +0 -163
- package/dist/src/core/moz-manifest-register.d.ts +0 -19
- package/dist/src/core/moz-manifest-register.js +0 -51
- package/dist/src/core/moz-manifest-rules.d.ts +0 -58
- package/dist/src/core/moz-manifest-rules.js +0 -264
- package/dist/src/core/moz-manifest-tokenizers.d.ts +0 -38
- package/dist/src/core/moz-manifest-tokenizers.js +0 -108
- package/dist/src/core/negative-control-compiled.d.ts +0 -46
- package/dist/src/core/negative-control-compiled.js +0 -109
- package/dist/src/core/negative-control-diff.d.ts +0 -51
- package/dist/src/core/negative-control-diff.js +0 -167
- package/dist/src/core/negative-control.d.ts +0 -150
- package/dist/src/core/negative-control.js +0 -399
- package/dist/src/core/objdir-install-manifests.d.ts +0 -73
- package/dist/src/core/objdir-install-manifests.js +0 -226
- package/dist/src/core/objdir-maintenance.d.ts +0 -10
- package/dist/src/core/objdir-maintenance.js +0 -167
- package/dist/src/core/ownership-table.d.ts +0 -53
- package/dist/src/core/ownership-table.js +0 -159
- package/dist/src/core/parent-exit-watchdog.d.ts +0 -62
- package/dist/src/core/parent-exit-watchdog.js +0 -69
- package/dist/src/core/park-store.d.ts +0 -63
- package/dist/src/core/park-store.js +0 -216
- package/dist/src/core/parser-fallback.d.ts +0 -50
- package/dist/src/core/parser-fallback.js +0 -61
- package/dist/src/core/patch-apply-fuzz.d.ts +0 -57
- package/dist/src/core/patch-apply-fuzz.js +0 -125
- package/dist/src/core/patch-apply.d.ts +0 -88
- package/dist/src/core/patch-apply.js +0 -435
- package/dist/src/core/patch-export-coverage.d.ts +0 -49
- package/dist/src/core/patch-export-coverage.js +0 -73
- package/dist/src/core/patch-export-metadata.d.ts +0 -46
- package/dist/src/core/patch-export-metadata.js +0 -47
- package/dist/src/core/patch-export-update.d.ts +0 -55
- package/dist/src/core/patch-export-update.js +0 -95
- package/dist/src/core/patch-export.d.ts +0 -175
- package/dist/src/core/patch-export.js +0 -312
- package/dist/src/core/patch-files.d.ts +0 -17
- package/dist/src/core/patch-files.js +0 -59
- package/dist/src/core/patch-identifier-suggest.d.ts +0 -26
- package/dist/src/core/patch-identifier-suggest.js +0 -135
- package/dist/src/core/patch-lint-binary.d.ts +0 -45
- package/dist/src/core/patch-lint-binary.js +0 -39
- package/dist/src/core/patch-lint-cache-checkjs.d.ts +0 -45
- package/dist/src/core/patch-lint-cache-checkjs.js +0 -195
- package/dist/src/core/patch-lint-cache.d.ts +0 -79
- package/dist/src/core/patch-lint-cache.js +0 -247
- package/dist/src/core/patch-lint-checkjs-any-import.d.ts +0 -57
- package/dist/src/core/patch-lint-checkjs-any-import.js +0 -91
- package/dist/src/core/patch-lint-checkjs-cache.d.ts +0 -18
- package/dist/src/core/patch-lint-checkjs-cache.js +0 -45
- package/dist/src/core/patch-lint-checkjs-diagnostics.d.ts +0 -17
- package/dist/src/core/patch-lint-checkjs-diagnostics.js +0 -32
- package/dist/src/core/patch-lint-checkjs-resolve.d.ts +0 -31
- package/dist/src/core/patch-lint-checkjs-resolve.js +0 -86
- package/dist/src/core/patch-lint-checkjs.d.ts +0 -182
- package/dist/src/core/patch-lint-checkjs.js +0 -563
- package/dist/src/core/patch-lint-chrome-jsdoc.d.ts +0 -43
- package/dist/src/core/patch-lint-chrome-jsdoc.js +0 -90
- package/dist/src/core/patch-lint-code-lines.d.ts +0 -59
- package/dist/src/core/patch-lint-code-lines.js +0 -105
- package/dist/src/core/patch-lint-creators.d.ts +0 -26
- package/dist/src/core/patch-lint-creators.js +0 -45
- package/dist/src/core/patch-lint-cross.d.ts +0 -232
- package/dist/src/core/patch-lint-cross.js +0 -590
- package/dist/src/core/patch-lint-css.d.ts +0 -27
- package/dist/src/core/patch-lint-css.js +0 -228
- package/dist/src/core/patch-lint-diff-tag.d.ts +0 -51
- package/dist/src/core/patch-lint-diff-tag.js +0 -105
- package/dist/src/core/patch-lint-diff.d.ts +0 -42
- package/dist/src/core/patch-lint-diff.js +0 -100
- package/dist/src/core/patch-lint-file-size.d.ts +0 -57
- package/dist/src/core/patch-lint-file-size.js +0 -62
- package/dist/src/core/patch-lint-forward-registration-extended.d.ts +0 -61
- package/dist/src/core/patch-lint-forward-registration-extended.js +0 -265
- package/dist/src/core/patch-lint-forward-registration.d.ts +0 -71
- package/dist/src/core/patch-lint-forward-registration.js +0 -266
- package/dist/src/core/patch-lint-ignore.d.ts +0 -196
- package/dist/src/core/patch-lint-ignore.js +0 -429
- package/dist/src/core/patch-lint-imports.d.ts +0 -9
- package/dist/src/core/patch-lint-imports.js +0 -90
- package/dist/src/core/patch-lint-jsdoc.d.ts +0 -67
- package/dist/src/core/patch-lint-jsdoc.js +0 -471
- package/dist/src/core/patch-lint-module-registration.d.ts +0 -22
- package/dist/src/core/patch-lint-module-registration.js +0 -97
- package/dist/src/core/patch-lint-mozbuild.d.ts +0 -18
- package/dist/src/core/patch-lint-mozbuild.js +0 -192
- package/dist/src/core/patch-lint-observer.d.ts +0 -37
- package/dist/src/core/patch-lint-observer.js +0 -167
- package/dist/src/core/patch-lint-ownership.d.ts +0 -74
- package/dist/src/core/patch-lint-ownership.js +0 -125
- package/dist/src/core/patch-lint-prettier.d.ts +0 -34
- package/dist/src/core/patch-lint-prettier.js +0 -124
- package/dist/src/core/patch-lint-projection.d.ts +0 -25
- package/dist/src/core/patch-lint-projection.js +0 -43
- package/dist/src/core/patch-lint-queue-types.d.ts +0 -60
- package/dist/src/core/patch-lint-queue-types.js +0 -12
- package/dist/src/core/patch-lint-size-thresholds.d.ts +0 -52
- package/dist/src/core/patch-lint-size-thresholds.js +0 -110
- package/dist/src/core/patch-lint-size.d.ts +0 -117
- package/dist/src/core/patch-lint-size.js +0 -331
- package/dist/src/core/patch-lint-staged-registration.d.ts +0 -98
- package/dist/src/core/patch-lint-staged-registration.js +0 -128
- package/dist/src/core/patch-lint-token-scale.d.ts +0 -65
- package/dist/src/core/patch-lint-token-scale.js +0 -304
- package/dist/src/core/patch-lint-unmanaged-companion.d.ts +0 -106
- package/dist/src/core/patch-lint-unmanaged-companion.js +0 -214
- package/dist/src/core/patch-lint.d.ts +0 -206
- package/dist/src/core/patch-lint.js +0 -533
- package/dist/src/core/patch-lock.d.ts +0 -40
- package/dist/src/core/patch-lock.js +0 -129
- package/dist/src/core/patch-manifest-consistency.d.ts +0 -95
- package/dist/src/core/patch-manifest-consistency.js +0 -256
- package/dist/src/core/patch-manifest-files-affected.d.ts +0 -43
- package/dist/src/core/patch-manifest-files-affected.js +0 -77
- package/dist/src/core/patch-manifest-io.d.ts +0 -199
- package/dist/src/core/patch-manifest-io.js +0 -556
- package/dist/src/core/patch-manifest-key-order.d.ts +0 -23
- package/dist/src/core/patch-manifest-key-order.js +0 -60
- package/dist/src/core/patch-manifest-query.d.ts +0 -55
- package/dist/src/core/patch-manifest-query.js +0 -139
- package/dist/src/core/patch-manifest-resolve.d.ts +0 -21
- package/dist/src/core/patch-manifest-resolve.js +0 -35
- package/dist/src/core/patch-manifest-stage.d.ts +0 -46
- package/dist/src/core/patch-manifest-stage.js +0 -96
- package/dist/src/core/patch-manifest-validate.d.ts +0 -20
- package/dist/src/core/patch-manifest-validate.js +0 -240
- package/dist/src/core/patch-manifest.d.ts +0 -12
- package/dist/src/core/patch-manifest.js +0 -13
- package/dist/src/core/patch-order-legal.d.ts +0 -26
- package/dist/src/core/patch-order-legal.js +0 -88
- package/dist/src/core/patch-parse.d.ts +0 -176
- package/dist/src/core/patch-parse.js +0 -416
- package/dist/src/core/patch-policy-content.d.ts +0 -40
- package/dist/src/core/patch-policy-content.js +0 -219
- package/dist/src/core/patch-policy.d.ts +0 -80
- package/dist/src/core/patch-policy.js +0 -394
- package/dist/src/core/patch-registration-refs.d.ts +0 -41
- package/dist/src/core/patch-registration-refs.js +0 -107
- package/dist/src/core/patch-retired.d.ts +0 -57
- package/dist/src/core/patch-retired.js +0 -92
- package/dist/src/core/patch-source-metadata.d.ts +0 -6
- package/dist/src/core/patch-source-metadata.js +0 -12
- package/dist/src/core/patch-subset.d.ts +0 -18
- package/dist/src/core/patch-subset.js +0 -67
- package/dist/src/core/patch-transform.d.ts +0 -61
- package/dist/src/core/patch-transform.js +0 -198
- package/dist/src/core/preflight-wait.d.ts +0 -22
- package/dist/src/core/preflight-wait.js +0 -62
- package/dist/src/core/process-cpu-time.d.ts +0 -12
- package/dist/src/core/process-cpu-time.js +0 -52
- package/dist/src/core/process-owner.d.ts +0 -9
- package/dist/src/core/process-owner.js +0 -43
- package/dist/src/core/rebase-dry-run.d.ts +0 -48
- package/dist/src/core/rebase-dry-run.js +0 -105
- package/dist/src/core/rebase-from-version.d.ts +0 -46
- package/dist/src/core/rebase-from-version.js +0 -71
- package/dist/src/core/rebase-session.d.ts +0 -100
- package/dist/src/core/rebase-session.js +0 -174
- package/dist/src/core/register-browser-content.d.ts +0 -11
- package/dist/src/core/register-browser-content.js +0 -52
- package/dist/src/core/register-browser-test.d.ts +0 -18
- package/dist/src/core/register-browser-test.js +0 -66
- package/dist/src/core/register-module.d.ts +0 -11
- package/dist/src/core/register-module.js +0 -56
- package/dist/src/core/register-result.d.ts +0 -30
- package/dist/src/core/register-result.js +0 -8
- package/dist/src/core/register-scaffold.d.ts +0 -55
- package/dist/src/core/register-scaffold.js +0 -146
- package/dist/src/core/register-shared-css.d.ts +0 -36
- package/dist/src/core/register-shared-css.js +0 -112
- package/dist/src/core/register-xpcshell-test.d.ts +0 -50
- package/dist/src/core/register-xpcshell-test.js +0 -143
- package/dist/src/core/run-log-redact.d.ts +0 -38
- package/dist/src/core/run-log-redact.js +0 -69
- package/dist/src/core/run-log.d.ts +0 -97
- package/dist/src/core/run-log.js +0 -334
- package/dist/src/core/run-profile.d.ts +0 -57
- package/dist/src/core/run-profile.js +0 -137
- package/dist/src/core/shared-ftl.d.ts +0 -28
- package/dist/src/core/shared-ftl.js +0 -49
- package/dist/src/core/signal-critical.d.ts +0 -38
- package/dist/src/core/signal-critical.js +0 -62
- package/dist/src/core/smoke-patterns.d.ts +0 -81
- package/dist/src/core/smoke-patterns.js +0 -176
- package/dist/src/core/state-file.d.ts +0 -60
- package/dist/src/core/state-file.js +0 -71
- package/dist/src/core/status-binary.d.ts +0 -62
- package/dist/src/core/status-binary.js +0 -133
- package/dist/src/core/status-classify.d.ts +0 -96
- package/dist/src/core/status-classify.js +0 -244
- package/dist/src/core/test-changed-prefs.d.ts +0 -30
- package/dist/src/core/test-changed-prefs.js +0 -93
- package/dist/src/core/test-harness-crash.d.ts +0 -251
- package/dist/src/core/test-harness-crash.js +0 -780
- package/dist/src/core/test-harness-infra.d.ts +0 -32
- package/dist/src/core/test-harness-infra.js +0 -69
- package/dist/src/core/test-harness-output.d.ts +0 -45
- package/dist/src/core/test-harness-output.js +0 -119
- package/dist/src/core/test-harness-signature.d.ts +0 -57
- package/dist/src/core/test-harness-signature.js +0 -35
- package/dist/src/core/test-harness-verdict-notes.d.ts +0 -54
- package/dist/src/core/test-harness-verdict-notes.js +0 -48
- package/dist/src/core/test-host-state.d.ts +0 -14
- package/dist/src/core/test-host-state.js +0 -80
- package/dist/src/core/test-path-scope.d.ts +0 -59
- package/dist/src/core/test-path-scope.js +0 -147
- package/dist/src/core/test-profile-files.d.ts +0 -17
- package/dist/src/core/test-profile-files.js +0 -75
- package/dist/src/core/test-raw-log.d.ts +0 -66
- package/dist/src/core/test-raw-log.js +0 -122
- package/dist/src/core/test-run-completeness.d.ts +0 -97
- package/dist/src/core/test-run-completeness.js +0 -191
- package/dist/src/core/test-stale-check.d.ts +0 -213
- package/dist/src/core/test-stale-check.js +0 -396
- package/dist/src/core/test-stale-exempt.d.ts +0 -40
- package/dist/src/core/test-stale-exempt.js +0 -70
- package/dist/src/core/test-stale-symlink.d.ts +0 -12
- package/dist/src/core/test-stale-symlink.js +0 -39
- package/dist/src/core/test-stall-triage.d.ts +0 -51
- package/dist/src/core/test-stall-triage.js +0 -142
- package/dist/src/core/test-xpcshell-retry.d.ts +0 -35
- package/dist/src/core/test-xpcshell-retry.js +0 -31
- package/dist/src/core/token-category.d.ts +0 -54
- package/dist/src/core/token-category.js +0 -299
- package/dist/src/core/token-coverage.d.ts +0 -12
- package/dist/src/core/token-coverage.js +0 -96
- package/dist/src/core/token-dark-mode.d.ts +0 -64
- package/dist/src/core/token-dark-mode.js +0 -186
- package/dist/src/core/token-docs.d.ts +0 -34
- package/dist/src/core/token-docs.js +0 -102
- package/dist/src/core/token-inventory.d.ts +0 -56
- package/dist/src/core/token-inventory.js +0 -114
- package/dist/src/core/token-lint.d.ts +0 -53
- package/dist/src/core/token-lint.js +0 -131
- package/dist/src/core/token-manager.d.ts +0 -87
- package/dist/src/core/token-manager.js +0 -407
- package/dist/src/core/token-scaffold.d.ts +0 -36
- package/dist/src/core/token-scaffold.js +0 -73
- package/dist/src/core/token-sibling-sheets.d.ts +0 -46
- package/dist/src/core/token-sibling-sheets.js +0 -119
- package/dist/src/core/token-variant.d.ts +0 -90
- package/dist/src/core/token-variant.js +0 -327
- package/dist/src/core/toolchain-preflight.d.ts +0 -90
- package/dist/src/core/toolchain-preflight.js +0 -251
- package/dist/src/core/tree-cow.d.ts +0 -16
- package/dist/src/core/tree-cow.js +0 -71
- package/dist/src/core/tree-guard.d.ts +0 -35
- package/dist/src/core/tree-guard.js +0 -194
- package/dist/src/core/tree-store.d.ts +0 -143
- package/dist/src/core/tree-store.js +0 -478
- package/dist/src/core/typecheck-explain.d.ts +0 -93
- package/dist/src/core/typecheck-explain.js +0 -213
- package/dist/src/core/typecheck-shim.d.ts +0 -90
- package/dist/src/core/typecheck-shim.js +0 -508
- package/dist/src/core/typecheck.d.ts +0 -97
- package/dist/src/core/typecheck.js +0 -457
- package/dist/src/core/wire-destroy.d.ts +0 -25
- package/dist/src/core/wire-destroy.js +0 -126
- package/dist/src/core/wire-dom-fragment.d.ts +0 -44
- package/dist/src/core/wire-dom-fragment.js +0 -139
- package/dist/src/core/wire-init.d.ts +0 -28
- package/dist/src/core/wire-init.js +0 -219
- package/dist/src/core/wire-subscript.d.ts +0 -23
- package/dist/src/core/wire-subscript.js +0 -145
- package/dist/src/core/wire-utils.d.ts +0 -149
- package/dist/src/core/wire-utils.js +0 -338
- package/dist/src/core/xpcshell-appdir.d.ts +0 -157
- package/dist/src/core/xpcshell-appdir.js +0 -299
- package/dist/src/core/xpcshell-profile-dir.d.ts +0 -12
- package/dist/src/core/xpcshell-profile-dir.js +0 -45
- package/dist/src/errors/base.d.ts +0 -217
- package/dist/src/errors/base.js +0 -279
- package/dist/src/errors/build.d.ts +0 -92
- package/dist/src/errors/build.js +0 -166
- package/dist/src/errors/codes.d.ts +0 -74
- package/dist/src/errors/codes.js +0 -74
- package/dist/src/errors/config.d.ts +0 -17
- package/dist/src/errors/config.js +0 -39
- package/dist/src/errors/download.d.ts +0 -66
- package/dist/src/errors/download.js +0 -160
- package/dist/src/errors/furnace.d.ts +0 -20
- package/dist/src/errors/furnace.js +0 -28
- package/dist/src/errors/git.d.ts +0 -65
- package/dist/src/errors/git.js +0 -140
- package/dist/src/errors/patch.d.ts +0 -27
- package/dist/src/errors/patch.js +0 -52
- package/dist/src/errors/rebase.d.ts +0 -42
- package/dist/src/errors/rebase.js +0 -71
- package/dist/src/errors/run.d.ts +0 -16
- package/dist/src/errors/run.js +0 -22
- package/dist/src/index.d.ts +0 -42
- package/dist/src/index.js +0 -32
- package/dist/src/types/cli.d.ts +0 -14
- package/dist/src/types/commands/index.d.ts +0 -6
- package/dist/src/types/commands/index.js +0 -5
- package/dist/src/types/commands/options.d.ts +0 -1372
- package/dist/src/types/commands/options.js +0 -5
- package/dist/src/types/commands/patches.d.ts +0 -352
- package/dist/src/types/commands/patches.js +0 -5
- package/dist/src/types/commands/project.d.ts +0 -51
- package/dist/src/types/commands/project.js +0 -5
- package/dist/src/types/config.d.ts +0 -732
- package/dist/src/types/config.js +0 -15
- package/dist/src/types/furnace.d.ts +0 -422
- package/dist/src/types/furnace.js +0 -26
- package/dist/src/types/index.d.ts +0 -5
- package/dist/src/types/index.js +0 -5
- package/dist/src/types/json.d.ts +0 -22
- package/dist/src/types/json.js +0 -11
- package/dist/src/types/typecheck.d.ts +0 -51
- package/dist/src/types/typecheck.js +0 -14
- package/dist/src/utils/assert.d.ts +0 -34
- package/dist/src/utils/assert.js +0 -61
- package/dist/src/utils/build-info.d.ts +0 -30
- package/dist/src/utils/build-info.js +0 -99
- package/dist/src/utils/child-env.d.ts +0 -28
- package/dist/src/utils/child-env.js +0 -27
- package/dist/src/utils/concurrency.d.ts +0 -8
- package/dist/src/utils/concurrency.js +0 -32
- package/dist/src/utils/elapsed.d.ts +0 -2
- package/dist/src/utils/elapsed.js +0 -23
- package/dist/src/utils/errors.d.ts +0 -39
- package/dist/src/utils/errors.js +0 -67
- package/dist/src/utils/fs.d.ts +0 -113
- package/dist/src/utils/fs.js +0 -337
- package/dist/src/utils/hash.d.ts +0 -12
- package/dist/src/utils/hash.js +0 -16
- package/dist/src/utils/line-dispatch.d.ts +0 -15
- package/dist/src/utils/line-dispatch.js +0 -48
- package/dist/src/utils/logger.d.ts +0 -109
- package/dist/src/utils/logger.js +0 -270
- package/dist/src/utils/machine-output.d.ts +0 -12
- package/dist/src/utils/machine-output.js +0 -33
- package/dist/src/utils/options.d.ts +0 -155
- package/dist/src/utils/options.js +0 -312
- package/dist/src/utils/package-root.d.ts +0 -21
- package/dist/src/utils/package-root.js +0 -70
- package/dist/src/utils/parse.d.ts +0 -117
- package/dist/src/utils/parse.js +0 -214
- package/dist/src/utils/path-glob.d.ts +0 -15
- package/dist/src/utils/path-glob.js +0 -47
- package/dist/src/utils/paths.d.ts +0 -31
- package/dist/src/utils/paths.js +0 -80
- package/dist/src/utils/platform.d.ts +0 -9
- package/dist/src/utils/platform.js +0 -14
- package/dist/src/utils/process-group.d.ts +0 -42
- package/dist/src/utils/process-group.js +0 -190
- package/dist/src/utils/process-input.d.ts +0 -27
- package/dist/src/utils/process-input.js +0 -46
- package/dist/src/utils/process.d.ts +0 -293
- package/dist/src/utils/process.js +0 -593
- package/dist/src/utils/ps-duration.d.ts +0 -31
- package/dist/src/utils/ps-duration.js +0 -70
- package/dist/src/utils/regex.d.ts +0 -39
- package/dist/src/utils/regex.js +0 -109
- package/dist/src/utils/sleep.d.ts +0 -25
- package/dist/src/utils/sleep.js +0 -30
- package/dist/src/utils/stdio-drain.d.ts +0 -28
- package/dist/src/utils/stdio-drain.js +0 -54
- package/dist/src/utils/validation.d.ts +0 -182
- package/dist/src/utils/validation.js +0 -394
- package/docs/lifecycle-invariants.md +0 -523
- package/docs/run-logs.md +0 -122
- package/docs/verification-trees.md +0 -49
- /package/dist/src/{types/cli.js → cli/context.js} +0 -0
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/** A patch to replay, in queue order. */
|
|
2
|
-
export interface DryRunPatch {
|
|
3
|
-
filename: string;
|
|
4
|
-
path: string;
|
|
5
|
-
}
|
|
6
|
-
/** What the real rebase loop would do with one patch. */
|
|
7
|
-
export type DryRunVerdict = {
|
|
8
|
-
filename: string;
|
|
9
|
-
outcome: 'clean';
|
|
10
|
-
} | {
|
|
11
|
-
filename: string;
|
|
12
|
-
outcome: 'reduced-context';
|
|
13
|
-
step: number;
|
|
14
|
-
contextArg: string;
|
|
15
|
-
} | {
|
|
16
|
-
filename: string;
|
|
17
|
-
outcome: 'reject';
|
|
18
|
-
/** Files git named as not applying. Empty when stderr named none. */
|
|
19
|
-
files: string[];
|
|
20
|
-
/** git's own explanation, from the exact-context `--check`. */
|
|
21
|
-
detail: string;
|
|
22
|
-
};
|
|
23
|
-
/** Result of a full queue replay. */
|
|
24
|
-
export interface DryRunReplay {
|
|
25
|
-
verdicts: DryRunVerdict[];
|
|
26
|
-
/**
|
|
27
|
-
* Index of the first reject, or `undefined`. Verdicts after it were
|
|
28
|
-
* computed without that patch applied, so a reject there may cascade from
|
|
29
|
-
* the earlier one rather than be a conflict of its own.
|
|
30
|
-
*/
|
|
31
|
-
firstRejectIndex: number | undefined;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Parses the file names out of `git apply --check` failure output. Git
|
|
35
|
-
* reports a context mismatch as `error: patch failed: <file>:<line>` and
|
|
36
|
-
* `error: <file>: patch does not apply`, and a missing or pre-existing
|
|
37
|
-
* target as `error: <file>: does not exist in index` /
|
|
38
|
-
* `error: <file>: already exists in index`.
|
|
39
|
-
*/
|
|
40
|
-
export declare function parseApplyCheckFailures(stderr: string): string[];
|
|
41
|
-
/**
|
|
42
|
-
* Replays `patches` onto the engine's HEAD tree in a private index.
|
|
43
|
-
* @param engineDir - Engine repository root
|
|
44
|
-
* @param patches - Patches in queue order
|
|
45
|
-
* @param maxFuzz - Maximum context-reduction steps, as for the real rebase
|
|
46
|
-
* @returns One verdict per patch
|
|
47
|
-
*/
|
|
48
|
-
export declare function replayQueueIndexOnly(engineDir: string, patches: readonly DryRunPatch[], maxFuzz: number): Promise<DryRunReplay>;
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* `rebase --dry-run`: replays the patch queue against the engine's base
|
|
4
|
-
* commit without touching `engine/`.
|
|
5
|
-
*
|
|
6
|
-
* The replay runs on a private index seeded from HEAD (`GIT_INDEX_FILE`
|
|
7
|
-
* plus `git read-tree HEAD`) and applies each patch there with
|
|
8
|
-
* `git apply --cached`, in queue order, so a later patch sees what the
|
|
9
|
-
* earlier ones did, exactly as the real loop's worktree does. Each patch
|
|
10
|
-
* walks the same context-reduction ladder as {@link applyPatchWithFuzz}.
|
|
11
|
-
* The worktree and the real index are never written. The private index is
|
|
12
|
-
* deleted when the replay ends.
|
|
13
|
-
*/
|
|
14
|
-
import { mkdtemp, rm } from 'node:fs/promises';
|
|
15
|
-
import { tmpdir } from 'node:os';
|
|
16
|
-
import { join } from 'node:path';
|
|
17
|
-
import { GitError } from '../errors/git.js';
|
|
18
|
-
import { exec } from '../utils/process.js';
|
|
19
|
-
import { ensureGit } from './git-base.js';
|
|
20
|
-
import { assertValidMaxFuzz, contextReductionSteps } from './patch-apply-fuzz.js';
|
|
21
|
-
/**
|
|
22
|
-
* Parses the file names out of `git apply --check` failure output. Git
|
|
23
|
-
* reports a context mismatch as `error: patch failed: <file>:<line>` and
|
|
24
|
-
* `error: <file>: patch does not apply`, and a missing or pre-existing
|
|
25
|
-
* target as `error: <file>: does not exist in index` /
|
|
26
|
-
* `error: <file>: already exists in index`.
|
|
27
|
-
*/
|
|
28
|
-
export function parseApplyCheckFailures(stderr) {
|
|
29
|
-
const files = new Set();
|
|
30
|
-
for (const line of stderr.split('\n')) {
|
|
31
|
-
const failed = /^error: patch failed: (.+):\d+$/.exec(line);
|
|
32
|
-
if (failed?.[1]) {
|
|
33
|
-
files.add(failed[1]);
|
|
34
|
-
continue;
|
|
35
|
-
}
|
|
36
|
-
const named = /^error: (.+?): (?:patch does not apply|does not exist in index|already exists in index)$/.exec(line);
|
|
37
|
-
if (named?.[1])
|
|
38
|
-
files.add(named[1]);
|
|
39
|
-
}
|
|
40
|
-
return [...files];
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Replays `patches` onto the engine's HEAD tree in a private index.
|
|
44
|
-
* @param engineDir - Engine repository root
|
|
45
|
-
* @param patches - Patches in queue order
|
|
46
|
-
* @param maxFuzz - Maximum context-reduction steps, as for the real rebase
|
|
47
|
-
* @returns One verdict per patch
|
|
48
|
-
*/
|
|
49
|
-
export async function replayQueueIndexOnly(engineDir, patches, maxFuzz) {
|
|
50
|
-
assertValidMaxFuzz(maxFuzz);
|
|
51
|
-
await ensureGit();
|
|
52
|
-
const scratch = await mkdtemp(join(tmpdir(), 'fireforge-rebase-dry-run-'));
|
|
53
|
-
const env = { GIT_INDEX_FILE: join(scratch, 'index') };
|
|
54
|
-
try {
|
|
55
|
-
const seeded = await exec('git', ['read-tree', 'HEAD'], { cwd: engineDir, env });
|
|
56
|
-
if (seeded.exitCode !== 0) {
|
|
57
|
-
throw new GitError(seeded.stderr.trim() || 'Could not seed a private index from HEAD', 'read-tree HEAD');
|
|
58
|
-
}
|
|
59
|
-
const ladder = contextReductionSteps(maxFuzz);
|
|
60
|
-
const verdicts = [];
|
|
61
|
-
let firstRejectIndex;
|
|
62
|
-
for (const patch of patches) {
|
|
63
|
-
let verdict;
|
|
64
|
-
let exactFailure = '';
|
|
65
|
-
for (const [step, contextArgs] of ladder.entries()) {
|
|
66
|
-
const check = await exec('git', ['apply', '--cached', '--check', ...contextArgs, '--', patch.path], { cwd: engineDir, env });
|
|
67
|
-
if (check.exitCode !== 0) {
|
|
68
|
-
if (step === 0)
|
|
69
|
-
exactFailure = check.stderr;
|
|
70
|
-
continue;
|
|
71
|
-
}
|
|
72
|
-
const apply = await exec('git', ['apply', '--cached', ...contextArgs, '--', patch.path], {
|
|
73
|
-
cwd: engineDir,
|
|
74
|
-
env,
|
|
75
|
-
});
|
|
76
|
-
if (apply.exitCode !== 0)
|
|
77
|
-
continue;
|
|
78
|
-
verdict =
|
|
79
|
-
step === 0
|
|
80
|
-
? { filename: patch.filename, outcome: 'clean' }
|
|
81
|
-
: {
|
|
82
|
-
filename: patch.filename,
|
|
83
|
-
outcome: 'reduced-context',
|
|
84
|
-
step,
|
|
85
|
-
contextArg: contextArgs[0] ?? '',
|
|
86
|
-
};
|
|
87
|
-
break;
|
|
88
|
-
}
|
|
89
|
-
if (verdict === undefined) {
|
|
90
|
-
verdict = {
|
|
91
|
-
filename: patch.filename,
|
|
92
|
-
outcome: 'reject',
|
|
93
|
-
files: parseApplyCheckFailures(exactFailure),
|
|
94
|
-
detail: exactFailure.trim(),
|
|
95
|
-
};
|
|
96
|
-
firstRejectIndex ??= verdicts.length;
|
|
97
|
-
}
|
|
98
|
-
verdicts.push(verdict);
|
|
99
|
-
}
|
|
100
|
-
return { verdicts, firstRejectIndex };
|
|
101
|
-
}
|
|
102
|
-
finally {
|
|
103
|
-
await rm(scratch, { recursive: true, force: true });
|
|
104
|
-
}
|
|
105
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Resolves the "from" side of a `fireforge rebase` source move.
|
|
3
|
-
*
|
|
4
|
-
* The rebase target is the working `firefox.version` pin, which
|
|
5
|
-
* `fireforge source set` has already moved. The tree the queue was last
|
|
6
|
-
* applied to is the previous pin: the `firefox` block of `fireforge.json`
|
|
7
|
-
* as committed in the project repository. Patch `sourceVersion` stamps are
|
|
8
|
-
* a poor stand-in: patches untouched since an older hop keep their older
|
|
9
|
-
* stamp, so the oldest stamp can trail the real previous tree by several
|
|
10
|
-
* releases. The stamps are only the fallback, for a project that is not a
|
|
11
|
-
* git checkout or whose committed pin already equals the target.
|
|
12
|
-
*/
|
|
13
|
-
import type { FirefoxProduct } from '../types/config.js';
|
|
14
|
-
/** A `firefox.version` / `firefox.product` pair. */
|
|
15
|
-
export interface FirefoxPin {
|
|
16
|
-
version: string;
|
|
17
|
-
product?: FirefoxProduct;
|
|
18
|
-
}
|
|
19
|
-
/** Where the rebase's "from" label came from. */
|
|
20
|
-
export interface RebaseFromVersion extends FirefoxPin {
|
|
21
|
-
/** `committed-pin`: the project's committed `fireforge.json`; `patch-stamps`: the oldest stamp. */
|
|
22
|
-
origin: 'committed-pin' | 'patch-stamps';
|
|
23
|
-
}
|
|
24
|
-
/** Tally of the queue's `sourceVersion` stamps, oldest first. */
|
|
25
|
-
export interface PatchStampSpread {
|
|
26
|
-
versions: string[];
|
|
27
|
-
counts: Map<string, number>;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Reads the `firefox` pin from `fireforge.json` as committed at the project
|
|
31
|
-
* repository's HEAD. `HEAD:./fireforge.json` resolves relative to the
|
|
32
|
-
* project root, so a project nested inside a larger repository works too.
|
|
33
|
-
* Returns `undefined` when there is no repository, no commit, no committed
|
|
34
|
-
* config, or no valid pin in it.
|
|
35
|
-
*/
|
|
36
|
-
export declare function readCommittedFirefoxPin(projectRoot: string): Promise<FirefoxPin | undefined>;
|
|
37
|
-
/** Counts the queue's stamps and orders them semantically (a lexical sort put 153.10.0esr before 153.2.0esr). */
|
|
38
|
-
export declare function tallyPatchStamps(stamps: readonly string[]): PatchStampSpread;
|
|
39
|
-
/** `"317 at 153.0esr, 5 at 153.3.0esr"`. */
|
|
40
|
-
export declare function formatPatchStampSpread(spread: PatchStampSpread): string;
|
|
41
|
-
/**
|
|
42
|
-
* Picks the rebase's "from": the committed pin when it differs from the
|
|
43
|
-
* target, otherwise the oldest patch stamp (`oldestStampProduct` is that
|
|
44
|
-
* stamp's recorded product, when any patch carries one).
|
|
45
|
-
*/
|
|
46
|
-
export declare function resolveRebaseFromVersion(target: string, committed: FirefoxPin | undefined, spread: PatchStampSpread, oldestStampProduct: FirefoxProduct | undefined): RebaseFromVersion;
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Resolves the "from" side of a `fireforge rebase` source move.
|
|
4
|
-
*
|
|
5
|
-
* The rebase target is the working `firefox.version` pin, which
|
|
6
|
-
* `fireforge source set` has already moved. The tree the queue was last
|
|
7
|
-
* applied to is the previous pin: the `firefox` block of `fireforge.json`
|
|
8
|
-
* as committed in the project repository. Patch `sourceVersion` stamps are
|
|
9
|
-
* a poor stand-in: patches untouched since an older hop keep their older
|
|
10
|
-
* stamp, so the oldest stamp can trail the real previous tree by several
|
|
11
|
-
* releases. The stamps are only the fallback, for a project that is not a
|
|
12
|
-
* git checkout or whose committed pin already equals the target.
|
|
13
|
-
*/
|
|
14
|
-
import { exec } from '../utils/process.js';
|
|
15
|
-
import { compareFirefoxVersions, isObject, isValidFirefoxProduct, isValidFirefoxVersion, } from '../utils/validation.js';
|
|
16
|
-
/**
|
|
17
|
-
* Reads the `firefox` pin from `fireforge.json` as committed at the project
|
|
18
|
-
* repository's HEAD. `HEAD:./fireforge.json` resolves relative to the
|
|
19
|
-
* project root, so a project nested inside a larger repository works too.
|
|
20
|
-
* Returns `undefined` when there is no repository, no commit, no committed
|
|
21
|
-
* config, or no valid pin in it.
|
|
22
|
-
*/
|
|
23
|
-
export async function readCommittedFirefoxPin(projectRoot) {
|
|
24
|
-
const result = await exec('git', ['show', 'HEAD:./fireforge.json'], { cwd: projectRoot }).catch(() => undefined);
|
|
25
|
-
if (result?.exitCode !== 0)
|
|
26
|
-
return undefined;
|
|
27
|
-
let parsed;
|
|
28
|
-
try {
|
|
29
|
-
parsed = JSON.parse(result.stdout);
|
|
30
|
-
}
|
|
31
|
-
catch {
|
|
32
|
-
return undefined;
|
|
33
|
-
}
|
|
34
|
-
const firefox = isObject(parsed) ? parsed['firefox'] : undefined;
|
|
35
|
-
if (!isObject(firefox))
|
|
36
|
-
return undefined;
|
|
37
|
-
const version = firefox['version'];
|
|
38
|
-
if (typeof version !== 'string' || !isValidFirefoxVersion(version))
|
|
39
|
-
return undefined;
|
|
40
|
-
const product = firefox['product'];
|
|
41
|
-
return typeof product === 'string' && isValidFirefoxProduct(product)
|
|
42
|
-
? { version, product }
|
|
43
|
-
: { version };
|
|
44
|
-
}
|
|
45
|
-
/** Counts the queue's stamps and orders them semantically (a lexical sort put 153.10.0esr before 153.2.0esr). */
|
|
46
|
-
export function tallyPatchStamps(stamps) {
|
|
47
|
-
const counts = new Map();
|
|
48
|
-
for (const stamp of stamps)
|
|
49
|
-
counts.set(stamp, (counts.get(stamp) ?? 0) + 1);
|
|
50
|
-
return { versions: [...counts.keys()].sort(compareFirefoxVersions), counts };
|
|
51
|
-
}
|
|
52
|
-
/** `"317 at 153.0esr, 5 at 153.3.0esr"`. */
|
|
53
|
-
export function formatPatchStampSpread(spread) {
|
|
54
|
-
return spread.versions.map((v) => `${spread.counts.get(v)} at ${v}`).join(', ');
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Picks the rebase's "from": the committed pin when it differs from the
|
|
58
|
-
* target, otherwise the oldest patch stamp (`oldestStampProduct` is that
|
|
59
|
-
* stamp's recorded product, when any patch carries one).
|
|
60
|
-
*/
|
|
61
|
-
export function resolveRebaseFromVersion(target, committed, spread, oldestStampProduct) {
|
|
62
|
-
if (committed !== undefined && committed.version !== target) {
|
|
63
|
-
return { ...committed, origin: 'committed-pin' };
|
|
64
|
-
}
|
|
65
|
-
const oldest = spread.versions[0] ?? target;
|
|
66
|
-
return {
|
|
67
|
-
version: oldest,
|
|
68
|
-
...(oldestStampProduct !== undefined ? { product: oldestStampProduct } : {}),
|
|
69
|
-
origin: 'patch-stamps',
|
|
70
|
-
};
|
|
71
|
-
}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Rebase session persistence for multi-patch Firefox source upgrades.
|
|
3
|
-
* Session state is stored at `.fireforge/rebase-session.json` and
|
|
4
|
-
* survives across CLI invocations so the user can fix conflicts and
|
|
5
|
-
* resume with `fireforge rebase --continue`.
|
|
6
|
-
*/
|
|
7
|
-
import type { FirefoxProduct } from '../types/config.js';
|
|
8
|
-
export type RebasePatchStatus = 'pending' | 'applied-clean' | 'applied-fuzz' | 'failed' | 'resolved' | 'skipped';
|
|
9
|
-
/**
|
|
10
|
-
* One patch's outcome in a rebase session.
|
|
11
|
-
*
|
|
12
|
-
* A discriminated union on `status`, so a payload can only be present on the
|
|
13
|
-
* status it belongs to. A flat-optionals shape makes
|
|
14
|
-
* `{ status: 'resolved', error, conflictingFiles }` representable, and
|
|
15
|
-
* `rebase --continue` will write it, flipping the status without clearing
|
|
16
|
-
* the failure payload, then persisting that to the session file.
|
|
17
|
-
*
|
|
18
|
-
* The on-disk validator (`isValidPatchEntry`) is not tightened to
|
|
19
|
-
* match, on purpose. The session file carries no schema version, so a stricter
|
|
20
|
-
* validator would reject an older file mid-rebase, where the only remedies
|
|
21
|
-
* discard the operator's in-progress conflict resolution. Instead
|
|
22
|
-
* {@link normalizeEntry} drops payload that does not belong to the status on
|
|
23
|
-
* read, so an older file loads and is corrected rather than refused.
|
|
24
|
-
*/
|
|
25
|
-
export type RebasePatchEntry = {
|
|
26
|
-
filename: string;
|
|
27
|
-
} & ({
|
|
28
|
-
status: 'pending' | 'applied-clean' | 'skipped' | 'resolved';
|
|
29
|
-
} | {
|
|
30
|
-
status: 'applied-fuzz';
|
|
31
|
-
fuzzFactor: number;
|
|
32
|
-
} | {
|
|
33
|
-
status: 'failed';
|
|
34
|
-
error?: string;
|
|
35
|
-
conflictingFiles?: string[];
|
|
36
|
-
});
|
|
37
|
-
export interface RebaseSession {
|
|
38
|
-
/** ISO timestamp when the rebase started. */
|
|
39
|
-
startedAt: string;
|
|
40
|
-
/** Source product being rebased FROM. */
|
|
41
|
-
fromProduct?: FirefoxProduct;
|
|
42
|
-
/** Source product being rebased TO. */
|
|
43
|
-
toProduct?: FirefoxProduct;
|
|
44
|
-
/** Source version being rebased FROM. */
|
|
45
|
-
fromVersion: string;
|
|
46
|
-
/** Source version being rebased TO. */
|
|
47
|
-
toVersion: string;
|
|
48
|
-
/** Commit hash recorded before the rebase started (for --abort). */
|
|
49
|
-
preRebaseCommit: string;
|
|
50
|
-
/** Ordered list of all patches and their status. */
|
|
51
|
-
patches: RebasePatchEntry[];
|
|
52
|
-
/** Index of the next patch to process (resume point). */
|
|
53
|
-
currentIndex: number;
|
|
54
|
-
}
|
|
55
|
-
/** Absolute path of the session file, for messages that must name it. */
|
|
56
|
-
export declare function getRebaseSessionPath(projectRoot: string): string;
|
|
57
|
-
/**
|
|
58
|
-
* Outcome of reading the session file, following the {@link LockOwner}
|
|
59
|
-
* discriminated-union form rather than collapsing three states into `null`.
|
|
60
|
-
*
|
|
61
|
-
* Distinguishing `present: false` from `present: true, valid: false` is
|
|
62
|
-
* important. Collapsing both to `null` while reporting liveness from
|
|
63
|
-
* `pathExists` alone wedges the operator in a closed cycle: `rebase` says
|
|
64
|
-
* "already in progress, use --continue or --abort", and both of those say
|
|
65
|
-
* "no rebase session in progress", with no CLI path deleting the file and no
|
|
66
|
-
* message naming it.
|
|
67
|
-
*/
|
|
68
|
-
export type RebaseSessionRead = {
|
|
69
|
-
present: false;
|
|
70
|
-
} | {
|
|
71
|
-
present: true;
|
|
72
|
-
valid: true;
|
|
73
|
-
session: RebaseSession;
|
|
74
|
-
} | {
|
|
75
|
-
present: true;
|
|
76
|
-
valid: false;
|
|
77
|
-
reason: string;
|
|
78
|
-
};
|
|
79
|
-
/**
|
|
80
|
-
* Reads the session file, reporting absent, valid, and corrupt as three
|
|
81
|
-
* distinct outcomes. Never throws for a malformed file: `readJson` calls
|
|
82
|
-
* `JSON.parse` with no guard of its own, so an interrupted write would
|
|
83
|
-
* otherwise surface a raw `SyntaxError` out of `--continue`/`--abort`.
|
|
84
|
-
*
|
|
85
|
-
* A single read determines liveness and validity: only ENOENT/ENOTDIR from
|
|
86
|
-
* that read mean `absent`. A pathExists pre-probe both races deletion (a
|
|
87
|
-
* file removed between probe and read misreports an absent session as
|
|
88
|
-
* corrupt) and swallows EACCES (an unreadable `.fireforge/` misreports a
|
|
89
|
-
* session as absent). It is the same failure `readTreeMarker` avoids for
|
|
90
|
-
* tree markers.
|
|
91
|
-
*/
|
|
92
|
-
export declare function readRebaseSession(projectRoot: string): Promise<RebaseSessionRead>;
|
|
93
|
-
/**
|
|
94
|
-
* Persists a rebase session atomically.
|
|
95
|
-
*/
|
|
96
|
-
export declare function saveRebaseSession(projectRoot: string, session: RebaseSession): Promise<void>;
|
|
97
|
-
/**
|
|
98
|
-
* Removes the rebase session file.
|
|
99
|
-
*/
|
|
100
|
-
export declare function clearRebaseSession(projectRoot: string): Promise<void>;
|
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Rebase session persistence for multi-patch Firefox source upgrades.
|
|
4
|
-
* Session state is stored at `.fireforge/rebase-session.json` and
|
|
5
|
-
* survives across CLI invocations so the user can fix conflicts and
|
|
6
|
-
* resume with `fireforge rebase --continue`.
|
|
7
|
-
*/
|
|
8
|
-
import { join } from 'node:path';
|
|
9
|
-
import { getNodeErrorCode, toError } from '../utils/errors.js';
|
|
10
|
-
import { pathExists, readJson, removeFile, writeJson } from '../utils/fs.js';
|
|
11
|
-
import { isArray, isNumber, isObject, isString, isValidFirefoxProduct, isValidFirefoxVersion, } from '../utils/validation.js';
|
|
12
|
-
import { getProjectPaths } from './config-paths.js';
|
|
13
|
-
import { createSiblingLockPath, withFileLock } from './file-lock.js';
|
|
14
|
-
// ── Helpers ──
|
|
15
|
-
const SESSION_FILENAME = 'rebase-session.json';
|
|
16
|
-
/** Absolute path of the session file, for messages that must name it. */
|
|
17
|
-
export function getRebaseSessionPath(projectRoot) {
|
|
18
|
-
return join(getProjectPaths(projectRoot).fireforgeDir, SESSION_FILENAME);
|
|
19
|
-
}
|
|
20
|
-
const REBASE_PATCH_STATUSES = [
|
|
21
|
-
'pending',
|
|
22
|
-
'applied-clean',
|
|
23
|
-
'applied-fuzz',
|
|
24
|
-
'failed',
|
|
25
|
-
'resolved',
|
|
26
|
-
'skipped',
|
|
27
|
-
];
|
|
28
|
-
/** Validates one `patches[]` element to its declared shape. */
|
|
29
|
-
/**
|
|
30
|
-
* Drops payload that does not belong to an entry's status.
|
|
31
|
-
*
|
|
32
|
-
* Applied on read so a session whose `resolved` entry still carries
|
|
33
|
-
* `error`/`conflictingFiles` loads cleanly and is corrected, instead of being refused by a
|
|
34
|
-
* stricter validator mid-rebase.
|
|
35
|
-
*
|
|
36
|
-
* @param entry - A structurally valid entry, possibly carrying stale payload
|
|
37
|
-
* @returns The entry with only the fields its status permits
|
|
38
|
-
*/
|
|
39
|
-
function normalizeEntry(entry) {
|
|
40
|
-
if (entry.status === 'applied-fuzz') {
|
|
41
|
-
return { filename: entry.filename, status: 'applied-fuzz', fuzzFactor: entry.fuzzFactor };
|
|
42
|
-
}
|
|
43
|
-
if (entry.status === 'failed') {
|
|
44
|
-
return {
|
|
45
|
-
filename: entry.filename,
|
|
46
|
-
status: 'failed',
|
|
47
|
-
...(entry.error !== undefined ? { error: entry.error } : {}),
|
|
48
|
-
...(entry.conflictingFiles !== undefined ? { conflictingFiles: entry.conflictingFiles } : {}),
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
return { filename: entry.filename, status: entry.status };
|
|
52
|
-
}
|
|
53
|
-
function isValidPatchEntry(value) {
|
|
54
|
-
if (!isObject(value))
|
|
55
|
-
return false;
|
|
56
|
-
if (!isString(value['filename']) || value['filename'].length === 0)
|
|
57
|
-
return false;
|
|
58
|
-
if (!REBASE_PATCH_STATUSES.includes(value['status']))
|
|
59
|
-
return false;
|
|
60
|
-
if (value['fuzzFactor'] !== undefined && !isNumber(value['fuzzFactor']))
|
|
61
|
-
return false;
|
|
62
|
-
if (value['error'] !== undefined && !isString(value['error']))
|
|
63
|
-
return false;
|
|
64
|
-
const conflicting = value['conflictingFiles'];
|
|
65
|
-
if (conflicting !== undefined && (!isArray(conflicting) || !conflicting.every(isString))) {
|
|
66
|
-
return false;
|
|
67
|
-
}
|
|
68
|
-
return true;
|
|
69
|
-
}
|
|
70
|
-
/** Optional product field: absent is legal, present must be a real product. */
|
|
71
|
-
function isValidOptionalProduct(value) {
|
|
72
|
-
return value === undefined || (isString(value) && isValidFirefoxProduct(value));
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Validates a session file against the shape the rebase commands actually
|
|
76
|
-
* consume, not merely against broad field types.
|
|
77
|
-
*
|
|
78
|
-
* A looser predicate that checks six `typeof`s and nothing else admits
|
|
79
|
-
* sessions the resume path then acts on. `patches: [null]` reaches
|
|
80
|
-
* `patch-loop.ts`, which reads `.filename` off each entry and hands it to
|
|
81
|
-
* `stampPatchVersions`. A `currentIndex` of `NaN` (legal for
|
|
82
|
-
* `typeof === 'number'`) makes the resume loop run zero iterations and
|
|
83
|
-
* report success. A negative one indexes out of range in `continue.ts`.
|
|
84
|
-
* `toVersion: ""` passes `isString` and is stamped verbatim onto every
|
|
85
|
-
* Furnace override's `baseVersion`. `fromProduct`/`toProduct` go unchecked
|
|
86
|
-
* despite being typed `FirefoxProduct`.
|
|
87
|
-
*
|
|
88
|
-
* The session file is written only by `rebase/index.ts` from validated CLI
|
|
89
|
-
* and config values, so every one of these is a corrupt-file or hand-edit
|
|
90
|
-
* case, which is exactly what this predicate exists to catch.
|
|
91
|
-
*/
|
|
92
|
-
function isValidSession(data) {
|
|
93
|
-
if (!isObject(data))
|
|
94
|
-
return false;
|
|
95
|
-
if (!isString(data['startedAt']) || Number.isNaN(Date.parse(data['startedAt'])))
|
|
96
|
-
return false;
|
|
97
|
-
// 4 is git's own minimum abbreviation length. 40/64 are full SHA-1/SHA-256.
|
|
98
|
-
if (!isString(data['preRebaseCommit']) || !/^[0-9a-f]{4,64}$/i.test(data['preRebaseCommit'])) {
|
|
99
|
-
return false;
|
|
100
|
-
}
|
|
101
|
-
if (!isString(data['fromVersion']) || !isValidFirefoxVersion(data['fromVersion']))
|
|
102
|
-
return false;
|
|
103
|
-
if (!isString(data['toVersion']) || !isValidFirefoxVersion(data['toVersion']))
|
|
104
|
-
return false;
|
|
105
|
-
if (!isValidOptionalProduct(data['fromProduct']))
|
|
106
|
-
return false;
|
|
107
|
-
if (!isValidOptionalProduct(data['toProduct']))
|
|
108
|
-
return false;
|
|
109
|
-
const patches = data['patches'];
|
|
110
|
-
if (!isArray(patches) || !patches.every(isValidPatchEntry))
|
|
111
|
-
return false;
|
|
112
|
-
// `<= patches.length` because the resume point legally sits one past the
|
|
113
|
-
// last entry once every patch has been processed.
|
|
114
|
-
const currentIndex = data['currentIndex'];
|
|
115
|
-
if (!isNumber(currentIndex) || !Number.isInteger(currentIndex))
|
|
116
|
-
return false;
|
|
117
|
-
return currentIndex >= 0 && currentIndex <= patches.length;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Reads the session file, reporting absent, valid, and corrupt as three
|
|
121
|
-
* distinct outcomes. Never throws for a malformed file: `readJson` calls
|
|
122
|
-
* `JSON.parse` with no guard of its own, so an interrupted write would
|
|
123
|
-
* otherwise surface a raw `SyntaxError` out of `--continue`/`--abort`.
|
|
124
|
-
*
|
|
125
|
-
* A single read determines liveness and validity: only ENOENT/ENOTDIR from
|
|
126
|
-
* that read mean `absent`. A pathExists pre-probe both races deletion (a
|
|
127
|
-
* file removed between probe and read misreports an absent session as
|
|
128
|
-
* corrupt) and swallows EACCES (an unreadable `.fireforge/` misreports a
|
|
129
|
-
* session as absent). It is the same failure `readTreeMarker` avoids for
|
|
130
|
-
* tree markers.
|
|
131
|
-
*/
|
|
132
|
-
export async function readRebaseSession(projectRoot) {
|
|
133
|
-
const path = getRebaseSessionPath(projectRoot);
|
|
134
|
-
let data;
|
|
135
|
-
try {
|
|
136
|
-
data = await readJson(path);
|
|
137
|
-
}
|
|
138
|
-
catch (error) {
|
|
139
|
-
const code = getNodeErrorCode(error);
|
|
140
|
-
if (code === 'ENOENT' || code === 'ENOTDIR')
|
|
141
|
-
return { present: false };
|
|
142
|
-
return { present: true, valid: false, reason: toError(error).message };
|
|
143
|
-
}
|
|
144
|
-
if (!isValidSession(data)) {
|
|
145
|
-
return { present: true, valid: false, reason: 'the file is not a valid rebase session' };
|
|
146
|
-
}
|
|
147
|
-
// Normalize on read: a session can carry a failure's
|
|
148
|
-
// `error`/`conflictingFiles` on an entry whose status has since been
|
|
149
|
-
// flipped to `resolved`. Correcting it here is what lets the validator
|
|
150
|
-
// stay permissive, so such an in-flight rebase still loads.
|
|
151
|
-
return {
|
|
152
|
-
present: true,
|
|
153
|
-
valid: true,
|
|
154
|
-
session: { ...data, patches: data.patches.map(normalizeEntry) },
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Persists a rebase session atomically.
|
|
159
|
-
*/
|
|
160
|
-
export async function saveRebaseSession(projectRoot, session) {
|
|
161
|
-
const path = getRebaseSessionPath(projectRoot);
|
|
162
|
-
await withFileLock(createSiblingLockPath(path, '.rebase-session.lock'), async () => {
|
|
163
|
-
await writeJson(path, session);
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* Removes the rebase session file.
|
|
168
|
-
*/
|
|
169
|
-
export async function clearRebaseSession(projectRoot) {
|
|
170
|
-
const path = getRebaseSessionPath(projectRoot);
|
|
171
|
-
if (await pathExists(path)) {
|
|
172
|
-
await removeFile(path);
|
|
173
|
-
}
|
|
174
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* JS/content registration in browser/base/jar.mn.
|
|
3
|
-
*/
|
|
4
|
-
import type { RegisterResult } from './register-result.js';
|
|
5
|
-
/**
|
|
6
|
-
* Registers a JS/content file in browser/base/jar.mn.
|
|
7
|
-
*
|
|
8
|
-
* Entry format (8-space indent):
|
|
9
|
-
* content/browser/{name}.js (content/{name}.js)
|
|
10
|
-
*/
|
|
11
|
-
export declare function registerBrowserContent(engineDir: string, fileName: string, after?: string, sourcePath?: string, dryRun?: boolean): Promise<RegisterResult>;
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* JS/content registration in browser/base/jar.mn.
|
|
4
|
-
*/
|
|
5
|
-
import { join } from 'node:path';
|
|
6
|
-
import { GeneralError } from '../errors/base.js';
|
|
7
|
-
import { pathExists, readText, writeText } from '../utils/fs.js';
|
|
8
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
9
|
-
import { insertJarMnEntry } from './moz-manifest-helpers.js';
|
|
10
|
-
/**
|
|
11
|
-
* Tokenizer-based implementation for browser content registration.
|
|
12
|
-
*/
|
|
13
|
-
function registerBrowserContentTokenized(content, fileName, entry, after) {
|
|
14
|
-
const { result, previousEntry, afterFallback } = insertJarMnEntry(content, entry, {
|
|
15
|
-
sortPattern: /content\/browser\/([^\s]+)/,
|
|
16
|
-
sortKey: fileName,
|
|
17
|
-
missingSectionMessage: 'Could not find content/browser/ section in browser/base/jar.mn',
|
|
18
|
-
after,
|
|
19
|
-
});
|
|
20
|
-
return { result, previousEntry, afterFallback };
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Registers a JS/content file in browser/base/jar.mn.
|
|
24
|
-
*
|
|
25
|
-
* Entry format (8-space indent):
|
|
26
|
-
* content/browser/{name}.js (content/{name}.js)
|
|
27
|
-
*/
|
|
28
|
-
export async function registerBrowserContent(engineDir, fileName, after, sourcePath, dryRun = false) {
|
|
29
|
-
const manifest = 'browser/base/jar.mn';
|
|
30
|
-
const manifestPath = join(engineDir, manifest);
|
|
31
|
-
if (!(await pathExists(manifestPath))) {
|
|
32
|
-
throw new GeneralError(`Manifest not found: ${manifest}`);
|
|
33
|
-
}
|
|
34
|
-
const source = normalizePathSlashes(sourcePath ?? `content/${fileName}`);
|
|
35
|
-
const entry = normalizePathSlashes(` content/browser/${fileName} (${source})`);
|
|
36
|
-
const content = await readText(manifestPath);
|
|
37
|
-
// Idempotency check
|
|
38
|
-
if (content.includes(`content/browser/${fileName}`)) {
|
|
39
|
-
return { manifest, entry, skipped: true };
|
|
40
|
-
}
|
|
41
|
-
const value = registerBrowserContentTokenized(content, fileName, entry, after);
|
|
42
|
-
if (!dryRun) {
|
|
43
|
-
await writeText(manifestPath, value.result);
|
|
44
|
-
}
|
|
45
|
-
return {
|
|
46
|
-
manifest,
|
|
47
|
-
entry,
|
|
48
|
-
previousEntry: value.previousEntry,
|
|
49
|
-
skipped: false,
|
|
50
|
-
afterFallback: value.afterFallback,
|
|
51
|
-
};
|
|
52
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test manifest registration in browser/base/moz.build.
|
|
3
|
-
*/
|
|
4
|
-
import type { RegisterResult } from './register-result.js';
|
|
5
|
-
/**
|
|
6
|
-
* Registers a test manifest (browser.toml) in browser/base/moz.build.
|
|
7
|
-
*
|
|
8
|
-
* Entry format:
|
|
9
|
-
* "content/test/{dir}/browser.toml",
|
|
10
|
-
*/
|
|
11
|
-
export declare function registerTestManifest(engineDir: string, testDir: string, dryRun?: boolean): Promise<RegisterResult>;
|
|
12
|
-
/**
|
|
13
|
-
* Deregisters a test manifest (browser.toml) from browser/base/moz.build.
|
|
14
|
-
* @param engineDir - Path to the engine directory
|
|
15
|
-
* @param testDir - Test directory name (e.g. 'mybrowser')
|
|
16
|
-
* @returns Whether the entry was removed
|
|
17
|
-
*/
|
|
18
|
-
export declare function deregisterTestManifest(engineDir: string, testDir: string): Promise<boolean>;
|