@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,465 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
import { join } from 'node:path';
|
|
3
|
-
import { FurnaceError } from '../errors/furnace.js';
|
|
4
|
-
import { assert } from '../utils/assert.js';
|
|
5
|
-
import { toError } from '../utils/errors.js';
|
|
6
|
-
import { pathExists } from '../utils/fs.js';
|
|
7
|
-
import { info } from '../utils/logger.js';
|
|
8
|
-
import { captureComponentSources, componentSourceErrors } from './component-source-guard.js';
|
|
9
|
-
import { getProjectPaths, loadConfig } from './config.js';
|
|
10
|
-
import { assertComponentWriteBoundaries } from './engine-write-boundary.js';
|
|
11
|
-
import { applyCustomComponent, applyOverrideComponent, computeComponentChecksums, diffDeletedFiles, extractComponentChecksums, hasComponentChanged, hasCustomEngineDrift, hasOverrideEngineDrift, prefixChecksums, undeployCustomFiles, undeployOverrideFiles, } from './furnace-apply-helpers.js';
|
|
12
|
-
import { findPatchOwnedOverwrites, loadPatchClaimsForApply, recordOverwriteWarnings, } from './furnace-apply-overwrite-warn.js';
|
|
13
|
-
import { buildCustomUndeployActions, buildOverrideUndeployActions, } from './furnace-apply-undeploy-actions.js';
|
|
14
|
-
import { getFurnacePaths, loadFurnaceConfig, loadFurnaceState, updateFurnaceState, } from './furnace-config.js';
|
|
15
|
-
import { CUSTOM_ELEMENTS_JS, JAR_MN, resolveFtlDir } from './furnace-constants.js';
|
|
16
|
-
import { topologicalSortCustom } from './furnace-graph-utils.js';
|
|
17
|
-
import { resolveFurnaceMarkerComment } from './furnace-marker.js';
|
|
18
|
-
import { recordFurnaceRollbackFailure } from './furnace-operation.js';
|
|
19
|
-
import { assertFurnaceEngineDirReady } from './furnace-precondition.js';
|
|
20
|
-
import { addJarMnEntries, removeCustomElementRegistration } from './furnace-registration.js';
|
|
21
|
-
import { removeJarMnFileEntries } from './furnace-registration-jar-inplace.js';
|
|
22
|
-
import { createRollbackJournal, restoreRollbackJournalOrThrow, snapshotFile, } from './furnace-rollback.js';
|
|
23
|
-
import { blockingStepErrors, hasBlockingStepErrors } from './furnace-step-errors.js';
|
|
24
|
-
import { runPostApplyConsistencyChecks } from './furnace-validate-registration.js';
|
|
25
|
-
export { computeComponentChecksums, prefixChecksums } from './furnace-apply-helpers.js';
|
|
26
|
-
/**
|
|
27
|
-
* Records one component's checksums into the run-wide accumulator, under the
|
|
28
|
-
* flattened `type/name/file` keys the state file stores. A Map keeps the
|
|
29
|
-
* accumulation explicit. The previous `Object.assign` merges read as if
|
|
30
|
-
* they replaced the accumulator rather than adding to it.
|
|
31
|
-
*/
|
|
32
|
-
function recordComponentChecksums(accumulator, checksums, type, name) {
|
|
33
|
-
for (const [key, value] of Object.entries(prefixChecksums(checksums, type, name))) {
|
|
34
|
-
accumulator.set(key, value);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
function addMissingComponentError(result, name, directoryPath) {
|
|
38
|
-
result.errors.push({
|
|
39
|
-
name,
|
|
40
|
-
error: `Component directory not found: ${directoryPath}`,
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* The skip both batch loops record when a component's source is unchanged
|
|
45
|
-
* since the last recorded apply and its engine copy still matches. `reason`
|
|
46
|
-
* keeps its long-standing text for API consumers; `kind` lets summaries
|
|
47
|
-
* name it.
|
|
48
|
-
*/
|
|
49
|
-
const ALREADY_CURRENT_SKIP = {
|
|
50
|
-
reason: 'No changes since last apply',
|
|
51
|
-
kind: 'already-current',
|
|
52
|
-
};
|
|
53
|
-
async function applyOverrideBatch(ctx) {
|
|
54
|
-
const { config, furnacePaths, state, engineDir, ftlDir, dryRun } = ctx;
|
|
55
|
-
const { result, allActions, newChecksums, rollbackJournal, componentName } = ctx;
|
|
56
|
-
const overrideEntries = Object.entries(config.overrides).filter(([name]) => !componentName || name === componentName);
|
|
57
|
-
const totalOverrides = overrideEntries.length;
|
|
58
|
-
let overrideIndex = 0;
|
|
59
|
-
for (const [name, overrideConfig] of overrideEntries) {
|
|
60
|
-
overrideIndex++;
|
|
61
|
-
if (!dryRun && totalOverrides > 1) {
|
|
62
|
-
info(`Applying override ${name} (${overrideIndex}/${totalOverrides})...`);
|
|
63
|
-
}
|
|
64
|
-
const componentDir = join(furnacePaths.overridesDir, name);
|
|
65
|
-
if (!(await pathExists(componentDir))) {
|
|
66
|
-
addMissingComponentError(result, name, `components/overrides/${name}`);
|
|
67
|
-
continue;
|
|
68
|
-
}
|
|
69
|
-
const previous = extractComponentChecksums(state.appliedChecksums, 'override', name);
|
|
70
|
-
const currentChecksums = await computeComponentChecksums(componentDir);
|
|
71
|
-
if (!dryRun) {
|
|
72
|
-
const changed = await hasComponentChanged(componentDir, previous, currentChecksums);
|
|
73
|
-
if (!changed) {
|
|
74
|
-
// Fast path holds only if the engine still reflects what we deployed.
|
|
75
|
-
// reset/download/manual edits can silently erase engine files, and
|
|
76
|
-
// the checksum record alone cannot detect that.
|
|
77
|
-
const cachedEngine = extractComponentChecksums(state.engineChecksums, 'override', name);
|
|
78
|
-
const drifted = await hasOverrideEngineDrift({ engineDir, componentDir, ftlDir }, overrideConfig, cachedEngine);
|
|
79
|
-
if (!drifted) {
|
|
80
|
-
result.skipped.push({ name, ...ALREADY_CURRENT_SKIP });
|
|
81
|
-
recordComponentChecksums(newChecksums, previous, 'override', name);
|
|
82
|
-
continue;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
try {
|
|
87
|
-
const filesAffectedTotal = [];
|
|
88
|
-
// Compute which files (if any) were removed from the workspace since
|
|
89
|
-
// the last apply. We do this for both dry-run and real runs so the
|
|
90
|
-
// planned-actions output stays honest.
|
|
91
|
-
const deletedFiles = diffDeletedFiles(previous, currentChecksums);
|
|
92
|
-
if (dryRun) {
|
|
93
|
-
if (deletedFiles.length > 0) {
|
|
94
|
-
allActions.push(...buildOverrideUndeployActions(name, overrideConfig, engineDir, deletedFiles, ftlDir));
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
else if (deletedFiles.length > 0) {
|
|
98
|
-
const { restored, removed } = await undeployOverrideFiles(engineDir, overrideConfig, deletedFiles, ftlDir, rollbackJournal);
|
|
99
|
-
filesAffectedTotal.push(...restored, ...removed);
|
|
100
|
-
}
|
|
101
|
-
if (!dryRun) {
|
|
102
|
-
// Runs unconditionally, including when the component source
|
|
103
|
-
// changed, because the lost-work case is a deployed engine edit
|
|
104
|
-
// that the incoming copy is about to replace.
|
|
105
|
-
recordOverwriteWarnings(result, await findPatchOwnedOverwrites({
|
|
106
|
-
type: 'override',
|
|
107
|
-
engineDir,
|
|
108
|
-
name,
|
|
109
|
-
componentDir,
|
|
110
|
-
config: overrideConfig,
|
|
111
|
-
ftlDir,
|
|
112
|
-
patchClaims: ctx.patchClaims,
|
|
113
|
-
}));
|
|
114
|
-
}
|
|
115
|
-
const { affectedPaths: filesAffected, actions } = await applyOverrideComponent({ engineDir, name, componentDir, ftlDir }, overrideConfig, dryRun, rollbackJournal);
|
|
116
|
-
if (dryRun && actions) {
|
|
117
|
-
allActions.push(...actions);
|
|
118
|
-
}
|
|
119
|
-
filesAffectedTotal.push(...filesAffected);
|
|
120
|
-
result.applied.push({ name, type: 'override', filesAffected: filesAffectedTotal });
|
|
121
|
-
if (!dryRun) {
|
|
122
|
-
recordComponentChecksums(newChecksums, currentChecksums, 'override', name);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
catch (error) {
|
|
126
|
-
result.errors.push({
|
|
127
|
-
name,
|
|
128
|
-
error: toError(error).message,
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* After undeploying deleted files, the in-engine jar.mn and
|
|
135
|
-
* customElements.js still carry entries for the removed files. Re-sync them
|
|
136
|
-
* by removing only the deleted files' jar.mn lines in place and adding any
|
|
137
|
-
* live file that has none. If the .mjs itself was deleted, also drop
|
|
138
|
-
* the customElements.js registration. Snapshots are taken under the same
|
|
139
|
-
* journal so the undo path is symmetric with apply.
|
|
140
|
-
*/
|
|
141
|
-
async function reconcileCustomRegistrationAfterUndeploy(args) {
|
|
142
|
-
const { engineDir, name, config, deletedFiles, currentChecksums, rollbackJournal, filesAffected, } = args;
|
|
143
|
-
if (!config.register || deletedFiles.length === 0)
|
|
144
|
-
return;
|
|
145
|
-
const deletedRegistrationFiles = deletedFiles.filter((f) => f.endsWith('.mjs') || f.endsWith('.css'));
|
|
146
|
-
if (deletedRegistrationFiles.length === 0)
|
|
147
|
-
return;
|
|
148
|
-
// jar.mn re-sync: drop only the deleted files' lines, so the rest of the
|
|
149
|
-
// widget's block keeps its order and the owning patch carries no reorder
|
|
150
|
-
// hunks. addJarMnEntries is idempotent, so the add pass inserts only a
|
|
151
|
-
// live file that has no line yet. The journal snapshot before the
|
|
152
|
-
// mutation gives us a clean rollback target.
|
|
153
|
-
if (rollbackJournal) {
|
|
154
|
-
await snapshotFile(rollbackJournal, join(engineDir, JAR_MN));
|
|
155
|
-
}
|
|
156
|
-
await removeJarMnFileEntries(engineDir, name, deletedRegistrationFiles);
|
|
157
|
-
const liveJarFiles = Object.keys(currentChecksums).filter((f) => f.endsWith('.mjs') || f.endsWith('.css'));
|
|
158
|
-
if (liveJarFiles.length > 0) {
|
|
159
|
-
await addJarMnEntries(engineDir, name, liveJarFiles);
|
|
160
|
-
}
|
|
161
|
-
filesAffected.push(JAR_MN);
|
|
162
|
-
// If the .mjs file itself was deleted, the customElements registration
|
|
163
|
-
// must go too. Otherwise we leave a dangling import in the Pattern B
|
|
164
|
-
// block that fails at runtime.
|
|
165
|
-
if (deletedFiles.includes(`${name}.mjs`)) {
|
|
166
|
-
if (rollbackJournal) {
|
|
167
|
-
await snapshotFile(rollbackJournal, join(engineDir, CUSTOM_ELEMENTS_JS));
|
|
168
|
-
}
|
|
169
|
-
await removeCustomElementRegistration(engineDir, name);
|
|
170
|
-
filesAffected.push(CUSTOM_ELEMENTS_JS);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
async function applyCustomBatch(ctx, root, markerComment) {
|
|
174
|
-
const { config, furnacePaths, state, engineDir, ftlDir, dryRun } = ctx;
|
|
175
|
-
const { result, allActions, newChecksums, rollbackJournal, componentName } = ctx;
|
|
176
|
-
const allKnown = new Set([
|
|
177
|
-
...config.stock,
|
|
178
|
-
...Object.keys(config.overrides),
|
|
179
|
-
...Object.keys(config.custom),
|
|
180
|
-
]);
|
|
181
|
-
// Build a set of component names that failed during the override batch so
|
|
182
|
-
// custom components that compose them can be skipped. This includes both
|
|
183
|
-
// hard errors and step-error failures.
|
|
184
|
-
const failedDependencies = new Set();
|
|
185
|
-
for (const entry of result.errors) {
|
|
186
|
-
failedDependencies.add(entry.name);
|
|
187
|
-
}
|
|
188
|
-
for (const entry of result.applied) {
|
|
189
|
-
if (entry.stepErrors && entry.stepErrors.length > 0) {
|
|
190
|
-
failedDependencies.add(entry.name);
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
const sortedNames = topologicalSortCustom(config.custom).filter((name) => !componentName || name === componentName);
|
|
194
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- names from Object.keys
|
|
195
|
-
const customEntries = sortedNames.map((name) => [name, config.custom[name]]);
|
|
196
|
-
const totalCustom = customEntries.length;
|
|
197
|
-
let customIndex = 0;
|
|
198
|
-
for (const [name, customConfig] of customEntries) {
|
|
199
|
-
customIndex++;
|
|
200
|
-
if (!dryRun && totalCustom > 1) {
|
|
201
|
-
info(`Applying custom component ${name} (${customIndex}/${totalCustom})...`);
|
|
202
|
-
}
|
|
203
|
-
if (customConfig.composes) {
|
|
204
|
-
const missing = customConfig.composes.filter((ref) => !allKnown.has(ref));
|
|
205
|
-
if (missing.length > 0) {
|
|
206
|
-
result.errors.push({
|
|
207
|
-
name,
|
|
208
|
-
error: `Composes unknown component(s): ${missing.join(', ')}. Each reference must be registered as stock, override, or custom.`,
|
|
209
|
-
});
|
|
210
|
-
failedDependencies.add(name);
|
|
211
|
-
continue;
|
|
212
|
-
}
|
|
213
|
-
// Skip this component if any of its composed dependencies failed.
|
|
214
|
-
const failedRefs = customConfig.composes.filter((ref) => failedDependencies.has(ref));
|
|
215
|
-
if (failedRefs.length > 0) {
|
|
216
|
-
result.errors.push({
|
|
217
|
-
name,
|
|
218
|
-
error: `Skipped: composed dependency ${failedRefs.join(', ')} failed to apply.`,
|
|
219
|
-
});
|
|
220
|
-
failedDependencies.add(name);
|
|
221
|
-
continue;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
const componentDir = join(furnacePaths.customDir, name);
|
|
225
|
-
if (!(await pathExists(componentDir))) {
|
|
226
|
-
addMissingComponentError(result, name, `components/custom/${name}`);
|
|
227
|
-
continue;
|
|
228
|
-
}
|
|
229
|
-
const previous = extractComponentChecksums(state.appliedChecksums, 'custom', name);
|
|
230
|
-
const currentChecksums = await computeComponentChecksums(componentDir);
|
|
231
|
-
if (!dryRun) {
|
|
232
|
-
const changed = await hasComponentChanged(componentDir, previous, currentChecksums);
|
|
233
|
-
if (!changed) {
|
|
234
|
-
// As with overrides, the checksum record is not sufficient on its
|
|
235
|
-
// own: a reset/download that cleared the engine must trigger a
|
|
236
|
-
// re-apply even though the workspace is unchanged.
|
|
237
|
-
const drifted = await hasCustomEngineDrift({ root, name, componentDir, ftlDir }, customConfig);
|
|
238
|
-
if (!drifted) {
|
|
239
|
-
result.skipped.push({ name, ...ALREADY_CURRENT_SKIP });
|
|
240
|
-
recordComponentChecksums(newChecksums, previous, 'custom', name);
|
|
241
|
-
continue;
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
try {
|
|
246
|
-
const filesAffectedTotal = [];
|
|
247
|
-
// Diff against previous to find files the developer has deleted from
|
|
248
|
-
// the workspace since last apply. Run for both dry-run and real apply
|
|
249
|
-
// so plan output and execution stay aligned.
|
|
250
|
-
const deletedFiles = diffDeletedFiles(previous, currentChecksums);
|
|
251
|
-
if (dryRun) {
|
|
252
|
-
if (deletedFiles.length > 0) {
|
|
253
|
-
allActions.push(...buildCustomUndeployActions(name, customConfig, engineDir, deletedFiles, ftlDir));
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
else if (deletedFiles.length > 0) {
|
|
257
|
-
const removed = await undeployCustomFiles(engineDir, customConfig, deletedFiles, ftlDir, rollbackJournal);
|
|
258
|
-
filesAffectedTotal.push(...removed);
|
|
259
|
-
}
|
|
260
|
-
if (!dryRun) {
|
|
261
|
-
// Runs unconditionally, including on the `changed === true` path:
|
|
262
|
-
// that is when a deployed engine-only fix gets silently replaced
|
|
263
|
-
// (J6).
|
|
264
|
-
recordOverwriteWarnings(result, await findPatchOwnedOverwrites({
|
|
265
|
-
type: 'custom',
|
|
266
|
-
root,
|
|
267
|
-
name,
|
|
268
|
-
config: customConfig,
|
|
269
|
-
ftlDir,
|
|
270
|
-
patchClaims: ctx.patchClaims,
|
|
271
|
-
}));
|
|
272
|
-
}
|
|
273
|
-
const { affectedPaths: filesAffected, stepErrors, actions, } = await applyCustomComponent({ engineDir, name, componentDir, ftlDir }, customConfig, dryRun, rollbackJournal, markerComment !== undefined ? { markerComment } : {});
|
|
274
|
-
if (dryRun && actions) {
|
|
275
|
-
allActions.push(...actions);
|
|
276
|
-
}
|
|
277
|
-
if (!dryRun && deletedFiles.length > 0 && blockingStepErrors(stepErrors).length === 0) {
|
|
278
|
-
await reconcileCustomRegistrationAfterUndeploy({
|
|
279
|
-
engineDir,
|
|
280
|
-
name,
|
|
281
|
-
config: customConfig,
|
|
282
|
-
deletedFiles,
|
|
283
|
-
currentChecksums,
|
|
284
|
-
rollbackJournal,
|
|
285
|
-
filesAffected: filesAffectedTotal,
|
|
286
|
-
});
|
|
287
|
-
}
|
|
288
|
-
filesAffectedTotal.push(...filesAffected);
|
|
289
|
-
result.applied.push({
|
|
290
|
-
name,
|
|
291
|
-
type: 'custom',
|
|
292
|
-
filesAffected: filesAffectedTotal,
|
|
293
|
-
...(stepErrors.length > 0 ? { stepErrors } : {}),
|
|
294
|
-
});
|
|
295
|
-
// Only store checksums when the component applied without blocking
|
|
296
|
-
// step errors, so that partially failed components are re-applied on
|
|
297
|
-
// the next run. Advisory errors (FTL degradation) still persist, since
|
|
298
|
-
// re-applying cannot fix a fork that has no locale jar.mn.
|
|
299
|
-
if (!dryRun && blockingStepErrors(stepErrors).length === 0) {
|
|
300
|
-
recordComponentChecksums(newChecksums, currentChecksums, 'custom', name);
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
catch (error) {
|
|
304
|
-
result.errors.push({
|
|
305
|
-
name,
|
|
306
|
-
error: toError(error).message,
|
|
307
|
-
});
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
/**
|
|
312
|
-
* Applies all override and custom components to the engine source tree.
|
|
313
|
-
*
|
|
314
|
-
* Unchanged components (matching checksums) are skipped. If any component
|
|
315
|
-
* fails, FireForge restores only the engine files touched during this apply
|
|
316
|
-
* attempt and leaves the state file unchanged.
|
|
317
|
-
*
|
|
318
|
-
* When `options.persistState` is false, the furnace state file is left alone
|
|
319
|
-
* on success and the rollback journal is returned on the result so the caller
|
|
320
|
-
* can restore the engine later (used by `furnace preview` to stage workspace
|
|
321
|
-
* files for Storybook and then roll them back on teardown).
|
|
322
|
-
*
|
|
323
|
-
* @param root - Root directory of the project
|
|
324
|
-
* @param dryRun - If true, enumerate planned actions without writing
|
|
325
|
-
* @param options - Optional behavior flags. `persistState` controls whether
|
|
326
|
-
* the furnace state file is updated on success (preview teardown sets this
|
|
327
|
-
* to false to keep ownership of the journal). `operationContext` is the
|
|
328
|
-
* lifecycle-wrapper hook used by `runFurnaceMutation` so a Ctrl+C mid-apply
|
|
329
|
-
* can find the in-flight rollback journal.
|
|
330
|
-
* @returns Summary of applied, skipped, and errored components (with actions
|
|
331
|
-
* when dry-run, and with rollbackJournal when persistState=false)
|
|
332
|
-
*/
|
|
333
|
-
export async function applyAllComponents(root, dryRun = false, options) {
|
|
334
|
-
const persistState = options?.persistState ?? true;
|
|
335
|
-
const operationContext = options?.operationContext;
|
|
336
|
-
const config = await loadFurnaceConfig(root);
|
|
337
|
-
const state = await loadFurnaceState(root);
|
|
338
|
-
const { engine: engineDir } = getProjectPaths(root);
|
|
339
|
-
const furnacePaths = getFurnacePaths(root);
|
|
340
|
-
const ftlDir = resolveFtlDir(config.ftlBasePath);
|
|
341
|
-
// When `markerComment` is unset in fireforge.json, default it to
|
|
342
|
-
// `binaryName.toUpperCase()` so the furnace-emitted edits to upstream
|
|
343
|
-
// files (e.g. customElements.js) carry a marker that satisfies
|
|
344
|
-
// `lintModificationComments`. That rule keys on
|
|
345
|
-
// `${binaryName.toUpperCase()}:`. An explicit `markerComment` still wins.
|
|
346
|
-
const forgeConfig = await loadConfig(root).catch(() => undefined);
|
|
347
|
-
const markerComment = resolveFurnaceMarkerComment(forgeConfig);
|
|
348
|
-
await assertFurnaceEngineDirReady(engineDir);
|
|
349
|
-
if (!dryRun) {
|
|
350
|
-
await assertComponentWriteBoundaries(engineDir, config, ftlDir);
|
|
351
|
-
}
|
|
352
|
-
const sourceSnapshot = await captureComponentSources(furnacePaths, config, dryRun, options);
|
|
353
|
-
const rollbackJournal = dryRun ? undefined : createRollbackJournal();
|
|
354
|
-
if (rollbackJournal && operationContext) {
|
|
355
|
-
operationContext.registerJournal(rollbackJournal);
|
|
356
|
-
}
|
|
357
|
-
// Everything below this line can write to the engine. A real apply that
|
|
358
|
-
// reached it without a journal would have no way back: neither the
|
|
359
|
-
// lifecycle wrapper's throw path nor the signal handler can restore what
|
|
360
|
-
// was never captured. `operationContext` is legitimately absent for the
|
|
361
|
-
// few callers that drive apply outside the wrapper, so the invariant is on
|
|
362
|
-
// the journal itself.
|
|
363
|
-
assert(dryRun || rollbackJournal !== undefined, 'rollback journal created before a real apply');
|
|
364
|
-
const result = {
|
|
365
|
-
applied: [],
|
|
366
|
-
skipped: [],
|
|
367
|
-
errors: [],
|
|
368
|
-
};
|
|
369
|
-
const allActions = [];
|
|
370
|
-
const newChecksums = new Map();
|
|
371
|
-
const componentName = options?.componentName;
|
|
372
|
-
// When a single component is requested, validate it exists before running
|
|
373
|
-
// the batch functions (which would silently skip an unknown name).
|
|
374
|
-
if (componentName) {
|
|
375
|
-
const isKnown = componentName in config.overrides || componentName in config.custom;
|
|
376
|
-
if (!isKnown) {
|
|
377
|
-
throw new FurnaceError(`Component "${componentName}" not found in furnace.json. Run "fireforge furnace list" to see registered components.`, componentName);
|
|
378
|
-
}
|
|
379
|
-
}
|
|
380
|
-
// Patch-claim map for the overwrite warning: loaded once per
|
|
381
|
-
// apply. A missing/unreadable manifest degrades to an empty map. The
|
|
382
|
-
// warning is advisory and must never block the apply.
|
|
383
|
-
const patchClaims = await loadPatchClaimsForApply(root);
|
|
384
|
-
const batchContext = {
|
|
385
|
-
config,
|
|
386
|
-
furnacePaths,
|
|
387
|
-
state,
|
|
388
|
-
engineDir,
|
|
389
|
-
ftlDir,
|
|
390
|
-
dryRun,
|
|
391
|
-
result,
|
|
392
|
-
allActions,
|
|
393
|
-
newChecksums,
|
|
394
|
-
rollbackJournal,
|
|
395
|
-
componentName,
|
|
396
|
-
patchClaims,
|
|
397
|
-
};
|
|
398
|
-
await applyOverrideBatch(batchContext);
|
|
399
|
-
await applyCustomBatch(batchContext, root, markerComment);
|
|
400
|
-
result.errors.push(...(await componentSourceErrors(sourceSnapshot)));
|
|
401
|
-
// Check for any partial failures (blocking step errors on applied
|
|
402
|
-
// components). Advisory step errors (e.g. FTL degradation) are warnings
|
|
403
|
-
// and never gate rollback.
|
|
404
|
-
const hasApplyStepErrors = result.applied.some((entry) => hasBlockingStepErrors(entry));
|
|
405
|
-
// Orphaned components are implicitly cleaned up: newChecksums only
|
|
406
|
-
// contains entries for components that still exist in furnace.json,
|
|
407
|
-
// and it fully replaces state.appliedChecksums below.
|
|
408
|
-
if (!dryRun && !hasApplyStepErrors && result.errors.length === 0) {
|
|
409
|
-
await runPostApplyConsistencyChecks(root, config, result, ftlDir);
|
|
410
|
-
}
|
|
411
|
-
// Recompute after the consistency checks: they mutate entry.stepErrors
|
|
412
|
-
// when the applied output is inconsistent (e.g. a jar.mn entry that
|
|
413
|
-
// silently mis-landed). Reading the pre-check snapshot lets those failures
|
|
414
|
-
// skip rollback and persist checksums for a component known to be
|
|
415
|
-
// inconsistent, while the CLI simultaneously reports "failed to apply
|
|
416
|
-
// cleanly".
|
|
417
|
-
const hasStepErrors = result.applied.some((entry) => hasBlockingStepErrors(entry));
|
|
418
|
-
// --- Rollback on failure, persist on success (skip for dry-run) ---
|
|
419
|
-
if (!dryRun) {
|
|
420
|
-
if (result.errors.length > 0 || hasStepErrors) {
|
|
421
|
-
if (rollbackJournal) {
|
|
422
|
-
// This branch owns the rollback for the collected-errors case, so the
|
|
423
|
-
// lifecycle wrapper must not restore the same journal again if the
|
|
424
|
-
// restore below throws on its way out.
|
|
425
|
-
operationContext?.markRolledBack();
|
|
426
|
-
try {
|
|
427
|
-
await restoreRollbackJournalOrThrow(rollbackJournal, 'Furnace apply failed');
|
|
428
|
-
result.rolledBack = true;
|
|
429
|
-
}
|
|
430
|
-
catch (rollbackError) {
|
|
431
|
-
// Rollback itself failed: the engine is in a partially restored
|
|
432
|
-
// state. Persist a pending-repair marker so the next `fireforge
|
|
433
|
-
// doctor --repair-furnace` run knows to reconcile.
|
|
434
|
-
const failedComponents = result.errors.map((e) => e.name).join(', ');
|
|
435
|
-
await recordFurnaceRollbackFailure(root, 'apply-rollback', `failed component(s): ${failedComponents || '(unknown)'}: ${toError(rollbackError).message}`);
|
|
436
|
-
throw rollbackError;
|
|
437
|
-
}
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
else if (persistState) {
|
|
441
|
-
// After a successful apply, workspace checksums equal the engine content
|
|
442
|
-
// (we just copied workspace → engine). Store them as engineChecksums so
|
|
443
|
-
// drift detection can compare engine files against the cached hash
|
|
444
|
-
// instead of byte-comparing against workspace sources.
|
|
445
|
-
await updateFurnaceState(root, {
|
|
446
|
-
lastApply: new Date().toISOString(),
|
|
447
|
-
appliedChecksums: Object.fromEntries(newChecksums),
|
|
448
|
-
engineChecksums: Object.fromEntries(newChecksums),
|
|
449
|
-
});
|
|
450
|
-
}
|
|
451
|
-
else if (rollbackJournal) {
|
|
452
|
-
// Caller owns the journal and will restore on teardown.
|
|
453
|
-
result.rollbackJournal = rollbackJournal;
|
|
454
|
-
}
|
|
455
|
-
}
|
|
456
|
-
if (dryRun) {
|
|
457
|
-
result.actions = allActions;
|
|
458
|
-
}
|
|
459
|
-
return result;
|
|
460
|
-
} /**
|
|
461
|
-
* Shared context threaded through the batch apply loops. Bundles the state
|
|
462
|
-
* both loops mutate (result/actions/checksums) with the immutable run
|
|
463
|
-
* parameters. The 12-13 positional parameters this replaced let call sites
|
|
464
|
-
* drift and made every new parameter a two-signature change.
|
|
465
|
-
*/
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/** Extracts per-component checksums from the flattened state-file checksum map. */
|
|
2
|
-
export declare function extractComponentChecksums(allChecksums: Record<string, string> | undefined, type: string, name: string): Record<string, string>;
|
|
3
|
-
/** Prefixes component checksums so they can be stored in the flattened state format. */
|
|
4
|
-
export declare function prefixChecksums(checksums: Record<string, string>, type: string, name: string): Record<string, string>;
|
|
5
|
-
/**
|
|
6
|
-
* Returns the filenames present in `previous` that are absent from
|
|
7
|
-
* `current`, i.e. files we know we deployed last time but the workspace has
|
|
8
|
-
* since deleted. The order of returned names is stable (sorted
|
|
9
|
-
* alphabetically) so test snapshots and CLI output are deterministic.
|
|
10
|
-
*/
|
|
11
|
-
export declare function diffDeletedFiles(previous: Record<string, string>, current: Record<string, string>): string[];
|
|
12
|
-
/**
|
|
13
|
-
* Canonical content normalization for every FireForge component checksum.
|
|
14
|
-
*
|
|
15
|
-
* Strips a leading BOM and folds CRLF to LF, so a file that differs from its
|
|
16
|
-
* deployed copy only by line endings or a byte-order mark is not reported as
|
|
17
|
-
* drift. Every comparison that decides "has this component changed?" must
|
|
18
|
-
* use it. Otherwise `furnace status` and `furnace validate` can disagree
|
|
19
|
-
* with `apply`'s skip fast-path about the same pair of files on a CRLF
|
|
20
|
-
* checkout.
|
|
21
|
-
*
|
|
22
|
-
* @param content - Raw file content
|
|
23
|
-
* @returns Content with the BOM removed and CRLF folded to LF
|
|
24
|
-
*/
|
|
25
|
-
export declare function normalizeForChecksum(content: string): string;
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/** Extracts per-component checksums from the flattened state-file checksum map. */
|
|
3
|
-
export function extractComponentChecksums(allChecksums, type, name) {
|
|
4
|
-
if (!allChecksums)
|
|
5
|
-
return {};
|
|
6
|
-
const prefix = `${type}/${name}/`;
|
|
7
|
-
const result = {};
|
|
8
|
-
for (const [key, value] of Object.entries(allChecksums)) {
|
|
9
|
-
if (key.startsWith(prefix)) {
|
|
10
|
-
result[key.slice(prefix.length)] = value;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
return result;
|
|
14
|
-
}
|
|
15
|
-
/** Prefixes component checksums so they can be stored in the flattened state format. */
|
|
16
|
-
export function prefixChecksums(checksums, type, name) {
|
|
17
|
-
const prefix = `${type}/${name}/`;
|
|
18
|
-
const result = {};
|
|
19
|
-
for (const [key, value] of Object.entries(checksums)) {
|
|
20
|
-
result[`${prefix}${key}`] = value;
|
|
21
|
-
}
|
|
22
|
-
return result;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Returns the filenames present in `previous` that are absent from
|
|
26
|
-
* `current`, i.e. files we know we deployed last time but the workspace has
|
|
27
|
-
* since deleted. The order of returned names is stable (sorted
|
|
28
|
-
* alphabetically) so test snapshots and CLI output are deterministic.
|
|
29
|
-
*/
|
|
30
|
-
export function diffDeletedFiles(previous, current) {
|
|
31
|
-
const deleted = [];
|
|
32
|
-
for (const key of Object.keys(previous)) {
|
|
33
|
-
if (!(key in current)) {
|
|
34
|
-
deleted.push(key);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return deleted.sort();
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Canonical content normalization for every FireForge component checksum.
|
|
41
|
-
*
|
|
42
|
-
* Strips a leading BOM and folds CRLF to LF, so a file that differs from its
|
|
43
|
-
* deployed copy only by line endings or a byte-order mark is not reported as
|
|
44
|
-
* drift. Every comparison that decides "has this component changed?" must
|
|
45
|
-
* use it. Otherwise `furnace status` and `furnace validate` can disagree
|
|
46
|
-
* with `apply`'s skip fast-path about the same pair of files on a CRLF
|
|
47
|
-
* checkout.
|
|
48
|
-
*
|
|
49
|
-
* @param content - Raw file content
|
|
50
|
-
* @returns Content with the BOM removed and CRLF folded to LF
|
|
51
|
-
*/
|
|
52
|
-
export function normalizeForChecksum(content) {
|
|
53
|
-
return content.replace(/^\uFEFF/, '').replace(/\r\n/g, '\n');
|
|
54
|
-
}
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Furnace-composed form of a component source, and the questions that
|
|
3
|
-
* need it.
|
|
4
|
-
*
|
|
5
|
-
* `furnace apply` does not copy every source verbatim: a stylesheet with
|
|
6
|
-
* `@fireforge-include` directives is deployed with each fragment body from
|
|
7
|
-
* `components/shared/` inlined between the directive and its
|
|
8
|
-
* `@fireforge-end-include` marker. Anything that compares a deployed engine
|
|
9
|
-
* file with its source has to compare against that composed form, or a
|
|
10
|
-
* freshly deployed widget reads as a large difference it is not:
|
|
11
|
-
*
|
|
12
|
-
* - the unexported-drift belt (`build`/`test --refuse-unexported-drift`),
|
|
13
|
-
* which must not refuse to overwrite a deployed file with the very bytes
|
|
14
|
-
* it already holds;
|
|
15
|
-
* - `furnace diff`, which must show what the next apply would change.
|
|
16
|
-
*/
|
|
17
|
-
import type { FurnaceConfig } from '../types/furnace.js';
|
|
18
|
-
/**
|
|
19
|
-
* Composes one component source into the bytes apply deploys: a stylesheet
|
|
20
|
-
* carrying include directives is fragment-expanded, anything else is
|
|
21
|
-
* returned as is.
|
|
22
|
-
*
|
|
23
|
-
* @param content - Workspace source content
|
|
24
|
-
* @param fileName - Source file name (only `.css` is ever expanded)
|
|
25
|
-
* @param sharedDir - Absolute path of `components/shared/`
|
|
26
|
-
* @returns The composed content
|
|
27
|
-
* @throws FurnaceError when an included fragment is missing or nested
|
|
28
|
-
*/
|
|
29
|
-
export declare function composeComponentSource(content: string, fileName: string, sharedDir: string): Promise<string>;
|
|
30
|
-
/** The workspace source apply deploys to one engine path. */
|
|
31
|
-
export interface FurnaceDeployedSource {
|
|
32
|
-
type: 'custom' | 'override';
|
|
33
|
-
component: string;
|
|
34
|
-
/** Source file name inside the component directory. */
|
|
35
|
-
fileName: string;
|
|
36
|
-
/** Absolute path of the workspace source. */
|
|
37
|
-
sourcePath: string;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Maps every engine-relative path `furnace apply` writes to the workspace
|
|
41
|
-
* source it writes there: custom `.mjs`/`.css` into `targetPath`, a custom
|
|
42
|
-
* component's own `.ftl` into the Fluent tree (never for `sharedFtl`), and
|
|
43
|
-
* each override copy candidate onto its engine target.
|
|
44
|
-
*
|
|
45
|
-
* @param root - Project root
|
|
46
|
-
* @param config - Loaded furnace.json
|
|
47
|
-
* @returns Engine-relative path (POSIX) → deployed source
|
|
48
|
-
*/
|
|
49
|
-
export declare function mapDeployedComponentSources(root: string, config: FurnaceConfig): Promise<Map<string, FurnaceDeployedSource>>;
|
|
50
|
-
/**
|
|
51
|
-
* Why a deployed engine file is safe to overwrite from its component
|
|
52
|
-
* source even though no patch body or baseline explains it:
|
|
53
|
-
*
|
|
54
|
-
* - `composed-source`: it already equals the Furnace-composed current
|
|
55
|
-
* source, so the overwrite writes the same bytes;
|
|
56
|
-
* - `fragment-refresh`: it differs from the composed source only inside
|
|
57
|
-
* Furnace-generated fragment expansions (a fragment changed since it was
|
|
58
|
-
* deployed), so the overwrite only refreshes generated text;
|
|
59
|
-
* - `previous-deploy`: it is exactly the content Furnace's last recorded
|
|
60
|
-
* apply deployed (the source has moved on since), so the overwrite loses
|
|
61
|
-
* nothing that was not already a component source.
|
|
62
|
-
*/
|
|
63
|
-
export type DeployedSourceMatch = 'composed-source' | 'fragment-refresh' | 'previous-deploy';
|
|
64
|
-
/**
|
|
65
|
-
* For each engine-relative path, decides whether its current engine content
|
|
66
|
-
* is a Furnace deployment of its component source (see
|
|
67
|
-
* {@link DeployedSourceMatch}). Paths with no component source, an
|
|
68
|
-
* unreadable engine copy, or content explained by none of the matches are
|
|
69
|
-
* absent from the result.
|
|
70
|
-
*
|
|
71
|
-
* @param root - Project root
|
|
72
|
-
* @param engineDir - Absolute engine directory
|
|
73
|
-
* @param files - Engine-relative paths to classify
|
|
74
|
-
* @returns Engine-relative path → match, for the matching paths only
|
|
75
|
-
*/
|
|
76
|
-
export declare function matchDeployedComponentFiles(root: string, engineDir: string, files: readonly string[]): Promise<Map<string, DeployedSourceMatch>>;
|