@hominis/fireforge 0.54.0 → 0.60.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +287 -6
- package/README.md +51 -17
- package/dist/bin/fireforge.js +34 -129
- package/dist/build-info.json +4 -4
- package/dist/src/check/check.js +394 -0
- package/dist/src/check/gate.js +448 -0
- package/dist/src/check/index.js +10 -0
- package/dist/src/check/record.js +155 -0
- package/dist/src/cli/command.js +286 -0
- package/dist/src/cli/output.js +96 -0
- package/dist/src/cli/program.js +231 -0
- package/dist/src/cli/stdio.js +59 -0
- package/dist/src/cli/version.js +99 -0
- package/dist/src/commands/bootstrap.js +17 -102
- package/dist/src/commands/build.js +34 -438
- package/dist/src/commands/check.js +44 -157
- package/dist/src/commands/config.js +50 -226
- package/dist/src/commands/discard.js +38 -215
- package/dist/src/commands/doctor.js +29 -456
- package/dist/src/commands/download.js +35 -499
- package/dist/src/commands/export.js +42 -431
- package/dist/src/commands/furnace.js +220 -0
- package/dist/src/commands/gate.js +127 -0
- package/dist/src/commands/import.js +44 -445
- package/dist/src/commands/index.js +86 -0
- package/dist/src/commands/lint.js +44 -546
- package/dist/src/commands/merge-driver.js +56 -0
- package/dist/src/commands/migrate.js +75 -0
- package/dist/src/commands/override.js +43 -0
- package/dist/src/commands/package.js +48 -77
- package/dist/src/commands/patch.js +221 -0
- package/dist/src/commands/re-export.js +55 -332
- package/dist/src/commands/rebase.js +69 -0
- package/dist/src/commands/register.js +62 -103
- package/dist/src/commands/reset.js +28 -91
- package/dist/src/commands/resolve.js +20 -167
- package/dist/src/commands/restore.js +19 -0
- package/dist/src/commands/run.js +60 -420
- package/dist/src/commands/setup.js +78 -90
- package/dist/src/commands/status.js +44 -413
- package/dist/src/commands/test.js +97 -422
- package/dist/src/commands/token.js +185 -228
- package/dist/src/commands/typecheck.js +59 -208
- package/dist/src/commands/verify.js +28 -334
- package/dist/src/commands/version.js +14 -0
- package/dist/src/commands/watch.js +20 -218
- package/dist/src/commands/wire.js +60 -349
- package/dist/src/commands/workspace.js +117 -0
- package/dist/src/config/edit.js +237 -0
- package/dist/src/config/index.js +15 -0
- package/dist/src/config/load.js +59 -0
- package/dist/src/config/previous.js +404 -0
- package/dist/src/config/schema/build.js +63 -0
- package/dist/src/config/schema/check.js +113 -0
- package/dist/src/config/schema/common.js +71 -0
- package/dist/src/config/schema/export-queue.js +36 -0
- package/dist/src/config/schema/firefox.js +69 -0
- package/dist/src/config/schema/gate.js +199 -0
- package/dist/src/config/schema/identity.js +55 -0
- package/dist/src/config/schema/index.js +45 -0
- package/dist/src/config/schema/lint.js +297 -0
- package/dist/src/config/schema/policy.js +111 -0
- package/dist/src/config/schema/source.js +90 -0
- package/dist/src/config/schema/test.js +17 -0
- package/dist/src/config/schema/toolchains.js +17 -0
- package/dist/src/config/schema/typecheck.js +29 -0
- package/dist/src/config/schema/wire.js +15 -0
- package/dist/src/diff/apply.js +129 -0
- package/dist/src/diff/index.js +16 -0
- package/dist/src/diff/model.js +267 -0
- package/dist/src/diff/query.js +65 -0
- package/dist/src/doctor/index.js +240 -0
- package/dist/src/engine/archive.js +396 -0
- package/dist/src/engine/audit.js +66 -0
- package/dist/src/engine/build.js +150 -0
- package/dist/src/engine/hostLocks.js +66 -0
- package/dist/src/engine/index.js +26 -0
- package/dist/src/engine/installManifests.js +147 -0
- package/dist/src/engine/mach.js +97 -0
- package/dist/src/engine/machHints.js +80 -0
- package/dist/src/engine/mozconfig.js +110 -0
- package/dist/src/engine/objdir.js +124 -0
- package/dist/src/engine/package.js +169 -0
- package/dist/src/engine/pin.js +12 -0
- package/dist/src/engine/pool.js +423 -0
- package/dist/src/engine/pristine.js +281 -0
- package/dist/src/engine/python.js +68 -0
- package/dist/src/engine/resourceGuard.js +582 -0
- package/dist/src/engine/run.js +259 -0
- package/dist/src/engine/smoke.js +204 -0
- package/dist/src/engine/staleness.js +229 -0
- package/dist/src/engine/watch.js +82 -0
- package/dist/src/engine/workspace.js +85 -0
- package/dist/src/furnace/config.js +360 -0
- package/dist/src/furnace/deploy.js +414 -0
- package/dist/src/furnace/diff.js +59 -0
- package/dist/src/furnace/edit.js +64 -0
- package/dist/src/furnace/fragments.js +53 -0
- package/dist/src/furnace/index.js +19 -0
- package/dist/src/furnace/operations.js +283 -0
- package/dist/src/furnace/registration.js +220 -0
- package/dist/src/furnace/scaffold.js +311 -0
- package/dist/src/furnace/typing.js +252 -0
- package/dist/src/furnace/validate.js +662 -0
- package/dist/src/git/apply.js +129 -0
- package/dist/src/git/diff.js +143 -0
- package/dist/src/git/index.js +33 -0
- package/dist/src/git/objects.js +201 -0
- package/dist/src/git/refs.js +85 -0
- package/dist/src/git/repo.js +222 -0
- package/dist/src/git/run.js +242 -0
- package/dist/src/git/status.js +156 -0
- package/dist/src/kernel/errors.js +123 -0
- package/dist/src/kernel/fs.js +515 -0
- package/dist/src/kernel/glob.js +63 -0
- package/dist/src/kernel/hash.js +28 -0
- package/dist/src/kernel/journal.js +524 -0
- package/dist/src/kernel/json-edit.js +198 -0
- package/dist/src/kernel/json.js +101 -0
- package/dist/src/kernel/lock.js +589 -0
- package/dist/src/kernel/log.js +154 -0
- package/dist/src/kernel/process/identity.js +313 -0
- package/dist/src/kernel/process/index.js +8 -0
- package/dist/src/kernel/process/listing.js +128 -0
- package/dist/src/kernel/process/spawn.js +430 -0
- package/dist/src/kernel/process/tree.js +301 -0
- package/dist/src/kernel/schema.js +308 -0
- package/dist/src/kernel/signals.js +171 -0
- package/dist/src/kernel/text.js +151 -0
- package/dist/src/kernel/time.js +83 -0
- package/dist/src/kernel/tty.js +84 -0
- package/dist/src/lint/cache.js +77 -0
- package/dist/src/lint/checkjs.js +400 -0
- package/dist/src/lint/index.js +3 -0
- package/dist/src/lint/input.js +100 -0
- package/dist/src/lint/report.js +107 -0
- package/dist/src/lint/rule.js +41 -0
- package/dist/src/lint/rules/css.js +308 -0
- package/dist/src/lint/rules/javascript.js +299 -0
- package/dist/src/lint/rules/jsdoc.js +249 -0
- package/dist/src/lint/rules/license.js +93 -0
- package/dist/src/lint/rules/policy.js +201 -0
- package/dist/src/lint/rules/registration.js +264 -0
- package/dist/src/lint/rules/size.js +299 -0
- package/dist/src/lint/run.js +126 -0
- package/dist/src/lint/shim.js +323 -0
- package/dist/src/lint/typescript.js +186 -0
- package/dist/src/lint/waivers.js +93 -0
- package/dist/src/mode/changes.js +264 -0
- package/dist/src/mode/diagnose.js +173 -0
- package/dist/src/mode/export.js +147 -0
- package/dist/src/mode/index.js +23 -0
- package/dist/src/mode/migrate.js +181 -0
- package/dist/src/mode/previousWaivers.js +206 -0
- package/dist/src/mode/pristine.js +61 -0
- package/dist/src/mode/rebase.js +197 -0
- package/dist/src/mode/report.js +157 -0
- package/dist/src/mode/setup.js +103 -0
- package/dist/src/mode/tracked.js +116 -0
- package/dist/src/mode/upgrade.js +281 -0
- package/dist/src/mode/watch.js +83 -0
- package/dist/src/mode/workspace.js +189 -0
- package/dist/src/mozbuild/index.js +6 -0
- package/dist/src/mozbuild/jar.js +366 -0
- package/dist/src/mozbuild/mozbuild.js +321 -0
- package/dist/src/mozbuild/paths.js +96 -0
- package/dist/src/mozbuild/references.js +39 -0
- package/dist/src/mozbuild/testManifest.js +343 -0
- package/dist/src/mozbuild/text.js +142 -0
- package/dist/src/project/changes.js +145 -0
- package/dist/src/project/checkout.js +66 -0
- package/dist/src/project/index.js +11 -0
- package/dist/src/project/license.js +119 -0
- package/dist/src/project/project.js +111 -0
- package/dist/src/project/state.js +85 -0
- package/dist/src/project/tracked.js +1 -0
- package/dist/src/queue/apply.js +270 -0
- package/dist/src/queue/attribute.js +159 -0
- package/dist/src/queue/baseline.js +409 -0
- package/dist/src/queue/capture.js +298 -0
- package/dist/src/queue/changes.js +234 -0
- package/dist/src/queue/index.js +50 -0
- package/dist/src/queue/manifest.js +341 -0
- package/dist/src/queue/operations.js +454 -0
- package/dist/src/queue/placement.js +220 -0
- package/dist/src/queue/queue.js +359 -0
- package/dist/src/queue/restore.js +103 -0
- package/dist/src/queue/session.js +685 -0
- package/dist/src/queue/status.js +137 -0
- package/dist/src/register/files.js +39 -0
- package/dist/src/register/index.js +8 -0
- package/dist/src/register/js.js +217 -0
- package/dist/src/register/register.js +359 -0
- package/dist/src/register/wire.js +146 -0
- package/dist/src/source/adopt.js +99 -0
- package/dist/src/source/changes.js +132 -0
- package/dist/src/source/edit.js +278 -0
- package/dist/src/source/export.js +70 -0
- package/dist/src/source/groups.js +131 -0
- package/dist/src/source/index.js +20 -0
- package/dist/src/source/materialize.js +382 -0
- package/dist/src/source/merge.js +255 -0
- package/dist/src/source/objects.js +102 -0
- package/dist/src/source/previous.js +166 -0
- package/dist/src/source/records.js +138 -0
- package/dist/src/source/refresh.js +264 -0
- package/dist/src/source/tree.js +337 -0
- package/dist/src/syntax/css.js +215 -0
- package/dist/src/syntax/fragments.js +63 -0
- package/dist/src/syntax/index.js +10 -0
- package/dist/src/syntax/js.js +270 -0
- package/dist/src/test/classify.js +826 -0
- package/dist/src/test/control.js +236 -0
- package/dist/src/test/host.js +266 -0
- package/dist/src/test/index.js +11 -0
- package/dist/src/test/plan.js +347 -0
- package/dist/src/test/rawLog.js +138 -0
- package/dist/src/test/run.js +404 -0
- package/dist/src/test/verdict.js +420 -0
- package/dist/src/test/xpcshell.js +143 -0
- package/dist/src/tokens/add.js +304 -0
- package/dist/src/tokens/coverage.js +65 -0
- package/dist/src/tokens/css.js +58 -0
- package/dist/src/tokens/index.js +12 -0
- package/dist/src/tokens/lint.js +96 -0
- package/dist/src/tokens/model.js +118 -0
- package/dist/src/tokens/settings.js +87 -0
- package/dist/src/tokens/siblings.js +104 -0
- package/dist/src/typecheck/explain.js +123 -0
- package/dist/src/typecheck/index.js +8 -0
- package/dist/src/typecheck/typecheck.js +332 -0
- package/docs/README.md +23 -28
- package/docs/authoring.md +97 -0
- package/docs/configuration.md +307 -692
- package/docs/exit-codes.md +76 -94
- package/docs/furnace.md +113 -181
- package/docs/gate.md +205 -0
- package/docs/getting-started.md +165 -0
- package/docs/machine-output.md +201 -277
- package/docs/migrating.md +261 -0
- package/docs/patch-workflow.md +163 -653
- package/docs/quality.md +220 -0
- package/docs/source-workflow.md +228 -0
- package/docs/testing.md +101 -712
- package/docs/workspaces.md +187 -0
- package/package.json +22 -30
- package/templates/configs/common.mozconfig +8 -2
- package/templates/configs/darwin.mozconfig +6 -7
- package/templates/configs/linux.mozconfig +5 -8
- package/templates/configs/win32.mozconfig +3 -9
- package/dist/bin/fireforge.d.ts +0 -9
- package/dist/src/cli-usage-error.d.ts +0 -46
- package/dist/src/cli-usage-error.js +0 -81
- package/dist/src/cli.d.ts +0 -41
- package/dist/src/cli.js +0 -380
- package/dist/src/commands/bootstrap-checks.d.ts +0 -16
- package/dist/src/commands/bootstrap-checks.js +0 -66
- package/dist/src/commands/bootstrap.d.ts +0 -10
- package/dist/src/commands/build-prelock.d.ts +0 -20
- package/dist/src/commands/build-prelock.js +0 -50
- package/dist/src/commands/build.d.ts +0 -13
- package/dist/src/commands/check-report.d.ts +0 -41
- package/dist/src/commands/check-report.js +0 -91
- package/dist/src/commands/check-run.d.ts +0 -33
- package/dist/src/commands/check-run.js +0 -112
- package/dist/src/commands/check-steps.d.ts +0 -75
- package/dist/src/commands/check-steps.js +0 -200
- package/dist/src/commands/check.d.ts +0 -32
- package/dist/src/commands/config.d.ts +0 -13
- package/dist/src/commands/declarations-report.d.ts +0 -49
- package/dist/src/commands/declarations-report.js +0 -83
- package/dist/src/commands/destructive-decision.d.ts +0 -19
- package/dist/src/commands/destructive-decision.js +0 -31
- package/dist/src/commands/discard.d.ts +0 -12
- package/dist/src/commands/doctor-check-core.d.ts +0 -110
- package/dist/src/commands/doctor-check-core.js +0 -24
- package/dist/src/commands/doctor-engine-eslint.d.ts +0 -3
- package/dist/src/commands/doctor-engine-eslint.js +0 -17
- package/dist/src/commands/doctor-external-toolchains.d.ts +0 -3
- package/dist/src/commands/doctor-external-toolchains.js +0 -56
- package/dist/src/commands/doctor-furnace-config-sync.d.ts +0 -18
- package/dist/src/commands/doctor-furnace-config-sync.js +0 -295
- package/dist/src/commands/doctor-furnace-jar.d.ts +0 -14
- package/dist/src/commands/doctor-furnace-jar.js +0 -44
- package/dist/src/commands/doctor-furnace.d.ts +0 -8
- package/dist/src/commands/doctor-furnace.js +0 -514
- package/dist/src/commands/doctor-macos-sdk.d.ts +0 -8
- package/dist/src/commands/doctor-macos-sdk.js +0 -158
- package/dist/src/commands/doctor-orphaned-harness.d.ts +0 -41
- package/dist/src/commands/doctor-orphaned-harness.js +0 -98
- package/dist/src/commands/doctor-patch-manifest.d.ts +0 -9
- package/dist/src/commands/doctor-patch-manifest.js +0 -156
- package/dist/src/commands/doctor-post-rebase-audit.d.ts +0 -2
- package/dist/src/commands/doctor-post-rebase-audit.js +0 -108
- package/dist/src/commands/doctor-source-pin.d.ts +0 -29
- package/dist/src/commands/doctor-source-pin.js +0 -91
- package/dist/src/commands/doctor-working-tree.d.ts +0 -27
- package/dist/src/commands/doctor-working-tree.js +0 -89
- package/dist/src/commands/doctor.d.ts +0 -49
- package/dist/src/commands/download.d.ts +0 -11
- package/dist/src/commands/export-adopt-check.d.ts +0 -37
- package/dist/src/commands/export-adopt-check.js +0 -97
- package/dist/src/commands/export-all.d.ts +0 -11
- package/dist/src/commands/export-all.js +0 -361
- package/dist/src/commands/export-flow.d.ts +0 -124
- package/dist/src/commands/export-flow.js +0 -423
- package/dist/src/commands/export-placement-conflicts.d.ts +0 -17
- package/dist/src/commands/export-placement-conflicts.js +0 -75
- package/dist/src/commands/export-placement-gate.d.ts +0 -42
- package/dist/src/commands/export-placement-gate.js +0 -107
- package/dist/src/commands/export-placement-policy.d.ts +0 -22
- package/dist/src/commands/export-placement-policy.js +0 -54
- package/dist/src/commands/export-shared.d.ts +0 -152
- package/dist/src/commands/export-shared.js +0 -396
- package/dist/src/commands/export-staged-registration.d.ts +0 -46
- package/dist/src/commands/export-staged-registration.js +0 -91
- package/dist/src/commands/export.d.ts +0 -13
- package/dist/src/commands/forward-import-remedy.d.ts +0 -31
- package/dist/src/commands/forward-import-remedy.js +0 -62
- package/dist/src/commands/furnace/apply.d.ts +0 -8
- package/dist/src/commands/furnace/apply.js +0 -327
- package/dist/src/commands/furnace/authoring-config.d.ts +0 -13
- package/dist/src/commands/furnace/authoring-config.js +0 -19
- package/dist/src/commands/furnace/chrome-doc-remove.d.ts +0 -14
- package/dist/src/commands/furnace/chrome-doc-remove.js +0 -148
- package/dist/src/commands/furnace/chrome-doc-templates.d.ts +0 -152
- package/dist/src/commands/furnace/chrome-doc-templates.js +0 -331
- package/dist/src/commands/furnace/chrome-doc-tests.d.ts +0 -23
- package/dist/src/commands/furnace/chrome-doc-tests.js +0 -148
- package/dist/src/commands/furnace/chrome-doc.d.ts +0 -87
- package/dist/src/commands/furnace/chrome-doc.js +0 -365
- package/dist/src/commands/furnace/create-browser-test.d.ts +0 -44
- package/dist/src/commands/furnace/create-browser-test.js +0 -179
- package/dist/src/commands/furnace/create-dry-run.d.ts +0 -49
- package/dist/src/commands/furnace/create-dry-run.js +0 -107
- package/dist/src/commands/furnace/create-features.d.ts +0 -24
- package/dist/src/commands/furnace/create-features.js +0 -55
- package/dist/src/commands/furnace/create-mochikit.d.ts +0 -29
- package/dist/src/commands/furnace/create-mochikit.js +0 -75
- package/dist/src/commands/furnace/create-readback.d.ts +0 -22
- package/dist/src/commands/furnace/create-readback.js +0 -32
- package/dist/src/commands/furnace/create-templates.d.ts +0 -119
- package/dist/src/commands/furnace/create-templates.js +0 -283
- package/dist/src/commands/furnace/create-validation.d.ts +0 -6
- package/dist/src/commands/furnace/create-validation.js +0 -59
- package/dist/src/commands/furnace/create-xpcshell.d.ts +0 -27
- package/dist/src/commands/furnace/create-xpcshell.js +0 -80
- package/dist/src/commands/furnace/create.d.ts +0 -24
- package/dist/src/commands/furnace/create.js +0 -407
- package/dist/src/commands/furnace/deploy-fragment-includers.d.ts +0 -59
- package/dist/src/commands/furnace/deploy-fragment-includers.js +0 -120
- package/dist/src/commands/furnace/deploy-named.d.ts +0 -48
- package/dist/src/commands/furnace/deploy-named.js +0 -107
- package/dist/src/commands/furnace/deploy.d.ts +0 -9
- package/dist/src/commands/furnace/deploy.js +0 -218
- package/dist/src/commands/furnace/diff.d.ts +0 -11
- package/dist/src/commands/furnace/diff.js +0 -238
- package/dist/src/commands/furnace/index.d.ts +0 -4
- package/dist/src/commands/furnace/index.js +0 -282
- package/dist/src/commands/furnace/init.d.ts +0 -11
- package/dist/src/commands/furnace/init.js +0 -287
- package/dist/src/commands/furnace/list.d.ts +0 -8
- package/dist/src/commands/furnace/list.js +0 -104
- package/dist/src/commands/furnace/override.d.ts +0 -16
- package/dist/src/commands/furnace/override.js +0 -454
- package/dist/src/commands/furnace/preview.d.ts +0 -19
- package/dist/src/commands/furnace/preview.js +0 -349
- package/dist/src/commands/furnace/refresh.d.ts +0 -10
- package/dist/src/commands/furnace/refresh.js +0 -303
- package/dist/src/commands/furnace/remove-mutations.d.ts +0 -36
- package/dist/src/commands/furnace/remove-mutations.js +0 -168
- package/dist/src/commands/furnace/remove-state.d.ts +0 -20
- package/dist/src/commands/furnace/remove-state.js +0 -60
- package/dist/src/commands/furnace/remove.d.ts +0 -8
- package/dist/src/commands/furnace/remove.js +0 -415
- package/dist/src/commands/furnace/rename-browser-test.d.ts +0 -2
- package/dist/src/commands/furnace/rename-browser-test.js +0 -68
- package/dist/src/commands/furnace/rename-dry-run.d.ts +0 -29
- package/dist/src/commands/furnace/rename-dry-run.js +0 -127
- package/dist/src/commands/furnace/rename-helpers.d.ts +0 -26
- package/dist/src/commands/furnace/rename-helpers.js +0 -85
- package/dist/src/commands/furnace/rename-registrations.d.ts +0 -41
- package/dist/src/commands/furnace/rename-registrations.js +0 -98
- package/dist/src/commands/furnace/rename-xpcshell.d.ts +0 -32
- package/dist/src/commands/furnace/rename-xpcshell.js +0 -95
- package/dist/src/commands/furnace/rename.d.ts +0 -6
- package/dist/src/commands/furnace/rename.js +0 -400
- package/dist/src/commands/furnace/scan.d.ts +0 -14
- package/dist/src/commands/furnace/scan.js +0 -192
- package/dist/src/commands/furnace/status.d.ts +0 -7
- package/dist/src/commands/furnace/status.js +0 -209
- package/dist/src/commands/furnace/sync.d.ts +0 -12
- package/dist/src/commands/furnace/sync.js +0 -145
- package/dist/src/commands/furnace/test-file-name.d.ts +0 -28
- package/dist/src/commands/furnace/test-file-name.js +0 -39
- package/dist/src/commands/furnace/validate-report.d.ts +0 -45
- package/dist/src/commands/furnace/validate-report.js +0 -91
- package/dist/src/commands/furnace/validate.d.ts +0 -8
- package/dist/src/commands/furnace/validate.js +0 -309
- package/dist/src/commands/furnace/validation-output.d.ts +0 -47
- package/dist/src/commands/furnace/validation-output.js +0 -161
- package/dist/src/commands/import.d.ts +0 -11
- package/dist/src/commands/lint-per-patch.d.ts +0 -10
- package/dist/src/commands/lint-per-patch.js +0 -428
- package/dist/src/commands/lint-per-run-checkjs.d.ts +0 -66
- package/dist/src/commands/lint-per-run-checkjs.js +0 -102
- package/dist/src/commands/lint-report.d.ts +0 -25
- package/dist/src/commands/lint-report.js +0 -76
- package/dist/src/commands/lint.d.ts +0 -47
- package/dist/src/commands/manifest.d.ts +0 -38
- package/dist/src/commands/manifest.js +0 -68
- package/dist/src/commands/package.d.ts +0 -11
- package/dist/src/commands/park.d.ts +0 -22
- package/dist/src/commands/park.js +0 -232
- package/dist/src/commands/patch/compact.d.ts +0 -28
- package/dist/src/commands/patch/compact.js +0 -208
- package/dist/src/commands/patch/delete-gap-notice.d.ts +0 -24
- package/dist/src/commands/patch/delete-gap-notice.js +0 -48
- package/dist/src/commands/patch/delete.d.ts +0 -28
- package/dist/src/commands/patch/delete.js +0 -131
- package/dist/src/commands/patch/entry-projection.d.ts +0 -13
- package/dist/src/commands/patch/entry-projection.js +0 -24
- package/dist/src/commands/patch/index.d.ts +0 -16
- package/dist/src/commands/patch/index.js +0 -52
- package/dist/src/commands/patch/lint-ignore-from.d.ts +0 -43
- package/dist/src/commands/patch/lint-ignore-from.js +0 -141
- package/dist/src/commands/patch/lint-ignore.d.ts +0 -42
- package/dist/src/commands/patch/lint-ignore.js +0 -261
- package/dist/src/commands/patch/move-files-adopt.d.ts +0 -33
- package/dist/src/commands/patch/move-files-adopt.js +0 -65
- package/dist/src/commands/patch/move-files-create.d.ts +0 -19
- package/dist/src/commands/patch/move-files-create.js +0 -187
- package/dist/src/commands/patch/move-files-into.d.ts +0 -65
- package/dist/src/commands/patch/move-files-into.js +0 -325
- package/dist/src/commands/patch/move-files-retire.d.ts +0 -39
- package/dist/src/commands/patch/move-files-retire.js +0 -91
- package/dist/src/commands/patch/move-files.d.ts +0 -28
- package/dist/src/commands/patch/move-files.js +0 -224
- package/dist/src/commands/patch/move-size-tier.d.ts +0 -27
- package/dist/src/commands/patch/move-size-tier.js +0 -66
- package/dist/src/commands/patch/patch-context.d.ts +0 -40
- package/dist/src/commands/patch/patch-context.js +0 -51
- package/dist/src/commands/patch/removal-created-files.d.ts +0 -48
- package/dist/src/commands/patch/removal-created-files.js +0 -83
- package/dist/src/commands/patch/removal-dependents.d.ts +0 -63
- package/dist/src/commands/patch/removal-dependents.js +0 -133
- package/dist/src/commands/patch/rename.d.ts +0 -35
- package/dist/src/commands/patch/rename.js +0 -378
- package/dist/src/commands/patch/reorder-projection.d.ts +0 -17
- package/dist/src/commands/patch/reorder-projection.js +0 -49
- package/dist/src/commands/patch/reorder-shift.d.ts +0 -30
- package/dist/src/commands/patch/reorder-shift.js +0 -307
- package/dist/src/commands/patch/reorder.d.ts +0 -34
- package/dist/src/commands/patch/reorder.js +0 -375
- package/dist/src/commands/patch/reserve.d.ts +0 -33
- package/dist/src/commands/patch/reserve.js +0 -152
- package/dist/src/commands/patch/retire.d.ts +0 -34
- package/dist/src/commands/patch/retire.js +0 -133
- package/dist/src/commands/patch/split-plan.d.ts +0 -125
- package/dist/src/commands/patch/split-plan.js +0 -313
- package/dist/src/commands/patch/split-staged.d.ts +0 -108
- package/dist/src/commands/patch/split-staged.js +0 -202
- package/dist/src/commands/patch/split.d.ts +0 -43
- package/dist/src/commands/patch/split.js +0 -367
- package/dist/src/commands/patch/stage.d.ts +0 -34
- package/dist/src/commands/patch/stage.js +0 -153
- package/dist/src/commands/patch/staged-dependency-batch.d.ts +0 -48
- package/dist/src/commands/patch/staged-dependency-batch.js +0 -176
- package/dist/src/commands/patch/staged-dependency-entries.d.ts +0 -44
- package/dist/src/commands/patch/staged-dependency-entries.js +0 -80
- package/dist/src/commands/patch/staged-dependency-from.d.ts +0 -14
- package/dist/src/commands/patch/staged-dependency-from.js +0 -114
- package/dist/src/commands/patch/staged-dependency-remove.d.ts +0 -53
- package/dist/src/commands/patch/staged-dependency-remove.js +0 -117
- package/dist/src/commands/patch/staged-dependency-validate.d.ts +0 -15
- package/dist/src/commands/patch/staged-dependency-validate.js +0 -49
- package/dist/src/commands/patch/staged-dependency.d.ts +0 -22
- package/dist/src/commands/patch/staged-dependency.js +0 -248
- package/dist/src/commands/patch/tier.d.ts +0 -34
- package/dist/src/commands/patch/tier.js +0 -125
- package/dist/src/commands/patch-rename-map.d.ts +0 -30
- package/dist/src/commands/patch-rename-map.js +0 -54
- package/dist/src/commands/pending-resolution.d.ts +0 -15
- package/dist/src/commands/pending-resolution.js +0 -25
- package/dist/src/commands/re-export-adjacent-registrations.d.ts +0 -20
- package/dist/src/commands/re-export-adjacent-registrations.js +0 -75
- package/dist/src/commands/re-export-adjacent.d.ts +0 -111
- package/dist/src/commands/re-export-adjacent.js +0 -267
- package/dist/src/commands/re-export-bulk-scan.d.ts +0 -19
- package/dist/src/commands/re-export-bulk-scan.js +0 -233
- package/dist/src/commands/re-export-drift.d.ts +0 -110
- package/dist/src/commands/re-export-drift.js +0 -358
- package/dist/src/commands/re-export-files.d.ts +0 -15
- package/dist/src/commands/re-export-files.js +0 -307
- package/dist/src/commands/re-export-hunks.d.ts +0 -35
- package/dist/src/commands/re-export-hunks.js +0 -220
- package/dist/src/commands/re-export-lint.d.ts +0 -137
- package/dist/src/commands/re-export-lint.js +0 -303
- package/dist/src/commands/re-export-options.d.ts +0 -29
- package/dist/src/commands/re-export-options.js +0 -191
- package/dist/src/commands/re-export-preflight.d.ts +0 -23
- package/dist/src/commands/re-export-preflight.js +0 -159
- package/dist/src/commands/re-export-purity-scope.d.ts +0 -18
- package/dist/src/commands/re-export-purity-scope.js +0 -137
- package/dist/src/commands/re-export-register.d.ts +0 -12
- package/dist/src/commands/re-export-register.js +0 -99
- package/dist/src/commands/re-export-removed.d.ts +0 -15
- package/dist/src/commands/re-export-removed.js +0 -94
- package/dist/src/commands/re-export-retired-declarations.d.ts +0 -22
- package/dist/src/commands/re-export-retired-declarations.js +0 -113
- package/dist/src/commands/re-export-scan-owner.d.ts +0 -44
- package/dist/src/commands/re-export-scan-owner.js +0 -116
- package/dist/src/commands/re-export-scan.d.ts +0 -72
- package/dist/src/commands/re-export-scan.js +0 -265
- package/dist/src/commands/re-export-single.d.ts +0 -39
- package/dist/src/commands/re-export-single.js +0 -388
- package/dist/src/commands/re-export-stale-registrations.d.ts +0 -39
- package/dist/src/commands/re-export-stale-registrations.js +0 -106
- package/dist/src/commands/re-export-summary.d.ts +0 -28
- package/dist/src/commands/re-export-summary.js +0 -36
- package/dist/src/commands/re-export.d.ts +0 -8
- package/dist/src/commands/rebase/abort.d.ts +0 -7
- package/dist/src/commands/rebase/abort.js +0 -67
- package/dist/src/commands/rebase/confirm.d.ts +0 -42
- package/dist/src/commands/rebase/confirm.js +0 -36
- package/dist/src/commands/rebase/conflict-summary.d.ts +0 -12
- package/dist/src/commands/rebase/conflict-summary.js +0 -37
- package/dist/src/commands/rebase/continue.d.ts +0 -7
- package/dist/src/commands/rebase/continue.js +0 -119
- package/dist/src/commands/rebase/index.d.ts +0 -22
- package/dist/src/commands/rebase/index.js +0 -209
- package/dist/src/commands/rebase/patch-loop.d.ts +0 -15
- package/dist/src/commands/rebase/patch-loop.js +0 -289
- package/dist/src/commands/rebase/summary.d.ts +0 -8
- package/dist/src/commands/rebase/summary.js +0 -47
- package/dist/src/commands/register.d.ts +0 -13
- package/dist/src/commands/reset.d.ts +0 -11
- package/dist/src/commands/resolve.d.ts +0 -36
- package/dist/src/commands/run.d.ts +0 -10
- package/dist/src/commands/setup-support.d.ts +0 -35
- package/dist/src/commands/setup-support.js +0 -386
- package/dist/src/commands/setup.d.ts +0 -11
- package/dist/src/commands/source.d.ts +0 -9
- package/dist/src/commands/source.js +0 -120
- package/dist/src/commands/status-check.d.ts +0 -87
- package/dist/src/commands/status-check.js +0 -161
- package/dist/src/commands/status-json.d.ts +0 -45
- package/dist/src/commands/status-json.js +0 -97
- package/dist/src/commands/status-output.d.ts +0 -23
- package/dist/src/commands/status-output.js +0 -231
- package/dist/src/commands/status-ownership.d.ts +0 -54
- package/dist/src/commands/status-ownership.js +0 -59
- package/dist/src/commands/status-scope.d.ts +0 -37
- package/dist/src/commands/status-scope.js +0 -54
- package/dist/src/commands/status.d.ts +0 -11
- package/dist/src/commands/test-appdir.d.ts +0 -6
- package/dist/src/commands/test-appdir.js +0 -29
- package/dist/src/commands/test-browser-preflight.d.ts +0 -28
- package/dist/src/commands/test-browser-preflight.js +0 -197
- package/dist/src/commands/test-build-furnace.d.ts +0 -21
- package/dist/src/commands/test-build-furnace.js +0 -53
- package/dist/src/commands/test-build-phase.d.ts +0 -29
- package/dist/src/commands/test-build-phase.js +0 -290
- package/dist/src/commands/test-checkjs.d.ts +0 -3
- package/dist/src/commands/test-checkjs.js +0 -35
- package/dist/src/commands/test-control-restore.d.ts +0 -40
- package/dist/src/commands/test-control-restore.js +0 -86
- package/dist/src/commands/test-diagnose.d.ts +0 -23
- package/dist/src/commands/test-diagnose.js +0 -317
- package/dist/src/commands/test-dispatch.d.ts +0 -39
- package/dist/src/commands/test-dispatch.js +0 -281
- package/dist/src/commands/test-furnace-reach.d.ts +0 -37
- package/dist/src/commands/test-furnace-reach.js +0 -132
- package/dist/src/commands/test-harness-env.d.ts +0 -23
- package/dist/src/commands/test-harness-env.js +0 -81
- package/dist/src/commands/test-harness-teardown.d.ts +0 -62
- package/dist/src/commands/test-harness-teardown.js +0 -128
- package/dist/src/commands/test-modes.d.ts +0 -57
- package/dist/src/commands/test-modes.js +0 -158
- package/dist/src/commands/test-multi-verdict.d.ts +0 -61
- package/dist/src/commands/test-multi-verdict.js +0 -112
- package/dist/src/commands/test-orchestrate.d.ts +0 -63
- package/dist/src/commands/test-orchestrate.js +0 -274
- package/dist/src/commands/test-perf-scope.d.ts +0 -50
- package/dist/src/commands/test-perf-scope.js +0 -138
- package/dist/src/commands/test-prelock.d.ts +0 -61
- package/dist/src/commands/test-prelock.js +0 -301
- package/dist/src/commands/test-register.d.ts +0 -4
- package/dist/src/commands/test-register.js +0 -181
- package/dist/src/commands/test-results.d.ts +0 -71
- package/dist/src/commands/test-results.js +0 -79
- package/dist/src/commands/test-run.d.ts +0 -89
- package/dist/src/commands/test-run.js +0 -251
- package/dist/src/commands/test-shards.d.ts +0 -114
- package/dist/src/commands/test-shards.js +0 -272
- package/dist/src/commands/test-stale-gate.d.ts +0 -52
- package/dist/src/commands/test-stale-gate.js +0 -165
- package/dist/src/commands/test-verdict.d.ts +0 -92
- package/dist/src/commands/test-verdict.js +0 -162
- package/dist/src/commands/test.d.ts +0 -22
- package/dist/src/commands/token-coverage.d.ts +0 -5
- package/dist/src/commands/token-coverage.js +0 -170
- package/dist/src/commands/token-lint.d.ts +0 -14
- package/dist/src/commands/token-lint.js +0 -151
- package/dist/src/commands/token-list.d.ts +0 -26
- package/dist/src/commands/token-list.js +0 -153
- package/dist/src/commands/token.d.ts +0 -14
- package/dist/src/commands/tree.d.ts +0 -19
- package/dist/src/commands/tree.js +0 -341
- package/dist/src/commands/typecheck.d.ts +0 -56
- package/dist/src/commands/verify-scope.d.ts +0 -28
- package/dist/src/commands/verify-scope.js +0 -67
- package/dist/src/commands/verify.d.ts +0 -58
- package/dist/src/commands/watch.d.ts +0 -9
- package/dist/src/commands/wire.d.ts +0 -13
- package/dist/src/core/ast-utils.d.ts +0 -73
- package/dist/src/core/ast-utils.js +0 -105
- package/dist/src/core/brand-validation.d.ts +0 -7
- package/dist/src/core/brand-validation.js +0 -14
- package/dist/src/core/branding.d.ts +0 -86
- package/dist/src/core/branding.js +0 -371
- package/dist/src/core/browser-wire.d.ts +0 -48
- package/dist/src/core/browser-wire.js +0 -133
- package/dist/src/core/build-audit-platform.d.ts +0 -67
- package/dist/src/core/build-audit-platform.js +0 -373
- package/dist/src/core/build-audit-registration.d.ts +0 -80
- package/dist/src/core/build-audit-registration.js +0 -181
- package/dist/src/core/build-audit-resolve.d.ts +0 -78
- package/dist/src/core/build-audit-resolve.js +0 -240
- package/dist/src/core/build-audit-skip.d.ts +0 -57
- package/dist/src/core/build-audit-skip.js +0 -112
- package/dist/src/core/build-audit-transforms.d.ts +0 -23
- package/dist/src/core/build-audit-transforms.js +0 -92
- package/dist/src/core/build-audit.d.ts +0 -93
- package/dist/src/core/build-audit.js +0 -633
- package/dist/src/core/build-baseline-types.d.ts +0 -225
- package/dist/src/core/build-baseline-types.js +0 -10
- package/dist/src/core/build-baseline-validate.d.ts +0 -32
- package/dist/src/core/build-baseline-validate.js +0 -173
- package/dist/src/core/build-baseline.d.ts +0 -103
- package/dist/src/core/build-baseline.js +0 -261
- package/dist/src/core/build-jar-escalation.d.ts +0 -61
- package/dist/src/core/build-jar-escalation.js +0 -125
- package/dist/src/core/build-overwrite-guard.d.ts +0 -92
- package/dist/src/core/build-overwrite-guard.js +0 -235
- package/dist/src/core/build-prepare.d.ts +0 -83
- package/dist/src/core/build-prepare.js +0 -414
- package/dist/src/core/build-run-record.d.ts +0 -74
- package/dist/src/core/build-run-record.js +0 -136
- package/dist/src/core/checkjs-support-heads.d.ts +0 -41
- package/dist/src/core/checkjs-support-heads.js +0 -104
- package/dist/src/core/component-source-guard.d.ts +0 -20
- package/dist/src/core/component-source-guard.js +0 -68
- package/dist/src/core/config-mutate.d.ts +0 -16
- package/dist/src/core/config-mutate.js +0 -76
- package/dist/src/core/config-paths.d.ts +0 -16
- package/dist/src/core/config-paths.js +0 -106
- package/dist/src/core/config-state.d.ts +0 -16
- package/dist/src/core/config-state.js +0 -141
- package/dist/src/core/config-validate-build-audit.d.ts +0 -8
- package/dist/src/core/config-validate-build-audit.js +0 -80
- package/dist/src/core/config-validate-check.d.ts +0 -8
- package/dist/src/core/config-validate-check.js +0 -219
- package/dist/src/core/config-validate-file-size.d.ts +0 -15
- package/dist/src/core/config-validate-file-size.js +0 -154
- package/dist/src/core/config-validate-history.d.ts +0 -11
- package/dist/src/core/config-validate-history.js +0 -38
- package/dist/src/core/config-validate-patch-policy.d.ts +0 -7
- package/dist/src/core/config-validate-patch-policy.js +0 -274
- package/dist/src/core/config-validate-test-toolchains.d.ts +0 -8
- package/dist/src/core/config-validate-test-toolchains.js +0 -133
- package/dist/src/core/config-validate-token-scales.d.ts +0 -9
- package/dist/src/core/config-validate-token-scales.js +0 -92
- package/dist/src/core/config-validate.d.ts +0 -11
- package/dist/src/core/config-validate.js +0 -503
- package/dist/src/core/config.d.ts +0 -92
- package/dist/src/core/config.js +0 -169
- package/dist/src/core/coverage-dispatch.d.ts +0 -24
- package/dist/src/core/coverage-dispatch.js +0 -44
- package/dist/src/core/coverage-extend.d.ts +0 -89
- package/dist/src/core/coverage-extend.js +0 -239
- package/dist/src/core/coverage-records.d.ts +0 -107
- package/dist/src/core/coverage-records.js +0 -383
- package/dist/src/core/destructive.d.ts +0 -144
- package/dist/src/core/destructive.js +0 -182
- package/dist/src/core/diff-hunks.d.ts +0 -73
- package/dist/src/core/diff-hunks.js +0 -286
- package/dist/src/core/discard-baseline.d.ts +0 -60
- package/dist/src/core/discard-baseline.js +0 -247
- package/dist/src/core/display-state.d.ts +0 -50
- package/dist/src/core/display-state.js +0 -87
- package/dist/src/core/engine-changes.d.ts +0 -40
- package/dist/src/core/engine-changes.js +0 -95
- package/dist/src/core/engine-precondition.d.ts +0 -42
- package/dist/src/core/engine-precondition.js +0 -60
- package/dist/src/core/engine-session-lock.d.ts +0 -119
- package/dist/src/core/engine-session-lock.js +0 -374
- package/dist/src/core/engine-write-boundary.d.ts +0 -5
- package/dist/src/core/engine-write-boundary.js +0 -41
- package/dist/src/core/export-moved-code-shape.d.ts +0 -98
- package/dist/src/core/export-moved-code-shape.js +0 -220
- package/dist/src/core/file-lock-owner.d.ts +0 -103
- package/dist/src/core/file-lock-owner.js +0 -259
- package/dist/src/core/file-lock-queue.d.ts +0 -67
- package/dist/src/core/file-lock-queue.js +0 -219
- package/dist/src/core/file-lock-shared.d.ts +0 -57
- package/dist/src/core/file-lock-shared.js +0 -117
- package/dist/src/core/file-lock.d.ts +0 -143
- package/dist/src/core/file-lock.js +0 -531
- package/dist/src/core/firefox-archive.d.ts +0 -45
- package/dist/src/core/firefox-archive.js +0 -96
- package/dist/src/core/firefox-cache.d.ts +0 -30
- package/dist/src/core/firefox-cache.js +0 -248
- package/dist/src/core/firefox-download.d.ts +0 -30
- package/dist/src/core/firefox-download.js +0 -152
- package/dist/src/core/firefox-extract.d.ts +0 -42
- package/dist/src/core/firefox-extract.js +0 -248
- package/dist/src/core/firefox-ignorefile.d.ts +0 -17
- package/dist/src/core/firefox-ignorefile.js +0 -30
- package/dist/src/core/firefox.d.ts +0 -66
- package/dist/src/core/firefox.js +0 -121
- package/dist/src/core/forward-registrations.d.ts +0 -33
- package/dist/src/core/forward-registrations.js +0 -16
- package/dist/src/core/furnace-apply-dry-run.d.ts +0 -12
- package/dist/src/core/furnace-apply-dry-run.js +0 -99
- package/dist/src/core/furnace-apply-ftl.d.ts +0 -49
- package/dist/src/core/furnace-apply-ftl.js +0 -210
- package/dist/src/core/furnace-apply-helpers.d.ts +0 -106
- package/dist/src/core/furnace-apply-helpers.js +0 -436
- package/dist/src/core/furnace-apply-output.d.ts +0 -36
- package/dist/src/core/furnace-apply-output.js +0 -111
- package/dist/src/core/furnace-apply-overwrite-warn.d.ts +0 -62
- package/dist/src/core/furnace-apply-overwrite-warn.js +0 -124
- package/dist/src/core/furnace-apply-undeploy-actions.d.ts +0 -10
- package/dist/src/core/furnace-apply-undeploy-actions.js +0 -48
- package/dist/src/core/furnace-apply.d.ts +0 -49
- package/dist/src/core/furnace-apply.js +0 -465
- package/dist/src/core/furnace-checksum-utils.d.ts +0 -25
- package/dist/src/core/furnace-checksum-utils.js +0 -54
- package/dist/src/core/furnace-composed-source.d.ts +0 -76
- package/dist/src/core/furnace-composed-source.js +0 -167
- package/dist/src/core/furnace-config-array-utils.d.ts +0 -11
- package/dist/src/core/furnace-config-array-utils.js +0 -26
- package/dist/src/core/furnace-config-custom.d.ts +0 -15
- package/dist/src/core/furnace-config-custom.js +0 -73
- package/dist/src/core/furnace-config-order.d.ts +0 -8
- package/dist/src/core/furnace-config-order.js +0 -90
- package/dist/src/core/furnace-config-tokens.d.ts +0 -17
- package/dist/src/core/furnace-config-tokens.js +0 -42
- package/dist/src/core/furnace-config-validate-exceptions.d.ts +0 -17
- package/dist/src/core/furnace-config-validate-exceptions.js +0 -122
- package/dist/src/core/furnace-config-validate.d.ts +0 -32
- package/dist/src/core/furnace-config-validate.js +0 -146
- package/dist/src/core/furnace-config.d.ts +0 -139
- package/dist/src/core/furnace-config.js +0 -511
- package/dist/src/core/furnace-constants.d.ts +0 -79
- package/dist/src/core/furnace-constants.js +0 -123
- package/dist/src/core/furnace-css-fragments.d.ts +0 -96
- package/dist/src/core/furnace-css-fragments.js +0 -279
- package/dist/src/core/furnace-dir-entry.d.ts +0 -20
- package/dist/src/core/furnace-dir-entry.js +0 -21
- package/dist/src/core/furnace-fragment-includers.d.ts +0 -56
- package/dist/src/core/furnace-fragment-includers.js +0 -122
- package/dist/src/core/furnace-graph-utils.d.ts +0 -11
- package/dist/src/core/furnace-graph-utils.js +0 -93
- package/dist/src/core/furnace-jsconfig.d.ts +0 -61
- package/dist/src/core/furnace-jsconfig.js +0 -208
- package/dist/src/core/furnace-marker.d.ts +0 -15
- package/dist/src/core/furnace-marker.js +0 -21
- package/dist/src/core/furnace-operation.d.ts +0 -195
- package/dist/src/core/furnace-operation.js +0 -444
- package/dist/src/core/furnace-precondition.d.ts +0 -61
- package/dist/src/core/furnace-precondition.js +0 -67
- package/dist/src/core/furnace-refresh.d.ts +0 -28
- package/dist/src/core/furnace-refresh.js +0 -125
- package/dist/src/core/furnace-registration-ast.d.ts +0 -53
- package/dist/src/core/furnace-registration-ast.js +0 -402
- package/dist/src/core/furnace-registration-jar-inplace.d.ts +0 -12
- package/dist/src/core/furnace-registration-jar-inplace.js +0 -79
- package/dist/src/core/furnace-registration-remove.d.ts +0 -56
- package/dist/src/core/furnace-registration-remove.js +0 -260
- package/dist/src/core/furnace-registration-rename.d.ts +0 -26
- package/dist/src/core/furnace-registration-rename.js +0 -77
- package/dist/src/core/furnace-registration-validate.d.ts +0 -53
- package/dist/src/core/furnace-registration-validate.js +0 -110
- package/dist/src/core/furnace-registration.d.ts +0 -112
- package/dist/src/core/furnace-registration.js +0 -348
- package/dist/src/core/furnace-rollback.d.ts +0 -48
- package/dist/src/core/furnace-rollback.js +0 -170
- package/dist/src/core/furnace-scanner.d.ts +0 -47
- package/dist/src/core/furnace-scanner.js +0 -236
- package/dist/src/core/furnace-stale-export.d.ts +0 -60
- package/dist/src/core/furnace-stale-export.js +0 -125
- package/dist/src/core/furnace-staleness.d.ts +0 -24
- package/dist/src/core/furnace-staleness.js +0 -67
- package/dist/src/core/furnace-state-persist.d.ts +0 -68
- package/dist/src/core/furnace-state-persist.js +0 -116
- package/dist/src/core/furnace-step-errors.d.ts +0 -23
- package/dist/src/core/furnace-step-errors.js +0 -25
- package/dist/src/core/furnace-stories.d.ts +0 -37
- package/dist/src/core/furnace-stories.js +0 -186
- package/dist/src/core/furnace-validate-accessibility.d.ts +0 -39
- package/dist/src/core/furnace-validate-accessibility.js +0 -417
- package/dist/src/core/furnace-validate-checks.d.ts +0 -4
- package/dist/src/core/furnace-validate-checks.js +0 -6
- package/dist/src/core/furnace-validate-compatibility.d.ts +0 -6
- package/dist/src/core/furnace-validate-compatibility.js +0 -295
- package/dist/src/core/furnace-validate-exceptions.d.ts +0 -49
- package/dist/src/core/furnace-validate-exceptions.js +0 -98
- package/dist/src/core/furnace-validate-helpers.d.ts +0 -7
- package/dist/src/core/furnace-validate-helpers.js +0 -4
- package/dist/src/core/furnace-validate-icon-button.d.ts +0 -7
- package/dist/src/core/furnace-validate-icon-button.js +0 -78
- package/dist/src/core/furnace-validate-registration.d.ts +0 -67
- package/dist/src/core/furnace-validate-registration.js +0 -487
- package/dist/src/core/furnace-validate-structure.d.ts +0 -22
- package/dist/src/core/furnace-validate-structure.js +0 -122
- package/dist/src/core/furnace-validate.d.ts +0 -41
- package/dist/src/core/furnace-validate.js +0 -302
- package/dist/src/core/furnace-version-drift.d.ts +0 -57
- package/dist/src/core/furnace-version-drift.js +0 -102
- package/dist/src/core/gecko-dom-types.d.ts +0 -2
- package/dist/src/core/gecko-dom-types.js +0 -17
- package/dist/src/core/git-base.d.ts +0 -101
- package/dist/src/core/git-base.js +0 -162
- package/dist/src/core/git-diff-new-file.d.ts +0 -40
- package/dist/src/core/git-diff-new-file.js +0 -118
- package/dist/src/core/git-diff.d.ts +0 -82
- package/dist/src/core/git-diff.js +0 -539
- package/dist/src/core/git-file-ops.d.ts +0 -108
- package/dist/src/core/git-file-ops.js +0 -280
- package/dist/src/core/git-readonly-index.d.ts +0 -91
- package/dist/src/core/git-readonly-index.js +0 -177
- package/dist/src/core/git-status.d.ts +0 -84
- package/dist/src/core/git-status.js +0 -208
- package/dist/src/core/git.d.ts +0 -114
- package/dist/src/core/git.js +0 -540
- package/dist/src/core/harness-helper-pids.d.ts +0 -98
- package/dist/src/core/harness-helper-pids.js +0 -240
- package/dist/src/core/harness-orphans.d.ts +0 -118
- package/dist/src/core/harness-orphans.js +0 -268
- package/dist/src/core/harness-port-fallback.d.ts +0 -60
- package/dist/src/core/harness-port-fallback.js +0 -96
- package/dist/src/core/harness-port-reservation.d.ts +0 -60
- package/dist/src/core/harness-port-reservation.js +0 -122
- package/dist/src/core/history-log-file.d.ts +0 -61
- package/dist/src/core/history-log-file.js +0 -164
- package/dist/src/core/history-log.d.ts +0 -20
- package/dist/src/core/history-log.js +0 -30
- package/dist/src/core/json-preserving-edit.d.ts +0 -22
- package/dist/src/core/json-preserving-edit.js +0 -199
- package/dist/src/core/launchable-build.d.ts +0 -39
- package/dist/src/core/launchable-build.js +0 -85
- package/dist/src/core/license-headers.d.ts +0 -103
- package/dist/src/core/license-headers.js +0 -318
- package/dist/src/core/line-prefixer.d.ts +0 -18
- package/dist/src/core/line-prefixer.js +0 -34
- package/dist/src/core/lit-template-regions.d.ts +0 -4
- package/dist/src/core/lit-template-regions.js +0 -50
- package/dist/src/core/mach-build-artifacts.d.ts +0 -176
- package/dist/src/core/mach-build-artifacts.js +0 -436
- package/dist/src/core/mach-error-hints.d.ts +0 -24
- package/dist/src/core/mach-error-hints.js +0 -135
- package/dist/src/core/mach-known-noise-filter.d.ts +0 -122
- package/dist/src/core/mach-known-noise-filter.js +0 -257
- package/dist/src/core/mach-mozconfig.d.ts +0 -57
- package/dist/src/core/mach-mozconfig.js +0 -166
- package/dist/src/core/mach-python.d.ts +0 -19
- package/dist/src/core/mach-python.js +0 -131
- package/dist/src/core/mach-resource-shim.d.ts +0 -107
- package/dist/src/core/mach-resource-shim.js +0 -640
- package/dist/src/core/mach.d.ts +0 -284
- package/dist/src/core/mach.js +0 -445
- package/dist/src/core/marionette-port.d.ts +0 -153
- package/dist/src/core/marionette-port.js +0 -474
- package/dist/src/core/marionette-preflight.d.ts +0 -58
- package/dist/src/core/marionette-preflight.js +0 -332
- package/dist/src/core/markdown-table.d.ts +0 -104
- package/dist/src/core/markdown-table.js +0 -265
- package/dist/src/core/mochitest-server-port.d.ts +0 -81
- package/dist/src/core/mochitest-server-port.js +0 -175
- package/dist/src/core/module-resolution-preflight.d.ts +0 -65
- package/dist/src/core/module-resolution-preflight.js +0 -171
- package/dist/src/core/moz-manifest-helpers.d.ts +0 -79
- package/dist/src/core/moz-manifest-helpers.js +0 -163
- package/dist/src/core/moz-manifest-register.d.ts +0 -19
- package/dist/src/core/moz-manifest-register.js +0 -51
- package/dist/src/core/moz-manifest-rules.d.ts +0 -58
- package/dist/src/core/moz-manifest-rules.js +0 -264
- package/dist/src/core/moz-manifest-tokenizers.d.ts +0 -38
- package/dist/src/core/moz-manifest-tokenizers.js +0 -108
- package/dist/src/core/negative-control-compiled.d.ts +0 -46
- package/dist/src/core/negative-control-compiled.js +0 -109
- package/dist/src/core/negative-control-diff.d.ts +0 -51
- package/dist/src/core/negative-control-diff.js +0 -204
- package/dist/src/core/negative-control.d.ts +0 -150
- package/dist/src/core/negative-control.js +0 -399
- package/dist/src/core/objdir-install-manifests.d.ts +0 -73
- package/dist/src/core/objdir-install-manifests.js +0 -226
- package/dist/src/core/objdir-maintenance.d.ts +0 -10
- package/dist/src/core/objdir-maintenance.js +0 -167
- package/dist/src/core/ownership-table.d.ts +0 -53
- package/dist/src/core/ownership-table.js +0 -159
- package/dist/src/core/parent-exit-watchdog.d.ts +0 -62
- package/dist/src/core/parent-exit-watchdog.js +0 -69
- package/dist/src/core/park-store.d.ts +0 -63
- package/dist/src/core/park-store.js +0 -216
- package/dist/src/core/parser-fallback.d.ts +0 -50
- package/dist/src/core/parser-fallback.js +0 -61
- package/dist/src/core/patch-apply-fuzz.d.ts +0 -57
- package/dist/src/core/patch-apply-fuzz.js +0 -125
- package/dist/src/core/patch-apply.d.ts +0 -88
- package/dist/src/core/patch-apply.js +0 -435
- package/dist/src/core/patch-export-coverage.d.ts +0 -49
- package/dist/src/core/patch-export-coverage.js +0 -73
- package/dist/src/core/patch-export-metadata.d.ts +0 -46
- package/dist/src/core/patch-export-metadata.js +0 -47
- package/dist/src/core/patch-export-update.d.ts +0 -55
- package/dist/src/core/patch-export-update.js +0 -95
- package/dist/src/core/patch-export.d.ts +0 -175
- package/dist/src/core/patch-export.js +0 -312
- package/dist/src/core/patch-files.d.ts +0 -17
- package/dist/src/core/patch-files.js +0 -59
- package/dist/src/core/patch-identifier-suggest.d.ts +0 -26
- package/dist/src/core/patch-identifier-suggest.js +0 -135
- package/dist/src/core/patch-lint-binary.d.ts +0 -45
- package/dist/src/core/patch-lint-binary.js +0 -39
- package/dist/src/core/patch-lint-cache.d.ts +0 -78
- package/dist/src/core/patch-lint-cache.js +0 -233
- package/dist/src/core/patch-lint-checkjs-any-import.d.ts +0 -39
- package/dist/src/core/patch-lint-checkjs-any-import.js +0 -63
- package/dist/src/core/patch-lint-checkjs-cache.d.ts +0 -18
- package/dist/src/core/patch-lint-checkjs-cache.js +0 -45
- package/dist/src/core/patch-lint-checkjs-diagnostics.d.ts +0 -17
- package/dist/src/core/patch-lint-checkjs-diagnostics.js +0 -32
- package/dist/src/core/patch-lint-checkjs.d.ts +0 -180
- package/dist/src/core/patch-lint-checkjs.js +0 -611
- package/dist/src/core/patch-lint-chrome-jsdoc.d.ts +0 -43
- package/dist/src/core/patch-lint-chrome-jsdoc.js +0 -90
- package/dist/src/core/patch-lint-code-lines.d.ts +0 -59
- package/dist/src/core/patch-lint-code-lines.js +0 -105
- package/dist/src/core/patch-lint-creators.d.ts +0 -26
- package/dist/src/core/patch-lint-creators.js +0 -45
- package/dist/src/core/patch-lint-cross.d.ts +0 -232
- package/dist/src/core/patch-lint-cross.js +0 -590
- package/dist/src/core/patch-lint-css.d.ts +0 -27
- package/dist/src/core/patch-lint-css.js +0 -228
- package/dist/src/core/patch-lint-diff-tag.d.ts +0 -51
- package/dist/src/core/patch-lint-diff-tag.js +0 -105
- package/dist/src/core/patch-lint-diff.d.ts +0 -42
- package/dist/src/core/patch-lint-diff.js +0 -100
- package/dist/src/core/patch-lint-file-size.d.ts +0 -57
- package/dist/src/core/patch-lint-file-size.js +0 -62
- package/dist/src/core/patch-lint-forward-registration-extended.d.ts +0 -61
- package/dist/src/core/patch-lint-forward-registration-extended.js +0 -265
- package/dist/src/core/patch-lint-forward-registration.d.ts +0 -71
- package/dist/src/core/patch-lint-forward-registration.js +0 -266
- package/dist/src/core/patch-lint-ignore.d.ts +0 -196
- package/dist/src/core/patch-lint-ignore.js +0 -429
- package/dist/src/core/patch-lint-imports.d.ts +0 -5
- package/dist/src/core/patch-lint-imports.js +0 -67
- package/dist/src/core/patch-lint-jsdoc.d.ts +0 -67
- package/dist/src/core/patch-lint-jsdoc.js +0 -471
- package/dist/src/core/patch-lint-module-registration.d.ts +0 -22
- package/dist/src/core/patch-lint-module-registration.js +0 -97
- package/dist/src/core/patch-lint-mozbuild.d.ts +0 -18
- package/dist/src/core/patch-lint-mozbuild.js +0 -192
- package/dist/src/core/patch-lint-observer.d.ts +0 -37
- package/dist/src/core/patch-lint-observer.js +0 -167
- package/dist/src/core/patch-lint-ownership.d.ts +0 -74
- package/dist/src/core/patch-lint-ownership.js +0 -125
- package/dist/src/core/patch-lint-prettier.d.ts +0 -34
- package/dist/src/core/patch-lint-prettier.js +0 -124
- package/dist/src/core/patch-lint-projection.d.ts +0 -25
- package/dist/src/core/patch-lint-projection.js +0 -43
- package/dist/src/core/patch-lint-queue-types.d.ts +0 -60
- package/dist/src/core/patch-lint-queue-types.js +0 -12
- package/dist/src/core/patch-lint-size-thresholds.d.ts +0 -52
- package/dist/src/core/patch-lint-size-thresholds.js +0 -110
- package/dist/src/core/patch-lint-size.d.ts +0 -117
- package/dist/src/core/patch-lint-size.js +0 -331
- package/dist/src/core/patch-lint-staged-registration.d.ts +0 -78
- package/dist/src/core/patch-lint-staged-registration.js +0 -110
- package/dist/src/core/patch-lint-token-scale.d.ts +0 -57
- package/dist/src/core/patch-lint-token-scale.js +0 -286
- package/dist/src/core/patch-lint-unmanaged-companion.d.ts +0 -106
- package/dist/src/core/patch-lint-unmanaged-companion.js +0 -214
- package/dist/src/core/patch-lint.d.ts +0 -191
- package/dist/src/core/patch-lint.js +0 -529
- package/dist/src/core/patch-lock.d.ts +0 -40
- package/dist/src/core/patch-lock.js +0 -129
- package/dist/src/core/patch-manifest-consistency.d.ts +0 -95
- package/dist/src/core/patch-manifest-consistency.js +0 -256
- package/dist/src/core/patch-manifest-files-affected.d.ts +0 -43
- package/dist/src/core/patch-manifest-files-affected.js +0 -77
- package/dist/src/core/patch-manifest-io.d.ts +0 -199
- package/dist/src/core/patch-manifest-io.js +0 -556
- package/dist/src/core/patch-manifest-key-order.d.ts +0 -23
- package/dist/src/core/patch-manifest-key-order.js +0 -60
- package/dist/src/core/patch-manifest-query.d.ts +0 -55
- package/dist/src/core/patch-manifest-query.js +0 -139
- package/dist/src/core/patch-manifest-resolve.d.ts +0 -21
- package/dist/src/core/patch-manifest-resolve.js +0 -35
- package/dist/src/core/patch-manifest-stage.d.ts +0 -46
- package/dist/src/core/patch-manifest-stage.js +0 -96
- package/dist/src/core/patch-manifest-validate.d.ts +0 -20
- package/dist/src/core/patch-manifest-validate.js +0 -240
- package/dist/src/core/patch-manifest.d.ts +0 -12
- package/dist/src/core/patch-manifest.js +0 -13
- package/dist/src/core/patch-order-legal.d.ts +0 -26
- package/dist/src/core/patch-order-legal.js +0 -88
- package/dist/src/core/patch-parse.d.ts +0 -161
- package/dist/src/core/patch-parse.js +0 -347
- package/dist/src/core/patch-policy-content.d.ts +0 -40
- package/dist/src/core/patch-policy-content.js +0 -216
- package/dist/src/core/patch-policy.d.ts +0 -80
- package/dist/src/core/patch-policy.js +0 -394
- package/dist/src/core/patch-registration-refs.d.ts +0 -41
- package/dist/src/core/patch-registration-refs.js +0 -107
- package/dist/src/core/patch-retired.d.ts +0 -57
- package/dist/src/core/patch-retired.js +0 -92
- package/dist/src/core/patch-source-metadata.d.ts +0 -6
- package/dist/src/core/patch-source-metadata.js +0 -12
- package/dist/src/core/patch-subset.d.ts +0 -18
- package/dist/src/core/patch-subset.js +0 -67
- package/dist/src/core/patch-transform.d.ts +0 -61
- package/dist/src/core/patch-transform.js +0 -198
- package/dist/src/core/preflight-wait.d.ts +0 -22
- package/dist/src/core/preflight-wait.js +0 -62
- package/dist/src/core/process-cpu-time.d.ts +0 -12
- package/dist/src/core/process-cpu-time.js +0 -52
- package/dist/src/core/process-owner.d.ts +0 -9
- package/dist/src/core/process-owner.js +0 -43
- package/dist/src/core/rebase-dry-run.d.ts +0 -48
- package/dist/src/core/rebase-dry-run.js +0 -105
- package/dist/src/core/rebase-from-version.d.ts +0 -46
- package/dist/src/core/rebase-from-version.js +0 -71
- package/dist/src/core/rebase-session.d.ts +0 -100
- package/dist/src/core/rebase-session.js +0 -174
- package/dist/src/core/register-browser-content.d.ts +0 -11
- package/dist/src/core/register-browser-content.js +0 -52
- package/dist/src/core/register-browser-test.d.ts +0 -18
- package/dist/src/core/register-browser-test.js +0 -66
- package/dist/src/core/register-module.d.ts +0 -11
- package/dist/src/core/register-module.js +0 -56
- package/dist/src/core/register-result.d.ts +0 -30
- package/dist/src/core/register-result.js +0 -8
- package/dist/src/core/register-scaffold.d.ts +0 -55
- package/dist/src/core/register-scaffold.js +0 -146
- package/dist/src/core/register-shared-css.d.ts +0 -36
- package/dist/src/core/register-shared-css.js +0 -112
- package/dist/src/core/register-xpcshell-test.d.ts +0 -50
- package/dist/src/core/register-xpcshell-test.js +0 -143
- package/dist/src/core/run-log-redact.d.ts +0 -38
- package/dist/src/core/run-log-redact.js +0 -69
- package/dist/src/core/run-log.d.ts +0 -97
- package/dist/src/core/run-log.js +0 -334
- package/dist/src/core/run-profile.d.ts +0 -57
- package/dist/src/core/run-profile.js +0 -137
- package/dist/src/core/shared-ftl.d.ts +0 -28
- package/dist/src/core/shared-ftl.js +0 -49
- package/dist/src/core/signal-critical.d.ts +0 -38
- package/dist/src/core/signal-critical.js +0 -62
- package/dist/src/core/smoke-patterns.d.ts +0 -81
- package/dist/src/core/smoke-patterns.js +0 -176
- package/dist/src/core/state-file.d.ts +0 -60
- package/dist/src/core/state-file.js +0 -71
- package/dist/src/core/status-binary.d.ts +0 -62
- package/dist/src/core/status-binary.js +0 -133
- package/dist/src/core/status-classify.d.ts +0 -96
- package/dist/src/core/status-classify.js +0 -244
- package/dist/src/core/test-changed-prefs.d.ts +0 -30
- package/dist/src/core/test-changed-prefs.js +0 -93
- package/dist/src/core/test-harness-crash.d.ts +0 -251
- package/dist/src/core/test-harness-crash.js +0 -780
- package/dist/src/core/test-harness-infra.d.ts +0 -32
- package/dist/src/core/test-harness-infra.js +0 -69
- package/dist/src/core/test-harness-output.d.ts +0 -45
- package/dist/src/core/test-harness-output.js +0 -119
- package/dist/src/core/test-harness-signature.d.ts +0 -57
- package/dist/src/core/test-harness-signature.js +0 -35
- package/dist/src/core/test-harness-verdict-notes.d.ts +0 -54
- package/dist/src/core/test-harness-verdict-notes.js +0 -48
- package/dist/src/core/test-host-state.d.ts +0 -14
- package/dist/src/core/test-host-state.js +0 -80
- package/dist/src/core/test-path-scope.d.ts +0 -59
- package/dist/src/core/test-path-scope.js +0 -147
- package/dist/src/core/test-profile-files.d.ts +0 -17
- package/dist/src/core/test-profile-files.js +0 -75
- package/dist/src/core/test-raw-log.d.ts +0 -66
- package/dist/src/core/test-raw-log.js +0 -122
- package/dist/src/core/test-run-completeness.d.ts +0 -97
- package/dist/src/core/test-run-completeness.js +0 -191
- package/dist/src/core/test-stale-check.d.ts +0 -213
- package/dist/src/core/test-stale-check.js +0 -396
- package/dist/src/core/test-stale-exempt.d.ts +0 -40
- package/dist/src/core/test-stale-exempt.js +0 -70
- package/dist/src/core/test-stale-symlink.d.ts +0 -12
- package/dist/src/core/test-stale-symlink.js +0 -39
- package/dist/src/core/test-stall-triage.d.ts +0 -51
- package/dist/src/core/test-stall-triage.js +0 -142
- package/dist/src/core/test-xpcshell-retry.d.ts +0 -35
- package/dist/src/core/test-xpcshell-retry.js +0 -31
- package/dist/src/core/token-category.d.ts +0 -54
- package/dist/src/core/token-category.js +0 -299
- package/dist/src/core/token-coverage.d.ts +0 -12
- package/dist/src/core/token-coverage.js +0 -96
- package/dist/src/core/token-dark-mode.d.ts +0 -64
- package/dist/src/core/token-dark-mode.js +0 -186
- package/dist/src/core/token-docs.d.ts +0 -34
- package/dist/src/core/token-docs.js +0 -102
- package/dist/src/core/token-inventory.d.ts +0 -56
- package/dist/src/core/token-inventory.js +0 -114
- package/dist/src/core/token-lint.d.ts +0 -53
- package/dist/src/core/token-lint.js +0 -131
- package/dist/src/core/token-manager.d.ts +0 -87
- package/dist/src/core/token-manager.js +0 -407
- package/dist/src/core/token-scaffold.d.ts +0 -36
- package/dist/src/core/token-scaffold.js +0 -73
- package/dist/src/core/token-sibling-sheets.d.ts +0 -46
- package/dist/src/core/token-sibling-sheets.js +0 -119
- package/dist/src/core/token-variant.d.ts +0 -90
- package/dist/src/core/token-variant.js +0 -327
- package/dist/src/core/toolchain-preflight.d.ts +0 -90
- package/dist/src/core/toolchain-preflight.js +0 -251
- package/dist/src/core/tree-cow.d.ts +0 -16
- package/dist/src/core/tree-cow.js +0 -71
- package/dist/src/core/tree-guard.d.ts +0 -35
- package/dist/src/core/tree-guard.js +0 -194
- package/dist/src/core/tree-store.d.ts +0 -143
- package/dist/src/core/tree-store.js +0 -478
- package/dist/src/core/typecheck-shim.d.ts +0 -90
- package/dist/src/core/typecheck-shim.js +0 -507
- package/dist/src/core/typecheck.d.ts +0 -75
- package/dist/src/core/typecheck.js +0 -433
- package/dist/src/core/wire-destroy.d.ts +0 -25
- package/dist/src/core/wire-destroy.js +0 -126
- package/dist/src/core/wire-dom-fragment.d.ts +0 -44
- package/dist/src/core/wire-dom-fragment.js +0 -139
- package/dist/src/core/wire-init.d.ts +0 -28
- package/dist/src/core/wire-init.js +0 -219
- package/dist/src/core/wire-subscript.d.ts +0 -23
- package/dist/src/core/wire-subscript.js +0 -145
- package/dist/src/core/wire-utils.d.ts +0 -149
- package/dist/src/core/wire-utils.js +0 -338
- package/dist/src/core/xpcshell-appdir.d.ts +0 -157
- package/dist/src/core/xpcshell-appdir.js +0 -299
- package/dist/src/core/xpcshell-profile-dir.d.ts +0 -12
- package/dist/src/core/xpcshell-profile-dir.js +0 -45
- package/dist/src/errors/base.d.ts +0 -217
- package/dist/src/errors/base.js +0 -279
- package/dist/src/errors/build.d.ts +0 -92
- package/dist/src/errors/build.js +0 -166
- package/dist/src/errors/codes.d.ts +0 -74
- package/dist/src/errors/codes.js +0 -74
- package/dist/src/errors/config.d.ts +0 -17
- package/dist/src/errors/config.js +0 -39
- package/dist/src/errors/download.d.ts +0 -66
- package/dist/src/errors/download.js +0 -160
- package/dist/src/errors/furnace.d.ts +0 -20
- package/dist/src/errors/furnace.js +0 -28
- package/dist/src/errors/git.d.ts +0 -65
- package/dist/src/errors/git.js +0 -140
- package/dist/src/errors/patch.d.ts +0 -27
- package/dist/src/errors/patch.js +0 -52
- package/dist/src/errors/rebase.d.ts +0 -42
- package/dist/src/errors/rebase.js +0 -71
- package/dist/src/errors/run.d.ts +0 -16
- package/dist/src/errors/run.js +0 -22
- package/dist/src/index.d.ts +0 -42
- package/dist/src/index.js +0 -32
- package/dist/src/types/cli.d.ts +0 -14
- package/dist/src/types/commands/index.d.ts +0 -6
- package/dist/src/types/commands/index.js +0 -5
- package/dist/src/types/commands/options.d.ts +0 -1367
- package/dist/src/types/commands/options.js +0 -5
- package/dist/src/types/commands/patches.d.ts +0 -352
- package/dist/src/types/commands/patches.js +0 -5
- package/dist/src/types/commands/project.d.ts +0 -51
- package/dist/src/types/commands/project.js +0 -5
- package/dist/src/types/config.d.ts +0 -703
- package/dist/src/types/config.js +0 -15
- package/dist/src/types/furnace.d.ts +0 -415
- package/dist/src/types/furnace.js +0 -26
- package/dist/src/types/index.d.ts +0 -5
- package/dist/src/types/index.js +0 -5
- package/dist/src/types/json.d.ts +0 -22
- package/dist/src/types/json.js +0 -11
- package/dist/src/types/typecheck.d.ts +0 -51
- package/dist/src/types/typecheck.js +0 -14
- package/dist/src/utils/assert.d.ts +0 -34
- package/dist/src/utils/assert.js +0 -61
- package/dist/src/utils/build-info.d.ts +0 -30
- package/dist/src/utils/build-info.js +0 -99
- package/dist/src/utils/child-env.d.ts +0 -28
- package/dist/src/utils/child-env.js +0 -27
- package/dist/src/utils/concurrency.d.ts +0 -8
- package/dist/src/utils/concurrency.js +0 -32
- package/dist/src/utils/elapsed.d.ts +0 -2
- package/dist/src/utils/elapsed.js +0 -23
- package/dist/src/utils/errors.d.ts +0 -39
- package/dist/src/utils/errors.js +0 -67
- package/dist/src/utils/fs.d.ts +0 -113
- package/dist/src/utils/fs.js +0 -337
- package/dist/src/utils/hash.d.ts +0 -12
- package/dist/src/utils/hash.js +0 -16
- package/dist/src/utils/line-dispatch.d.ts +0 -15
- package/dist/src/utils/line-dispatch.js +0 -48
- package/dist/src/utils/logger.d.ts +0 -109
- package/dist/src/utils/logger.js +0 -270
- package/dist/src/utils/machine-output.d.ts +0 -12
- package/dist/src/utils/machine-output.js +0 -33
- package/dist/src/utils/options.d.ts +0 -155
- package/dist/src/utils/options.js +0 -312
- package/dist/src/utils/package-root.d.ts +0 -21
- package/dist/src/utils/package-root.js +0 -70
- package/dist/src/utils/parse.d.ts +0 -117
- package/dist/src/utils/parse.js +0 -214
- package/dist/src/utils/path-glob.d.ts +0 -15
- package/dist/src/utils/path-glob.js +0 -47
- package/dist/src/utils/paths.d.ts +0 -31
- package/dist/src/utils/paths.js +0 -80
- package/dist/src/utils/platform.d.ts +0 -9
- package/dist/src/utils/platform.js +0 -14
- package/dist/src/utils/process-group.d.ts +0 -42
- package/dist/src/utils/process-group.js +0 -190
- package/dist/src/utils/process-input.d.ts +0 -27
- package/dist/src/utils/process-input.js +0 -46
- package/dist/src/utils/process.d.ts +0 -293
- package/dist/src/utils/process.js +0 -593
- package/dist/src/utils/ps-duration.d.ts +0 -31
- package/dist/src/utils/ps-duration.js +0 -70
- package/dist/src/utils/regex.d.ts +0 -39
- package/dist/src/utils/regex.js +0 -109
- package/dist/src/utils/sleep.d.ts +0 -25
- package/dist/src/utils/sleep.js +0 -30
- package/dist/src/utils/stdio-drain.d.ts +0 -28
- package/dist/src/utils/stdio-drain.js +0 -54
- package/dist/src/utils/validation.d.ts +0 -182
- package/dist/src/utils/validation.js +0 -394
- package/docs/lifecycle-invariants.md +0 -523
- package/docs/run-logs.md +0 -122
- package/docs/verification-trees.md +0 -49
- /package/dist/src/{types/cli.js → cli/context.js} +0 -0
|
@@ -1,433 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Whole-project TypeScript type checking driven by user-supplied
|
|
4
|
-
* `jsconfig.json` paths. The engine behind the `fireforge typecheck`
|
|
5
|
-
* command.
|
|
6
|
-
*
|
|
7
|
-
* Distinct from `patch-lint-checkjs.ts` (patch-hygiene): patchLint is
|
|
8
|
-
* scoped, fireforge-controlled, and runs as part of `fireforge lint`.
|
|
9
|
-
* This command runs whole projects with user-controlled compiler
|
|
10
|
-
* options and is intended as a CI gate. The two share the Firefox
|
|
11
|
-
* globals shim and suppressed-code list (via `typecheck-shim.ts`) so
|
|
12
|
-
* a file that lints clean cannot fail typecheck for a reason the
|
|
13
|
-
* operator could not have inferred from the docs.
|
|
14
|
-
*
|
|
15
|
-
* Loads the TypeScript compiler API via dynamic import so it is only
|
|
16
|
-
* required when `typecheck.projects` is configured. TypeScript
|
|
17
|
-
* remains a dev-dependency. If a user invokes `fireforge typecheck`
|
|
18
|
-
* without installing it, the function returns a clear error pointing
|
|
19
|
-
* at `npm install typescript`.
|
|
20
|
-
*/
|
|
21
|
-
import { mkdir, readdir, rm } from 'node:fs/promises';
|
|
22
|
-
import { dirname, isAbsolute, join, relative, resolve } from 'node:path';
|
|
23
|
-
import { toError } from '../utils/errors.js';
|
|
24
|
-
import { pathExists } from '../utils/fs.js';
|
|
25
|
-
import { sha256Hex } from '../utils/hash.js';
|
|
26
|
-
import { verbose } from '../utils/logger.js';
|
|
27
|
-
import { getPackageVersion } from '../utils/package-root.js';
|
|
28
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
29
|
-
import { withGeckoDomTypes } from './gecko-dom-types.js';
|
|
30
|
-
import { composeShimSource, SHIM_FILENAME, SUPPRESSED_DIAGNOSTIC_CODES, UNDEFINED_IDENTIFIER_CODES, UNDEFINED_IDENTIFIER_HINT, } from './typecheck-shim.js';
|
|
31
|
-
/**
|
|
32
|
-
* Sentinel string surfaced as a `TypecheckIssue.message` when the
|
|
33
|
-
* project's jsconfig sets `checkJs: false`. Exported so tests can
|
|
34
|
-
* pin the contract, since operators rely on it to spot opted-out projects
|
|
35
|
-
* in CI logs.
|
|
36
|
-
*/
|
|
37
|
-
export const CHECK_JS_DISABLED_NOTICE = 'Project sets "checkJs: false" — skipping (override the jsconfig to enable typecheck).';
|
|
38
|
-
/**
|
|
39
|
-
* Runs `fireforge typecheck` against every project listed in `cfg.projects`.
|
|
40
|
-
*
|
|
41
|
-
* Per-project flow:
|
|
42
|
-
* 1. Read the jsconfig via the TS API. JSON parse / config-spec
|
|
43
|
-
* errors are surfaced as issues rather than thrown, because a single
|
|
44
|
-
* broken project must not abort the rest of the run.
|
|
45
|
-
* 2. Compute final compiler options from the user's options. We
|
|
46
|
-
* only force `noEmit: true` (this is a typecheck, not a build).
|
|
47
|
-
* We honour `strict`, `target`, `lib`, `module`, `paths`,
|
|
48
|
-
* `include`, `exclude`. `allowJs` and `checkJs` default to
|
|
49
|
-
* `true` only when the user has not set them. If the user set
|
|
50
|
-
* `checkJs: false` we treat that as an explicit opt-out and
|
|
51
|
-
* skip the project with a single notice (see {@link CHECK_JS_DISABLED_NOTICE}).
|
|
52
|
-
* 3. Inject the synthetic shim (built-in + optional extraShim) as
|
|
53
|
-
* a virtual root file that the custom CompilerHost serves.
|
|
54
|
-
* 4. Build the program and collect semantic, syntactic, options,
|
|
55
|
-
* and global diagnostics. The patchLint flow only reads semantic +
|
|
56
|
-
* syntactic, which is fine for hygiene, but a CI gate needs the full
|
|
57
|
-
* set so misconfigured `lib`/`paths` entries fail loudly.
|
|
58
|
-
* 5. Drop diagnostics whose code is in `SUPPRESSED_DIAGNOSTIC_CODES`
|
|
59
|
-
* and any diagnostic originating in the synthetic shim itself.
|
|
60
|
-
*
|
|
61
|
-
* @param projectRoot - Absolute project root. All paths in `cfg` are resolved against it.
|
|
62
|
-
* @param cfg - Validated `typecheck` block from `fireforge.json`.
|
|
63
|
-
* @returns One {@link TypecheckProjectResult} per entry in `cfg.projects`,
|
|
64
|
-
* in declared order. The CLI is responsible for printing the issues
|
|
65
|
-
* and computing the exit code.
|
|
66
|
-
*/
|
|
67
|
-
export async function runTypecheck(projectRoot, cfg, runOptions = {}) {
|
|
68
|
-
// Dynamic import, so typescript stays a dev dependency. Same pattern
|
|
69
|
-
// as `patch-lint-checkjs.ts`. The empty-projects-array case is
|
|
70
|
-
// already rejected by config-validate, so we don't gate the import
|
|
71
|
-
// on `cfg.projects.length`.
|
|
72
|
-
let ts;
|
|
73
|
-
try {
|
|
74
|
-
ts = await import('typescript');
|
|
75
|
-
}
|
|
76
|
-
catch {
|
|
77
|
-
return cfg.projects.map((project) => ({
|
|
78
|
-
project,
|
|
79
|
-
issues: [
|
|
80
|
-
{
|
|
81
|
-
file: '(typecheck)',
|
|
82
|
-
line: 1,
|
|
83
|
-
column: 1,
|
|
84
|
-
code: 0,
|
|
85
|
-
category: 'error',
|
|
86
|
-
message: 'fireforge typecheck requires the "typescript" package. Run "npm install typescript" to enable type checking.',
|
|
87
|
-
project,
|
|
88
|
-
},
|
|
89
|
-
],
|
|
90
|
-
filesChecked: 0,
|
|
91
|
-
}));
|
|
92
|
-
}
|
|
93
|
-
// Compose the shim per project: the effective extraShim is the per-project
|
|
94
|
-
// override (a path, or `null` to opt out) when present, else the shared
|
|
95
|
-
// top-level extraShim. A project that narrows `lib`/`types` can opt out of
|
|
96
|
-
// a Gecko-lib shim hub that another project needs, so the composed shim is
|
|
97
|
-
// not injected identically everywhere. Compositions are cached by the
|
|
98
|
-
// resolved extraShim path so projects sharing a shim do not recompose it.
|
|
99
|
-
const shimCache = new Map();
|
|
100
|
-
const composeForProject = async (extraShim) => {
|
|
101
|
-
const key = extraShim ?? '';
|
|
102
|
-
const cached = shimCache.get(key);
|
|
103
|
-
if (cached !== undefined)
|
|
104
|
-
return cached;
|
|
105
|
-
const composed = await composeShimSource(projectRoot, extraShim, {
|
|
106
|
-
litTypes: cfg.litTypes,
|
|
107
|
-
});
|
|
108
|
-
if (composed.extraShimAppended) {
|
|
109
|
-
verbose(`typecheck: extra shim ${extraShim ?? ''} appended to Firefox globals shim`);
|
|
110
|
-
}
|
|
111
|
-
shimCache.set(key, composed.source);
|
|
112
|
-
return composed.source;
|
|
113
|
-
};
|
|
114
|
-
const results = [];
|
|
115
|
-
for (const projectPath of cfg.projects) {
|
|
116
|
-
const extraShim = resolveProjectExtraShim(cfg, projectPath);
|
|
117
|
-
let shimSource;
|
|
118
|
-
try {
|
|
119
|
-
shimSource = await composeForProject(extraShim);
|
|
120
|
-
}
|
|
121
|
-
catch (err) {
|
|
122
|
-
// A missing or unreadable shim fails only the project(s) that use it,
|
|
123
|
-
// not the whole run. Projects with a different (or no) shim still run.
|
|
124
|
-
const message = toError(err).message;
|
|
125
|
-
results.push({
|
|
126
|
-
project: projectPath,
|
|
127
|
-
issues: [
|
|
128
|
-
{
|
|
129
|
-
file: extraShim ?? '(typecheck)',
|
|
130
|
-
line: 1,
|
|
131
|
-
column: 1,
|
|
132
|
-
code: 0,
|
|
133
|
-
category: 'error',
|
|
134
|
-
message,
|
|
135
|
-
project: projectPath,
|
|
136
|
-
},
|
|
137
|
-
],
|
|
138
|
-
filesChecked: 0,
|
|
139
|
-
});
|
|
140
|
-
continue;
|
|
141
|
-
}
|
|
142
|
-
results.push(await runTypecheckForProject(ts, projectRoot, projectPath, shimSource, cfg.undefinedIdentifiers ?? 'warning', runOptions.noCache === true
|
|
143
|
-
? undefined
|
|
144
|
-
: (runOptions.cacheDir ?? join(projectRoot, '.fireforge', 'typecheck'))));
|
|
145
|
-
}
|
|
146
|
-
return results;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Resolves the effective extra shim for a single project: a `projectOverrides`
|
|
150
|
-
* entry wins (a string path overrides, `null` opts out → `undefined`), else
|
|
151
|
-
* the shared top-level `extraShim` applies.
|
|
152
|
-
*/
|
|
153
|
-
function resolveProjectExtraShim(cfg, projectPath) {
|
|
154
|
-
const overrides = cfg.projectOverrides;
|
|
155
|
-
if (overrides && Object.hasOwn(overrides, projectPath)) {
|
|
156
|
-
const value = overrides[projectPath];
|
|
157
|
-
return value === null ? undefined : value;
|
|
158
|
-
}
|
|
159
|
-
return cfg.extraShim;
|
|
160
|
-
}
|
|
161
|
-
/** Runs typecheck for a single jsconfig path, isolating its failures. */
|
|
162
|
-
async function runTypecheckForProject(ts, projectRoot, projectPath, shimSource, undefinedIdentifiers = 'warning', cacheDir) {
|
|
163
|
-
const absConfig = resolve(projectRoot, projectPath);
|
|
164
|
-
if (!(await pathExists(absConfig))) {
|
|
165
|
-
return {
|
|
166
|
-
project: projectPath,
|
|
167
|
-
issues: [
|
|
168
|
-
{
|
|
169
|
-
file: projectPath,
|
|
170
|
-
line: 1,
|
|
171
|
-
column: 1,
|
|
172
|
-
code: 0,
|
|
173
|
-
category: 'error',
|
|
174
|
-
message: `jsconfig.json not found: ${projectPath} (resolved to ${absConfig})`,
|
|
175
|
-
project: projectPath,
|
|
176
|
-
},
|
|
177
|
-
],
|
|
178
|
-
filesChecked: 0,
|
|
179
|
-
};
|
|
180
|
-
}
|
|
181
|
-
// 1) Read the JSON config. ts.readConfigFile reports JSON-shape
|
|
182
|
-
// errors via the returned diagnostic. Missing files fall back to
|
|
183
|
-
// pathExists above, which gives a more directly actionable message.
|
|
184
|
-
const readResult = ts.readConfigFile(absConfig, (path) => ts.sys.readFile(path));
|
|
185
|
-
if (readResult.error) {
|
|
186
|
-
return {
|
|
187
|
-
project: projectPath,
|
|
188
|
-
issues: [diagnosticToIssue(ts, readResult.error, projectPath, projectPath)],
|
|
189
|
-
filesChecked: 0,
|
|
190
|
-
};
|
|
191
|
-
}
|
|
192
|
-
// 2) Parse the config content. This is what surfaces config-spec
|
|
193
|
-
// errors (unknown options, mismatched types in `compilerOptions`,
|
|
194
|
-
// bad `include` patterns, etc.), the TS5xxx codes. We surface them
|
|
195
|
-
// alongside semantic diagnostics so the operator sees the same
|
|
196
|
-
// output `tsc -p` would have produced.
|
|
197
|
-
const parsed = ts.parseJsonConfigFileContent(readResult.config, ts.sys, dirname(absConfig),
|
|
198
|
-
/* existingOptions */ undefined, absConfig);
|
|
199
|
-
const issues = [];
|
|
200
|
-
for (const diag of parsed.errors) {
|
|
201
|
-
if (SUPPRESSED_DIAGNOSTIC_CODES.has(diag.code))
|
|
202
|
-
continue;
|
|
203
|
-
issues.push(diagnosticToIssue(ts, diag, absConfig, projectPath));
|
|
204
|
-
}
|
|
205
|
-
// 3) Honour explicit `checkJs: false`. The user has opted out for
|
|
206
|
-
// an IDE reason (likely "checkJs floods my workflow with non-actionable
|
|
207
|
-
// notes"). Flipping it on here would surface ~hundreds of issues that
|
|
208
|
-
// the operator already evaluated and rejected. Surface a single
|
|
209
|
-
// notice so it is visible in CI logs rather than silently passing.
|
|
210
|
-
const rawConfig = readResult.config;
|
|
211
|
-
if (rawConfig?.compilerOptions?.['checkJs'] === false) {
|
|
212
|
-
issues.push({
|
|
213
|
-
file: projectPath,
|
|
214
|
-
line: 1,
|
|
215
|
-
column: 1,
|
|
216
|
-
code: 0,
|
|
217
|
-
category: 'warning',
|
|
218
|
-
message: CHECK_JS_DISABLED_NOTICE,
|
|
219
|
-
project: projectPath,
|
|
220
|
-
});
|
|
221
|
-
return { project: projectPath, issues, filesChecked: parsed.fileNames.length };
|
|
222
|
-
}
|
|
223
|
-
// 4) Compute final compiler options. `noEmit: true` is forced, so we
|
|
224
|
-
// never write artifacts. `allowJs` / `checkJs` default to true
|
|
225
|
-
// *only* when unset (so a user can flip them off without us
|
|
226
|
-
// overriding). If the user set `allowJs: false` they're saying
|
|
227
|
-
// "don't even include JS in this typecheck", which is rare but
|
|
228
|
-
// legitimate (e.g. an isolated `.d.ts`-only project).
|
|
229
|
-
const options = {
|
|
230
|
-
...parsed.options,
|
|
231
|
-
noEmit: true,
|
|
232
|
-
allowJs: parsed.options.allowJs ?? true,
|
|
233
|
-
checkJs: parsed.options.checkJs ?? true,
|
|
234
|
-
// Never the jsconfig's own incremental sidecar: a user jsconfig under
|
|
235
|
-
// `engine/` that sets `incremental` (or names a `tsBuildInfoFile`) would
|
|
236
|
-
// have this command drop a `.tsbuildinfo` inside the primary engine
|
|
237
|
-
// checkout, a second writer that invalidates a concurrent
|
|
238
|
-
// `fireforge test`'s engine fingerprint. FireForge's own build info
|
|
239
|
-
// lives under `.fireforge/typecheck/` instead (see below).
|
|
240
|
-
incremental: false,
|
|
241
|
-
// skipLibCheck is not forced. The user owns it via their jsconfig.
|
|
242
|
-
};
|
|
243
|
-
// `exactOptionalPropertyTypes` forbids assigning `undefined` to an
|
|
244
|
-
// optional `string`, so the sidecar path is dropped rather than unset.
|
|
245
|
-
delete options.tsBuildInfoFile;
|
|
246
|
-
// 5) The synthetic shim file. Use a project-rooted path with a
|
|
247
|
-
// hidden-style prefix so it is unlikely to collide with any real
|
|
248
|
-
// file, and never write it to disk. The CompilerHost below serves
|
|
249
|
-
// it from `shimSource` for `fileExists`/`readFile`/`getSourceFile`.
|
|
250
|
-
const projectDir = dirname(absConfig);
|
|
251
|
-
// Forward slashes on purpose: TypeScript normalizes every `fileName` it
|
|
252
|
-
// hands a CompilerHost, on every platform. A shim path carrying Windows
|
|
253
|
-
// separators never matches those callbacks, so the shim is not served (its
|
|
254
|
-
// globals report as undefined identifiers) and its own diagnostics are not
|
|
255
|
-
// filtered out below, so the pass reports failures that do not exist.
|
|
256
|
-
const shimPath = normalizePathSlashes(resolve(projectDir, `.fireforge-${SHIM_FILENAME}`));
|
|
257
|
-
const rootFiles = [...parsed.fileNames, shimPath];
|
|
258
|
-
const defaultHost = withGeckoDomTypes(ts, ts.createCompilerHost(options));
|
|
259
|
-
const host = {
|
|
260
|
-
...defaultHost,
|
|
261
|
-
getSourceFile(fileName, languageVersion, onError, shouldCreate) {
|
|
262
|
-
if (fileName === shimPath) {
|
|
263
|
-
return ts.createSourceFile(fileName, shimSource, languageVersion, true);
|
|
264
|
-
}
|
|
265
|
-
return defaultHost.getSourceFile(fileName, languageVersion, onError, shouldCreate);
|
|
266
|
-
},
|
|
267
|
-
fileExists(fileName) {
|
|
268
|
-
if (fileName === shimPath)
|
|
269
|
-
return true;
|
|
270
|
-
return defaultHost.fileExists(fileName);
|
|
271
|
-
},
|
|
272
|
-
readFile(fileName) {
|
|
273
|
-
if (fileName === shimPath)
|
|
274
|
-
return shimSource;
|
|
275
|
-
return defaultHost.readFile(fileName);
|
|
276
|
-
},
|
|
277
|
-
};
|
|
278
|
-
// Incremental build info, keyed by everything outside the program's own
|
|
279
|
-
// files that can change a verdict: the composed shim, the TypeScript
|
|
280
|
-
// version, the compiler options, the undefined-identifier gate and the
|
|
281
|
-
// FireForge version. A change to any of them selects a different file,
|
|
282
|
-
// so a stale verdict is never replayed. Files inside the program are
|
|
283
|
-
// tracked by TypeScript's own per-file hashes in the build info.
|
|
284
|
-
const buildInfoFile = cacheDir === undefined
|
|
285
|
-
? undefined
|
|
286
|
-
: await prepareBuildInfoFile(cacheDir, projectPath, {
|
|
287
|
-
shim: sha256Hex(shimSource),
|
|
288
|
-
typescript: ts.version,
|
|
289
|
-
fireforge: getPackageVersion(),
|
|
290
|
-
undefinedIdentifiers,
|
|
291
|
-
options,
|
|
292
|
-
});
|
|
293
|
-
let program;
|
|
294
|
-
let writeBuildInfo = () => undefined;
|
|
295
|
-
if (buildInfoFile === undefined) {
|
|
296
|
-
program = ts.createProgram(rootFiles, options, host);
|
|
297
|
-
}
|
|
298
|
-
else {
|
|
299
|
-
// Always check the entire project in root order. Restoring TypeScript's
|
|
300
|
-
// per-file semantic cache makes checkJs inference depend on the first
|
|
301
|
-
// invalidated importer and can both invent and hide diagnostics.
|
|
302
|
-
const builder = ts.createEmitAndSemanticDiagnosticsBuilderProgram(rootFiles, { ...options, incremental: true, tsBuildInfoFile: buildInfoFile }, withSourceFileVersions(host));
|
|
303
|
-
program = builder;
|
|
304
|
-
// Under noEmit, emit() writes the build info and nothing else.
|
|
305
|
-
writeBuildInfo = () => {
|
|
306
|
-
builder.emit();
|
|
307
|
-
};
|
|
308
|
-
}
|
|
309
|
-
// Collect the full diagnostic set. patchLint reads only semantic +
|
|
310
|
-
// syntactic, which is fine for hygiene but wrong for CI: a misconfigured
|
|
311
|
-
// `lib: ["es2015"]` or a missing `paths` target should fail
|
|
312
|
-
// typecheck loudly via getOptionsDiagnostics / getGlobalDiagnostics.
|
|
313
|
-
const allDiagnostics = [
|
|
314
|
-
...program.getOptionsDiagnostics(),
|
|
315
|
-
...program.getGlobalDiagnostics(),
|
|
316
|
-
...program.getSyntacticDiagnostics(),
|
|
317
|
-
...program.getSemanticDiagnostics(),
|
|
318
|
-
];
|
|
319
|
-
for (const diag of allDiagnostics) {
|
|
320
|
-
if (SUPPRESSED_DIAGNOSTIC_CODES.has(diag.code))
|
|
321
|
-
continue;
|
|
322
|
-
// Drop diagnostics that originate in the synthetic shim. Operators
|
|
323
|
-
// can't act on them and they would clutter CI logs.
|
|
324
|
-
if (diag.file?.fileName === shimPath)
|
|
325
|
-
continue;
|
|
326
|
-
if (UNDEFINED_IDENTIFIER_CODES.has(diag.code)) {
|
|
327
|
-
if (undefinedIdentifiers === 'off')
|
|
328
|
-
continue;
|
|
329
|
-
const issue = diagnosticToIssue(ts, diag, absConfig, projectPath);
|
|
330
|
-
issues.push({
|
|
331
|
-
...issue,
|
|
332
|
-
category: undefinedIdentifiers,
|
|
333
|
-
message: `${issue.message} ${UNDEFINED_IDENTIFIER_HINT}`,
|
|
334
|
-
});
|
|
335
|
-
continue;
|
|
336
|
-
}
|
|
337
|
-
issues.push(diagnosticToIssue(ts, diag, absConfig, projectPath));
|
|
338
|
-
}
|
|
339
|
-
writeBuildInfo();
|
|
340
|
-
verbose(`typecheck: ${projectPath} — analyzed ${parsed.fileNames.length} file(s), found ${issues.length} issue(s)`);
|
|
341
|
-
return {
|
|
342
|
-
project: projectPath,
|
|
343
|
-
issues,
|
|
344
|
-
filesChecked: parsed.fileNames.length,
|
|
345
|
-
};
|
|
346
|
-
}
|
|
347
|
-
/**
|
|
348
|
-
* Stamps every source file with a content-hash version, which the
|
|
349
|
-
* incremental builder requires and a plain compiler host never sets.
|
|
350
|
-
* `ts.createIncrementalCompilerHost` does the same internally, but the
|
|
351
|
-
* shim here is served by a custom host rather than read from disk.
|
|
352
|
-
*/
|
|
353
|
-
function withSourceFileVersions(host) {
|
|
354
|
-
const getSourceFile = host.getSourceFile.bind(host);
|
|
355
|
-
return {
|
|
356
|
-
...host,
|
|
357
|
-
getSourceFile(...args) {
|
|
358
|
-
const file = getSourceFile(...args);
|
|
359
|
-
if (file !== undefined) {
|
|
360
|
-
file.version = sha256Hex(file.text);
|
|
361
|
-
}
|
|
362
|
-
return file;
|
|
363
|
-
},
|
|
364
|
-
};
|
|
365
|
-
}
|
|
366
|
-
/**
|
|
367
|
-
* Resolves the build-info path for one project and key, creating the cache
|
|
368
|
-
* directory and removing the project's build info for any other key: a
|
|
369
|
-
* shim or TypeScript change leaves the old file unreachable anyway.
|
|
370
|
-
* @returns Absolute build-info path
|
|
371
|
-
*/
|
|
372
|
-
async function prepareBuildInfoFile(cacheDir, projectPath, keyInputs) {
|
|
373
|
-
const slug = projectPath.replace(/[^A-Za-z0-9._-]+/g, '_');
|
|
374
|
-
const key = sha256Hex(JSON.stringify(keyInputs)).slice(0, 16);
|
|
375
|
-
const fileName = `${slug}-${key}.tsbuildinfo`;
|
|
376
|
-
await mkdir(cacheDir, { recursive: true });
|
|
377
|
-
for (const entry of await readdir(cacheDir)) {
|
|
378
|
-
if (entry !== fileName && entry.startsWith(`${slug}-`) && entry.endsWith('.tsbuildinfo')) {
|
|
379
|
-
await rm(join(cacheDir, entry), { force: true });
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
return join(cacheDir, fileName);
|
|
383
|
-
}
|
|
384
|
-
/**
|
|
385
|
-
* Converts a TS Diagnostic to a TypecheckIssue. The `fallbackFile`
|
|
386
|
-
* is used when the diagnostic carries no source file (typical for
|
|
387
|
-
* options diagnostics). It is typically the absolute jsconfig path or
|
|
388
|
-
* the project-relative form for surface-level errors. `project` is
|
|
389
|
-
* threaded through so the CLI can group issues by project without
|
|
390
|
-
* a second pass.
|
|
391
|
-
*/
|
|
392
|
-
function diagnosticToIssue(ts, diag, fallbackFile, project) {
|
|
393
|
-
let file = fallbackFile;
|
|
394
|
-
let line = 1;
|
|
395
|
-
let column = 1;
|
|
396
|
-
if (diag.file) {
|
|
397
|
-
file = diag.file.fileName;
|
|
398
|
-
if (typeof diag.start === 'number') {
|
|
399
|
-
const lc = diag.file.getLineAndCharacterOfPosition(diag.start);
|
|
400
|
-
line = lc.line + 1;
|
|
401
|
-
column = lc.character + 1;
|
|
402
|
-
}
|
|
403
|
-
}
|
|
404
|
-
const message = typeof diag.messageText === 'string'
|
|
405
|
-
? diag.messageText
|
|
406
|
-
: ts.flattenDiagnosticMessageText(diag.messageText, '\n');
|
|
407
|
-
// Suggestion + Message categories collapse to 'warning'. Only
|
|
408
|
-
// Error stays an error. This matches what the CLI then displays.
|
|
409
|
-
const category = diag.category === ts.DiagnosticCategory.Error ? 'error' : 'warning';
|
|
410
|
-
return {
|
|
411
|
-
file,
|
|
412
|
-
line,
|
|
413
|
-
column,
|
|
414
|
-
code: diag.code,
|
|
415
|
-
category,
|
|
416
|
-
message,
|
|
417
|
-
project,
|
|
418
|
-
};
|
|
419
|
-
}
|
|
420
|
-
/**
|
|
421
|
-
* Converts an absolute path to a path relative to the project root,
|
|
422
|
-
* for display in CLI output. Falls back to the absolute path when
|
|
423
|
-
* the path lies outside the root (e.g. a `node_modules` symlinked
|
|
424
|
-
* from elsewhere). Exposed for tests and the CLI.
|
|
425
|
-
*/
|
|
426
|
-
export function relativeForDisplay(projectRoot, absoluteFile) {
|
|
427
|
-
if (!isAbsolute(absoluteFile))
|
|
428
|
-
return absoluteFile;
|
|
429
|
-
const rel = relative(projectRoot, absoluteFile);
|
|
430
|
-
if (rel === '' || rel.startsWith('..'))
|
|
431
|
-
return absoluteFile;
|
|
432
|
-
return rel;
|
|
433
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* browser-init.js: destroy expression in onUnload()/uninit().
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* AST-based implementation: finds onUnload()/uninit() method body and
|
|
6
|
-
* inserts the destroy block at the top (LIFO ordering).
|
|
7
|
-
*
|
|
8
|
-
* `marker` is prefixed to the generated comment so wire-generated edits
|
|
9
|
-
* carry the patch-lint `// <MARKER>:` signature `lintModificationComments`
|
|
10
|
-
* looks for.
|
|
11
|
-
*/
|
|
12
|
-
export declare function addDestroyAST(content: string, expression: string, marker?: string): string;
|
|
13
|
-
/**
|
|
14
|
-
* Regex/line-based fallback implementation.
|
|
15
|
-
*/
|
|
16
|
-
export declare function legacyAddDestroy(content: string, expression: string, marker?: string): string;
|
|
17
|
-
/**
|
|
18
|
-
* Adds a destroy expression to the top of onUnload() or uninit() in
|
|
19
|
-
* browser-init.js (LIFO ordering, newest first).
|
|
20
|
-
*
|
|
21
|
-
* @param engineDir - Engine source root
|
|
22
|
-
* @param expression - The destroy expression (e.g., "MyComponent.destroy()")
|
|
23
|
-
* @returns true if added, false if already present
|
|
24
|
-
*/
|
|
25
|
-
export declare function addDestroyToBrowserInit(engineDir: string, expression: string, marker?: string): Promise<boolean>;
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* browser-init.js: destroy expression in onUnload()/uninit().
|
|
4
|
-
*/
|
|
5
|
-
import { join } from 'node:path';
|
|
6
|
-
import MagicString from 'magic-string';
|
|
7
|
-
import { GeneralError } from '../errors/base.js';
|
|
8
|
-
import { BuildError } from '../errors/build.js';
|
|
9
|
-
import { pathExists, readText, writeText } from '../utils/fs.js';
|
|
10
|
-
import { escapeRegex } from '../utils/regex.js';
|
|
11
|
-
import { asEstree, detectIndent, parseScript } from './ast-utils.js';
|
|
12
|
-
import { isInternalInvariantFailure, withParserFallback } from './parser-fallback.js';
|
|
13
|
-
import { assertBraceBalancePreserved, coerceToCall, extractNameFromExpression, findMethodBody, findMethodBraceIndex, validateWireName, } from './wire-utils.js';
|
|
14
|
-
const BROWSER_INIT_JS = 'browser/base/content/browser-init.js';
|
|
15
|
-
const DEFAULT_MARKER = 'FIREFORGE:';
|
|
16
|
-
/**
|
|
17
|
-
* AST-based implementation: finds onUnload()/uninit() method body and
|
|
18
|
-
* inserts the destroy block at the top (LIFO ordering).
|
|
19
|
-
*
|
|
20
|
-
* `marker` is prefixed to the generated comment so wire-generated edits
|
|
21
|
-
* carry the patch-lint `// <MARKER>:` signature `lintModificationComments`
|
|
22
|
-
* looks for.
|
|
23
|
-
*/
|
|
24
|
-
export function addDestroyAST(content, expression, marker = DEFAULT_MARKER) {
|
|
25
|
-
const name = extractNameFromExpression(expression);
|
|
26
|
-
// See wire-init.ts for the rationale: the template interpolates the
|
|
27
|
-
// expression verbatim, so a bare `Foo.bar` compiled to `Foo.bar;`
|
|
28
|
-
// (a property reference) instead of `Foo.bar();`. `coerceToCall`
|
|
29
|
-
// appends `()` when absent so the emitted block always invokes the
|
|
30
|
-
// teardown hook the operator asked for.
|
|
31
|
-
const callExpression = coerceToCall(expression);
|
|
32
|
-
const ast = parseScript(content);
|
|
33
|
-
const ms = new MagicString(content);
|
|
34
|
-
const body = findMethodBody(ast, ['onUnload', 'uninit']);
|
|
35
|
-
if (!body) {
|
|
36
|
-
throw new BuildError('Could not find onUnload/uninit method body via AST');
|
|
37
|
-
}
|
|
38
|
-
// Insert at top of method body (LIFO ordering)
|
|
39
|
-
// `noUncheckedIndexedAccess` makes this `Statement | undefined`. Narrow
|
|
40
|
-
// before casting rather than laundering the undefined through the cast.
|
|
41
|
-
const firstRaw = body.body[0];
|
|
42
|
-
const firstStmt = firstRaw ? asEstree(firstRaw) : undefined;
|
|
43
|
-
let insertPos;
|
|
44
|
-
let indent;
|
|
45
|
-
if (firstStmt) {
|
|
46
|
-
insertPos = firstStmt.start;
|
|
47
|
-
indent = detectIndent(content, firstStmt.start);
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
// Empty method body: insert after opening {
|
|
51
|
-
insertPos = body.start + 1;
|
|
52
|
-
indent = ' ';
|
|
53
|
-
}
|
|
54
|
-
const block = [
|
|
55
|
-
`${indent}// ${marker} wire-destroy ${name}`,
|
|
56
|
-
`${indent}try {`,
|
|
57
|
-
`${indent} if (typeof ${name} !== "undefined") {`,
|
|
58
|
-
`${indent} ${callExpression};`,
|
|
59
|
-
`${indent} }`,
|
|
60
|
-
`${indent}} catch (e) {`,
|
|
61
|
-
`${indent} console.error("${name} destroy failed:", e);`,
|
|
62
|
-
`${indent}}`,
|
|
63
|
-
].join('\n');
|
|
64
|
-
ms.appendRight(insertPos, block + '\n');
|
|
65
|
-
return ms.toString();
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Regex/line-based fallback implementation.
|
|
69
|
-
*/
|
|
70
|
-
export function legacyAddDestroy(content, expression, marker = DEFAULT_MARKER) {
|
|
71
|
-
const name = extractNameFromExpression(expression);
|
|
72
|
-
// Match the AST path on the call-coercion contract so fallback vs AST
|
|
73
|
-
// emits identical blocks (see wire-init.ts).
|
|
74
|
-
const callExpression = coerceToCall(expression);
|
|
75
|
-
const lines = content.split('\n');
|
|
76
|
-
const destroyRegex = /\b(?:async\s+)?(onUnload|uninit)\s*[(:]/;
|
|
77
|
-
const found = findMethodBraceIndex(lines, destroyRegex, { requireBrace: true });
|
|
78
|
-
if (!found) {
|
|
79
|
-
throw new GeneralError('Could not find "onUnload" or "uninit" method in browser-init.js.\n' +
|
|
80
|
-
'FireForge was looking for a signature matching: \\b(?:async\\s+)?(onUnload|uninit)\\s*[(:]');
|
|
81
|
-
}
|
|
82
|
-
const insertIndex = found.braceIndex + 1;
|
|
83
|
-
const block = [
|
|
84
|
-
` // ${marker} wire-destroy ${name}`,
|
|
85
|
-
` try {`,
|
|
86
|
-
` if (typeof ${name} !== "undefined") {`,
|
|
87
|
-
` ${callExpression};`,
|
|
88
|
-
` }`,
|
|
89
|
-
` } catch (e) {`,
|
|
90
|
-
` console.error("${name} destroy failed:", e);`,
|
|
91
|
-
` }`,
|
|
92
|
-
];
|
|
93
|
-
lines.splice(insertIndex, 0, ...block);
|
|
94
|
-
return lines.join('\n');
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Adds a destroy expression to the top of onUnload() or uninit() in
|
|
98
|
-
* browser-init.js (LIFO ordering, newest first).
|
|
99
|
-
*
|
|
100
|
-
* @param engineDir - Engine source root
|
|
101
|
-
* @param expression - The destroy expression (e.g., "MyComponent.destroy()")
|
|
102
|
-
* @returns true if added, false if already present
|
|
103
|
-
*/
|
|
104
|
-
export async function addDestroyToBrowserInit(engineDir, expression, marker = DEFAULT_MARKER) {
|
|
105
|
-
validateWireName(expression, 'destroy expression');
|
|
106
|
-
const filePath = join(engineDir, BROWSER_INIT_JS);
|
|
107
|
-
if (!(await pathExists(filePath))) {
|
|
108
|
-
throw new GeneralError(`${BROWSER_INIT_JS} not found in engine`);
|
|
109
|
-
}
|
|
110
|
-
const content = await readText(filePath);
|
|
111
|
-
// Idempotency check: look for the coerced (call) form because that is
|
|
112
|
-
// what the emitter writes. Matching against the raw input would miss a
|
|
113
|
-
// bare `X.destroy` invocation that coercion already persisted as
|
|
114
|
-
// `X.destroy()`.
|
|
115
|
-
const callExpression = coerceToCall(expression);
|
|
116
|
-
const destroyPattern = new RegExp(`(?:^|\\W)${escapeRegex(callExpression)}\\s*;?\\s*$`, 'm');
|
|
117
|
-
if (destroyPattern.test(content)) {
|
|
118
|
-
return false;
|
|
119
|
-
}
|
|
120
|
-
const { value, usedFallback } = withParserFallback(() => addDestroyAST(content, expression, marker), () => legacyAddDestroy(content, expression, marker), BROWSER_INIT_JS, isInternalInvariantFailure);
|
|
121
|
-
if (usedFallback) {
|
|
122
|
-
assertBraceBalancePreserved(content, value, BROWSER_INIT_JS);
|
|
123
|
-
}
|
|
124
|
-
await writeText(filePath, value);
|
|
125
|
-
return true;
|
|
126
|
-
}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Top-level chrome document: DOM fragment insertion.
|
|
3
|
-
*
|
|
4
|
-
* Default target is `browser/base/content/browser.xhtml`. Forks that replace
|
|
5
|
-
* browser.xhtml with a custom top-level chrome document pass the replacement
|
|
6
|
-
* path in via `targetPath`. The insertion logic is shape-agnostic (looks for
|
|
7
|
-
* `#include browser-sets.inc`, then falls back to `<html:body>`), so any
|
|
8
|
-
* browser.xhtml-shaped xhtml works.
|
|
9
|
-
*/
|
|
10
|
-
export declare const DEFAULT_DOM_TARGET = "browser/base/content/browser.xhtml";
|
|
11
|
-
/**
|
|
12
|
-
* Tokenizer-based implementation for DOM fragment insertion.
|
|
13
|
-
*/
|
|
14
|
-
export declare function addDomFragmentTokenized(content: string, includeDirective: string): string;
|
|
15
|
-
/**
|
|
16
|
-
* Dry-run precheck for `addDomFragment`. Reads the resolved chrome document
|
|
17
|
-
* and verifies it either already contains the `#include` directive (the
|
|
18
|
-
* idempotent-skip case) or offers a locatable insertion point via
|
|
19
|
-
* {@link addDomFragmentTokenized} / {@link legacyAddDomFragment}. Throws the
|
|
20
|
-
* same `Could not find insertion point in chrome document` error the real
|
|
21
|
-
* run would throw when neither condition holds.
|
|
22
|
-
*
|
|
23
|
-
* Without it, `wire --dry-run` previews a plausible mutation plan while the
|
|
24
|
-
* real run throws on the same arguments, because only the real run called
|
|
25
|
-
* the insertion helpers.
|
|
26
|
-
*/
|
|
27
|
-
export declare function probeDomFragmentInsertionPoint(engineDir: string, domFilePath: string, targetPath?: string): Promise<void>;
|
|
28
|
-
/**
|
|
29
|
-
* Inserts a `#include` directive for an `.inc.xhtml` file into the top-level
|
|
30
|
-
* chrome document (default: `browser/base/content/browser.xhtml`), before
|
|
31
|
-
* `#include browser-sets.inc`.
|
|
32
|
-
*
|
|
33
|
-
* If the file's content was previously inlined (detected by root element id=),
|
|
34
|
-
* the inlined block is automatically replaced with the `#include` directive.
|
|
35
|
-
*
|
|
36
|
-
* @param engineDir - Engine source root
|
|
37
|
-
* @param domFilePath - Path to the `.inc.xhtml` file relative to engine root
|
|
38
|
-
* @param targetPath - Chrome document to insert into, relative to engine
|
|
39
|
-
* root. Defaults to {@link DEFAULT_DOM_TARGET}. Forks that replace
|
|
40
|
-
* browser.xhtml with a custom top-level chrome document pass the
|
|
41
|
-
* replacement path here.
|
|
42
|
-
* @returns true if inserted, false if already present
|
|
43
|
-
*/
|
|
44
|
-
export declare function addDomFragment(engineDir: string, domFilePath: string, targetPath?: string): Promise<boolean>;
|