@hominis/fireforge 0.55.0 → 0.60.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +233 -6
- package/README.md +51 -17
- package/dist/bin/fireforge.js +34 -129
- package/dist/build-info.json +4 -4
- package/dist/src/check/check.js +394 -0
- package/dist/src/check/gate.js +448 -0
- package/dist/src/check/index.js +10 -0
- package/dist/src/check/record.js +155 -0
- package/dist/src/cli/command.js +286 -0
- package/dist/src/cli/output.js +96 -0
- package/dist/src/cli/program.js +231 -0
- package/dist/src/cli/stdio.js +59 -0
- package/dist/src/cli/version.js +99 -0
- package/dist/src/commands/bootstrap.js +17 -102
- package/dist/src/commands/build.js +34 -456
- package/dist/src/commands/check.js +44 -157
- package/dist/src/commands/config.js +50 -226
- package/dist/src/commands/discard.js +38 -215
- package/dist/src/commands/doctor.js +29 -456
- package/dist/src/commands/download.js +35 -499
- package/dist/src/commands/export.js +42 -431
- package/dist/src/commands/furnace.js +220 -0
- package/dist/src/commands/gate.js +127 -0
- package/dist/src/commands/import.js +44 -445
- package/dist/src/commands/index.js +86 -0
- package/dist/src/commands/lint.js +44 -546
- package/dist/src/commands/merge-driver.js +56 -0
- package/dist/src/commands/migrate.js +75 -0
- package/dist/src/commands/override.js +43 -0
- package/dist/src/commands/package.js +48 -77
- package/dist/src/commands/patch.js +221 -0
- package/dist/src/commands/re-export.js +55 -359
- package/dist/src/commands/rebase.js +69 -0
- package/dist/src/commands/register.js +62 -103
- package/dist/src/commands/reset.js +28 -91
- package/dist/src/commands/resolve.js +20 -167
- package/dist/src/commands/restore.js +19 -0
- package/dist/src/commands/run.js +60 -382
- package/dist/src/commands/setup.js +78 -90
- package/dist/src/commands/status.js +44 -413
- package/dist/src/commands/test.js +97 -423
- package/dist/src/commands/token.js +185 -228
- package/dist/src/commands/typecheck.js +59 -241
- package/dist/src/commands/verify.js +28 -334
- package/dist/src/commands/version.js +14 -0
- package/dist/src/commands/watch.js +20 -218
- package/dist/src/commands/wire.js +60 -349
- package/dist/src/commands/workspace.js +117 -0
- package/dist/src/config/edit.js +237 -0
- package/dist/src/config/index.js +15 -0
- package/dist/src/config/load.js +59 -0
- package/dist/src/config/previous.js +404 -0
- package/dist/src/config/schema/build.js +63 -0
- package/dist/src/config/schema/check.js +113 -0
- package/dist/src/config/schema/common.js +71 -0
- package/dist/src/config/schema/export-queue.js +36 -0
- package/dist/src/config/schema/firefox.js +69 -0
- package/dist/src/config/schema/gate.js +199 -0
- package/dist/src/config/schema/identity.js +55 -0
- package/dist/src/config/schema/index.js +45 -0
- package/dist/src/config/schema/lint.js +297 -0
- package/dist/src/config/schema/policy.js +111 -0
- package/dist/src/config/schema/source.js +90 -0
- package/dist/src/config/schema/test.js +17 -0
- package/dist/src/config/schema/toolchains.js +17 -0
- package/dist/src/config/schema/typecheck.js +29 -0
- package/dist/src/config/schema/wire.js +15 -0
- package/dist/src/diff/apply.js +129 -0
- package/dist/src/diff/index.js +16 -0
- package/dist/src/diff/model.js +267 -0
- package/dist/src/diff/query.js +65 -0
- package/dist/src/doctor/index.js +240 -0
- package/dist/src/engine/archive.js +396 -0
- package/dist/src/engine/audit.js +66 -0
- package/dist/src/engine/build.js +150 -0
- package/dist/src/engine/hostLocks.js +66 -0
- package/dist/src/engine/index.js +26 -0
- package/dist/src/engine/installManifests.js +147 -0
- package/dist/src/engine/mach.js +97 -0
- package/dist/src/engine/machHints.js +80 -0
- package/dist/src/engine/mozconfig.js +110 -0
- package/dist/src/engine/objdir.js +124 -0
- package/dist/src/engine/package.js +169 -0
- package/dist/src/engine/pin.js +12 -0
- package/dist/src/engine/pool.js +423 -0
- package/dist/src/engine/pristine.js +281 -0
- package/dist/src/engine/python.js +68 -0
- package/dist/src/engine/resourceGuard.js +582 -0
- package/dist/src/engine/run.js +259 -0
- package/dist/src/engine/smoke.js +204 -0
- package/dist/src/engine/staleness.js +229 -0
- package/dist/src/engine/watch.js +82 -0
- package/dist/src/engine/workspace.js +85 -0
- package/dist/src/furnace/config.js +360 -0
- package/dist/src/furnace/deploy.js +414 -0
- package/dist/src/furnace/diff.js +59 -0
- package/dist/src/furnace/edit.js +64 -0
- package/dist/src/furnace/fragments.js +53 -0
- package/dist/src/furnace/index.js +19 -0
- package/dist/src/furnace/operations.js +283 -0
- package/dist/src/furnace/registration.js +220 -0
- package/dist/src/furnace/scaffold.js +311 -0
- package/dist/src/furnace/typing.js +252 -0
- package/dist/src/furnace/validate.js +662 -0
- package/dist/src/git/apply.js +129 -0
- package/dist/src/git/diff.js +143 -0
- package/dist/src/git/index.js +33 -0
- package/dist/src/git/objects.js +201 -0
- package/dist/src/git/refs.js +85 -0
- package/dist/src/git/repo.js +222 -0
- package/dist/src/git/run.js +242 -0
- package/dist/src/git/status.js +156 -0
- package/dist/src/kernel/errors.js +123 -0
- package/dist/src/kernel/fs.js +515 -0
- package/dist/src/kernel/glob.js +63 -0
- package/dist/src/kernel/hash.js +28 -0
- package/dist/src/kernel/journal.js +524 -0
- package/dist/src/kernel/json-edit.js +198 -0
- package/dist/src/kernel/json.js +101 -0
- package/dist/src/kernel/lock.js +589 -0
- package/dist/src/kernel/log.js +154 -0
- package/dist/src/kernel/process/identity.js +313 -0
- package/dist/src/kernel/process/index.js +8 -0
- package/dist/src/kernel/process/listing.js +128 -0
- package/dist/src/kernel/process/spawn.js +430 -0
- package/dist/src/kernel/process/tree.js +301 -0
- package/dist/src/kernel/schema.js +308 -0
- package/dist/src/kernel/signals.js +171 -0
- package/dist/src/kernel/text.js +151 -0
- package/dist/src/kernel/time.js +83 -0
- package/dist/src/kernel/tty.js +84 -0
- package/dist/src/lint/cache.js +77 -0
- package/dist/src/lint/checkjs.js +400 -0
- package/dist/src/lint/index.js +3 -0
- package/dist/src/lint/input.js +100 -0
- package/dist/src/lint/report.js +107 -0
- package/dist/src/lint/rule.js +41 -0
- package/dist/src/lint/rules/css.js +308 -0
- package/dist/src/lint/rules/javascript.js +299 -0
- package/dist/src/lint/rules/jsdoc.js +249 -0
- package/dist/src/lint/rules/license.js +93 -0
- package/dist/src/lint/rules/policy.js +201 -0
- package/dist/src/lint/rules/registration.js +264 -0
- package/dist/src/lint/rules/size.js +299 -0
- package/dist/src/lint/run.js +126 -0
- package/dist/src/lint/shim.js +323 -0
- package/dist/src/lint/typescript.js +186 -0
- package/dist/src/lint/waivers.js +93 -0
- package/dist/src/mode/changes.js +264 -0
- package/dist/src/mode/diagnose.js +173 -0
- package/dist/src/mode/export.js +147 -0
- package/dist/src/mode/index.js +23 -0
- package/dist/src/mode/migrate.js +181 -0
- package/dist/src/mode/previousWaivers.js +206 -0
- package/dist/src/mode/pristine.js +61 -0
- package/dist/src/mode/rebase.js +197 -0
- package/dist/src/mode/report.js +157 -0
- package/dist/src/mode/setup.js +103 -0
- package/dist/src/mode/tracked.js +116 -0
- package/dist/src/mode/upgrade.js +281 -0
- package/dist/src/mode/watch.js +83 -0
- package/dist/src/mode/workspace.js +189 -0
- package/dist/src/mozbuild/index.js +6 -0
- package/dist/src/mozbuild/jar.js +366 -0
- package/dist/src/mozbuild/mozbuild.js +321 -0
- package/dist/src/mozbuild/paths.js +96 -0
- package/dist/src/mozbuild/references.js +39 -0
- package/dist/src/mozbuild/testManifest.js +343 -0
- package/dist/src/mozbuild/text.js +142 -0
- package/dist/src/project/changes.js +145 -0
- package/dist/src/project/checkout.js +66 -0
- package/dist/src/project/index.js +11 -0
- package/dist/src/project/license.js +119 -0
- package/dist/src/project/project.js +111 -0
- package/dist/src/project/state.js +85 -0
- package/dist/src/project/tracked.js +1 -0
- package/dist/src/queue/apply.js +270 -0
- package/dist/src/queue/attribute.js +159 -0
- package/dist/src/queue/baseline.js +409 -0
- package/dist/src/queue/capture.js +298 -0
- package/dist/src/queue/changes.js +234 -0
- package/dist/src/queue/index.js +50 -0
- package/dist/src/queue/manifest.js +341 -0
- package/dist/src/queue/operations.js +454 -0
- package/dist/src/queue/placement.js +220 -0
- package/dist/src/queue/queue.js +359 -0
- package/dist/src/queue/restore.js +103 -0
- package/dist/src/queue/session.js +685 -0
- package/dist/src/queue/status.js +137 -0
- package/dist/src/register/files.js +39 -0
- package/dist/src/register/index.js +8 -0
- package/dist/src/register/js.js +217 -0
- package/dist/src/register/register.js +359 -0
- package/dist/src/register/wire.js +146 -0
- package/dist/src/source/adopt.js +99 -0
- package/dist/src/source/changes.js +132 -0
- package/dist/src/source/edit.js +278 -0
- package/dist/src/source/export.js +70 -0
- package/dist/src/source/groups.js +131 -0
- package/dist/src/source/index.js +20 -0
- package/dist/src/source/materialize.js +382 -0
- package/dist/src/source/merge.js +255 -0
- package/dist/src/source/objects.js +102 -0
- package/dist/src/source/previous.js +166 -0
- package/dist/src/source/records.js +138 -0
- package/dist/src/source/refresh.js +264 -0
- package/dist/src/source/tree.js +337 -0
- package/dist/src/syntax/css.js +215 -0
- package/dist/src/syntax/fragments.js +63 -0
- package/dist/src/syntax/index.js +10 -0
- package/dist/src/syntax/js.js +270 -0
- package/dist/src/test/classify.js +826 -0
- package/dist/src/test/control.js +236 -0
- package/dist/src/test/host.js +266 -0
- package/dist/src/test/index.js +11 -0
- package/dist/src/test/plan.js +347 -0
- package/dist/src/test/rawLog.js +138 -0
- package/dist/src/test/run.js +404 -0
- package/dist/src/test/verdict.js +420 -0
- package/dist/src/test/xpcshell.js +143 -0
- package/dist/src/tokens/add.js +304 -0
- package/dist/src/tokens/coverage.js +65 -0
- package/dist/src/tokens/css.js +58 -0
- package/dist/src/tokens/index.js +12 -0
- package/dist/src/tokens/lint.js +96 -0
- package/dist/src/tokens/model.js +118 -0
- package/dist/src/tokens/settings.js +87 -0
- package/dist/src/tokens/siblings.js +104 -0
- package/dist/src/typecheck/explain.js +123 -0
- package/dist/src/typecheck/index.js +8 -0
- package/dist/src/typecheck/typecheck.js +332 -0
- package/docs/README.md +23 -28
- package/docs/authoring.md +97 -0
- package/docs/configuration.md +307 -766
- package/docs/exit-codes.md +76 -94
- package/docs/furnace.md +111 -221
- package/docs/gate.md +205 -0
- package/docs/getting-started.md +165 -0
- package/docs/machine-output.md +201 -290
- package/docs/migrating.md +261 -0
- package/docs/patch-workflow.md +159 -723
- package/docs/quality.md +220 -0
- package/docs/source-workflow.md +228 -0
- package/docs/testing.md +101 -719
- package/docs/workspaces.md +187 -0
- package/package.json +22 -30
- package/templates/configs/common.mozconfig +8 -2
- package/templates/configs/darwin.mozconfig +6 -7
- package/templates/configs/linux.mozconfig +5 -8
- package/templates/configs/win32.mozconfig +3 -9
- package/dist/bin/fireforge.d.ts +0 -9
- package/dist/src/cli-usage-error.d.ts +0 -46
- package/dist/src/cli-usage-error.js +0 -81
- package/dist/src/cli.d.ts +0 -41
- package/dist/src/cli.js +0 -380
- package/dist/src/commands/bootstrap-checks.d.ts +0 -16
- package/dist/src/commands/bootstrap-checks.js +0 -66
- package/dist/src/commands/bootstrap.d.ts +0 -10
- package/dist/src/commands/build-prelock.d.ts +0 -20
- package/dist/src/commands/build-prelock.js +0 -50
- package/dist/src/commands/build.d.ts +0 -13
- package/dist/src/commands/check-report.d.ts +0 -41
- package/dist/src/commands/check-report.js +0 -98
- package/dist/src/commands/check-run.d.ts +0 -44
- package/dist/src/commands/check-run.js +0 -125
- package/dist/src/commands/check-steps.d.ts +0 -75
- package/dist/src/commands/check-steps.js +0 -200
- package/dist/src/commands/check.d.ts +0 -32
- package/dist/src/commands/config.d.ts +0 -13
- package/dist/src/commands/declarations-report.d.ts +0 -49
- package/dist/src/commands/declarations-report.js +0 -83
- package/dist/src/commands/destructive-decision.d.ts +0 -19
- package/dist/src/commands/destructive-decision.js +0 -31
- package/dist/src/commands/discard.d.ts +0 -12
- package/dist/src/commands/doctor-check-core.d.ts +0 -110
- package/dist/src/commands/doctor-check-core.js +0 -24
- package/dist/src/commands/doctor-engine-eslint.d.ts +0 -3
- package/dist/src/commands/doctor-engine-eslint.js +0 -17
- package/dist/src/commands/doctor-external-toolchains.d.ts +0 -3
- package/dist/src/commands/doctor-external-toolchains.js +0 -56
- package/dist/src/commands/doctor-furnace-config-sync.d.ts +0 -18
- package/dist/src/commands/doctor-furnace-config-sync.js +0 -295
- package/dist/src/commands/doctor-furnace-jar.d.ts +0 -14
- package/dist/src/commands/doctor-furnace-jar.js +0 -44
- package/dist/src/commands/doctor-furnace.d.ts +0 -8
- package/dist/src/commands/doctor-furnace.js +0 -514
- package/dist/src/commands/doctor-macos-sdk.d.ts +0 -8
- package/dist/src/commands/doctor-macos-sdk.js +0 -158
- package/dist/src/commands/doctor-orphaned-harness.d.ts +0 -41
- package/dist/src/commands/doctor-orphaned-harness.js +0 -98
- package/dist/src/commands/doctor-patch-manifest.d.ts +0 -9
- package/dist/src/commands/doctor-patch-manifest.js +0 -156
- package/dist/src/commands/doctor-post-rebase-audit.d.ts +0 -2
- package/dist/src/commands/doctor-post-rebase-audit.js +0 -108
- package/dist/src/commands/doctor-source-pin.d.ts +0 -29
- package/dist/src/commands/doctor-source-pin.js +0 -91
- package/dist/src/commands/doctor-working-tree.d.ts +0 -27
- package/dist/src/commands/doctor-working-tree.js +0 -89
- package/dist/src/commands/doctor.d.ts +0 -49
- package/dist/src/commands/download.d.ts +0 -11
- package/dist/src/commands/export-adopt-check.d.ts +0 -37
- package/dist/src/commands/export-adopt-check.js +0 -97
- package/dist/src/commands/export-all.d.ts +0 -11
- package/dist/src/commands/export-all.js +0 -361
- package/dist/src/commands/export-flow.d.ts +0 -124
- package/dist/src/commands/export-flow.js +0 -423
- package/dist/src/commands/export-placement-conflicts.d.ts +0 -17
- package/dist/src/commands/export-placement-conflicts.js +0 -75
- package/dist/src/commands/export-placement-gate.d.ts +0 -42
- package/dist/src/commands/export-placement-gate.js +0 -107
- package/dist/src/commands/export-placement-policy.d.ts +0 -22
- package/dist/src/commands/export-placement-policy.js +0 -54
- package/dist/src/commands/export-shared.d.ts +0 -152
- package/dist/src/commands/export-shared.js +0 -396
- package/dist/src/commands/export-staged-registration.d.ts +0 -46
- package/dist/src/commands/export-staged-registration.js +0 -91
- package/dist/src/commands/export.d.ts +0 -13
- package/dist/src/commands/forward-import-remedy.d.ts +0 -31
- package/dist/src/commands/forward-import-remedy.js +0 -62
- package/dist/src/commands/furnace/apply.d.ts +0 -8
- package/dist/src/commands/furnace/apply.js +0 -327
- package/dist/src/commands/furnace/authoring-config.d.ts +0 -13
- package/dist/src/commands/furnace/authoring-config.js +0 -19
- package/dist/src/commands/furnace/chrome-doc-remove.d.ts +0 -14
- package/dist/src/commands/furnace/chrome-doc-remove.js +0 -148
- package/dist/src/commands/furnace/chrome-doc-templates.d.ts +0 -152
- package/dist/src/commands/furnace/chrome-doc-templates.js +0 -331
- package/dist/src/commands/furnace/chrome-doc-tests.d.ts +0 -23
- package/dist/src/commands/furnace/chrome-doc-tests.js +0 -148
- package/dist/src/commands/furnace/chrome-doc.d.ts +0 -87
- package/dist/src/commands/furnace/chrome-doc.js +0 -365
- package/dist/src/commands/furnace/create-browser-test.d.ts +0 -44
- package/dist/src/commands/furnace/create-browser-test.js +0 -179
- package/dist/src/commands/furnace/create-dry-run.d.ts +0 -49
- package/dist/src/commands/furnace/create-dry-run.js +0 -107
- package/dist/src/commands/furnace/create-features.d.ts +0 -24
- package/dist/src/commands/furnace/create-features.js +0 -55
- package/dist/src/commands/furnace/create-mochikit.d.ts +0 -29
- package/dist/src/commands/furnace/create-mochikit.js +0 -75
- package/dist/src/commands/furnace/create-readback.d.ts +0 -22
- package/dist/src/commands/furnace/create-readback.js +0 -32
- package/dist/src/commands/furnace/create-templates.d.ts +0 -119
- package/dist/src/commands/furnace/create-templates.js +0 -283
- package/dist/src/commands/furnace/create-validation.d.ts +0 -6
- package/dist/src/commands/furnace/create-validation.js +0 -59
- package/dist/src/commands/furnace/create-xpcshell.d.ts +0 -27
- package/dist/src/commands/furnace/create-xpcshell.js +0 -80
- package/dist/src/commands/furnace/create.d.ts +0 -24
- package/dist/src/commands/furnace/create.js +0 -407
- package/dist/src/commands/furnace/deploy-fragment-includers.d.ts +0 -59
- package/dist/src/commands/furnace/deploy-fragment-includers.js +0 -120
- package/dist/src/commands/furnace/deploy-named.d.ts +0 -48
- package/dist/src/commands/furnace/deploy-named.js +0 -107
- package/dist/src/commands/furnace/deploy.d.ts +0 -9
- package/dist/src/commands/furnace/deploy.js +0 -229
- package/dist/src/commands/furnace/diff.d.ts +0 -11
- package/dist/src/commands/furnace/diff.js +0 -238
- package/dist/src/commands/furnace/index.d.ts +0 -4
- package/dist/src/commands/furnace/index.js +0 -283
- package/dist/src/commands/furnace/init.d.ts +0 -11
- package/dist/src/commands/furnace/init.js +0 -287
- package/dist/src/commands/furnace/list.d.ts +0 -8
- package/dist/src/commands/furnace/list.js +0 -104
- package/dist/src/commands/furnace/override.d.ts +0 -16
- package/dist/src/commands/furnace/override.js +0 -454
- package/dist/src/commands/furnace/preview.d.ts +0 -19
- package/dist/src/commands/furnace/preview.js +0 -349
- package/dist/src/commands/furnace/refresh.d.ts +0 -10
- package/dist/src/commands/furnace/refresh.js +0 -303
- package/dist/src/commands/furnace/remove-mutations.d.ts +0 -36
- package/dist/src/commands/furnace/remove-mutations.js +0 -168
- package/dist/src/commands/furnace/remove-state.d.ts +0 -20
- package/dist/src/commands/furnace/remove-state.js +0 -60
- package/dist/src/commands/furnace/remove.d.ts +0 -8
- package/dist/src/commands/furnace/remove.js +0 -415
- package/dist/src/commands/furnace/rename-browser-test.d.ts +0 -2
- package/dist/src/commands/furnace/rename-browser-test.js +0 -68
- package/dist/src/commands/furnace/rename-dry-run.d.ts +0 -29
- package/dist/src/commands/furnace/rename-dry-run.js +0 -127
- package/dist/src/commands/furnace/rename-helpers.d.ts +0 -26
- package/dist/src/commands/furnace/rename-helpers.js +0 -85
- package/dist/src/commands/furnace/rename-registrations.d.ts +0 -41
- package/dist/src/commands/furnace/rename-registrations.js +0 -98
- package/dist/src/commands/furnace/rename-xpcshell.d.ts +0 -32
- package/dist/src/commands/furnace/rename-xpcshell.js +0 -95
- package/dist/src/commands/furnace/rename.d.ts +0 -6
- package/dist/src/commands/furnace/rename.js +0 -400
- package/dist/src/commands/furnace/scan.d.ts +0 -14
- package/dist/src/commands/furnace/scan.js +0 -192
- package/dist/src/commands/furnace/status.d.ts +0 -7
- package/dist/src/commands/furnace/status.js +0 -209
- package/dist/src/commands/furnace/sync.d.ts +0 -12
- package/dist/src/commands/furnace/sync.js +0 -145
- package/dist/src/commands/furnace/test-file-name.d.ts +0 -28
- package/dist/src/commands/furnace/test-file-name.js +0 -39
- package/dist/src/commands/furnace/validate-report.d.ts +0 -45
- package/dist/src/commands/furnace/validate-report.js +0 -91
- package/dist/src/commands/furnace/validate.d.ts +0 -8
- package/dist/src/commands/furnace/validate.js +0 -309
- package/dist/src/commands/furnace/validation-output.d.ts +0 -47
- package/dist/src/commands/furnace/validation-output.js +0 -161
- package/dist/src/commands/import.d.ts +0 -11
- package/dist/src/commands/lint-per-patch.d.ts +0 -10
- package/dist/src/commands/lint-per-patch.js +0 -428
- package/dist/src/commands/lint-per-run-checkjs.d.ts +0 -66
- package/dist/src/commands/lint-per-run-checkjs.js +0 -102
- package/dist/src/commands/lint-report.d.ts +0 -25
- package/dist/src/commands/lint-report.js +0 -76
- package/dist/src/commands/lint.d.ts +0 -47
- package/dist/src/commands/manifest.d.ts +0 -38
- package/dist/src/commands/manifest.js +0 -68
- package/dist/src/commands/package.d.ts +0 -11
- package/dist/src/commands/park.d.ts +0 -22
- package/dist/src/commands/park.js +0 -232
- package/dist/src/commands/patch/body.d.ts +0 -29
- package/dist/src/commands/patch/body.js +0 -60
- package/dist/src/commands/patch/compact.d.ts +0 -28
- package/dist/src/commands/patch/compact.js +0 -208
- package/dist/src/commands/patch/delete-gap-notice.d.ts +0 -24
- package/dist/src/commands/patch/delete-gap-notice.js +0 -48
- package/dist/src/commands/patch/delete.d.ts +0 -28
- package/dist/src/commands/patch/delete.js +0 -131
- package/dist/src/commands/patch/entry-projection.d.ts +0 -13
- package/dist/src/commands/patch/entry-projection.js +0 -24
- package/dist/src/commands/patch/index.d.ts +0 -16
- package/dist/src/commands/patch/index.js +0 -54
- package/dist/src/commands/patch/lint-ignore-from.d.ts +0 -43
- package/dist/src/commands/patch/lint-ignore-from.js +0 -141
- package/dist/src/commands/patch/lint-ignore.d.ts +0 -42
- package/dist/src/commands/patch/lint-ignore.js +0 -263
- package/dist/src/commands/patch/move-files-adopt.d.ts +0 -33
- package/dist/src/commands/patch/move-files-adopt.js +0 -65
- package/dist/src/commands/patch/move-files-create.d.ts +0 -19
- package/dist/src/commands/patch/move-files-create.js +0 -187
- package/dist/src/commands/patch/move-files-into.d.ts +0 -65
- package/dist/src/commands/patch/move-files-into.js +0 -325
- package/dist/src/commands/patch/move-files-retire.d.ts +0 -39
- package/dist/src/commands/patch/move-files-retire.js +0 -91
- package/dist/src/commands/patch/move-files.d.ts +0 -28
- package/dist/src/commands/patch/move-files.js +0 -224
- package/dist/src/commands/patch/move-size-tier.d.ts +0 -27
- package/dist/src/commands/patch/move-size-tier.js +0 -66
- package/dist/src/commands/patch/patch-context.d.ts +0 -40
- package/dist/src/commands/patch/patch-context.js +0 -51
- package/dist/src/commands/patch/removal-created-files.d.ts +0 -48
- package/dist/src/commands/patch/removal-created-files.js +0 -83
- package/dist/src/commands/patch/removal-dependents.d.ts +0 -63
- package/dist/src/commands/patch/removal-dependents.js +0 -133
- package/dist/src/commands/patch/rename.d.ts +0 -35
- package/dist/src/commands/patch/rename.js +0 -378
- package/dist/src/commands/patch/reorder-projection.d.ts +0 -17
- package/dist/src/commands/patch/reorder-projection.js +0 -49
- package/dist/src/commands/patch/reorder-shift.d.ts +0 -30
- package/dist/src/commands/patch/reorder-shift.js +0 -307
- package/dist/src/commands/patch/reorder.d.ts +0 -34
- package/dist/src/commands/patch/reorder.js +0 -375
- package/dist/src/commands/patch/reserve.d.ts +0 -33
- package/dist/src/commands/patch/reserve.js +0 -152
- package/dist/src/commands/patch/retire.d.ts +0 -34
- package/dist/src/commands/patch/retire.js +0 -133
- package/dist/src/commands/patch/split-plan.d.ts +0 -125
- package/dist/src/commands/patch/split-plan.js +0 -313
- package/dist/src/commands/patch/split-staged.d.ts +0 -108
- package/dist/src/commands/patch/split-staged.js +0 -202
- package/dist/src/commands/patch/split.d.ts +0 -43
- package/dist/src/commands/patch/split.js +0 -367
- package/dist/src/commands/patch/stage.d.ts +0 -34
- package/dist/src/commands/patch/stage.js +0 -153
- package/dist/src/commands/patch/staged-dependency-batch.d.ts +0 -48
- package/dist/src/commands/patch/staged-dependency-batch.js +0 -176
- package/dist/src/commands/patch/staged-dependency-entries.d.ts +0 -44
- package/dist/src/commands/patch/staged-dependency-entries.js +0 -80
- package/dist/src/commands/patch/staged-dependency-from.d.ts +0 -14
- package/dist/src/commands/patch/staged-dependency-from.js +0 -114
- package/dist/src/commands/patch/staged-dependency-remove.d.ts +0 -53
- package/dist/src/commands/patch/staged-dependency-remove.js +0 -114
- package/dist/src/commands/patch/staged-dependency-validate.d.ts +0 -27
- package/dist/src/commands/patch/staged-dependency-validate.js +0 -78
- package/dist/src/commands/patch/staged-dependency.d.ts +0 -22
- package/dist/src/commands/patch/staged-dependency.js +0 -251
- package/dist/src/commands/patch/tier.d.ts +0 -34
- package/dist/src/commands/patch/tier.js +0 -125
- package/dist/src/commands/patch-rename-map.d.ts +0 -30
- package/dist/src/commands/patch-rename-map.js +0 -54
- package/dist/src/commands/pending-resolution.d.ts +0 -15
- package/dist/src/commands/pending-resolution.js +0 -25
- package/dist/src/commands/re-export-adjacent-registrations.d.ts +0 -20
- package/dist/src/commands/re-export-adjacent-registrations.js +0 -75
- package/dist/src/commands/re-export-adjacent.d.ts +0 -111
- package/dist/src/commands/re-export-adjacent.js +0 -285
- package/dist/src/commands/re-export-bulk-scan.d.ts +0 -19
- package/dist/src/commands/re-export-bulk-scan.js +0 -233
- package/dist/src/commands/re-export-drift.d.ts +0 -110
- package/dist/src/commands/re-export-drift.js +0 -358
- package/dist/src/commands/re-export-each.d.ts +0 -46
- package/dist/src/commands/re-export-each.js +0 -110
- package/dist/src/commands/re-export-files.d.ts +0 -15
- package/dist/src/commands/re-export-files.js +0 -307
- package/dist/src/commands/re-export-hunks.d.ts +0 -37
- package/dist/src/commands/re-export-hunks.js +0 -264
- package/dist/src/commands/re-export-lint.d.ts +0 -137
- package/dist/src/commands/re-export-lint.js +0 -303
- package/dist/src/commands/re-export-options.d.ts +0 -29
- package/dist/src/commands/re-export-options.js +0 -192
- package/dist/src/commands/re-export-preflight.d.ts +0 -23
- package/dist/src/commands/re-export-preflight.js +0 -159
- package/dist/src/commands/re-export-purity-scope.d.ts +0 -18
- package/dist/src/commands/re-export-purity-scope.js +0 -137
- package/dist/src/commands/re-export-register.d.ts +0 -12
- package/dist/src/commands/re-export-register.js +0 -99
- package/dist/src/commands/re-export-removed.d.ts +0 -15
- package/dist/src/commands/re-export-removed.js +0 -94
- package/dist/src/commands/re-export-retired-declarations.d.ts +0 -22
- package/dist/src/commands/re-export-retired-declarations.js +0 -113
- package/dist/src/commands/re-export-scan-owner.d.ts +0 -44
- package/dist/src/commands/re-export-scan-owner.js +0 -116
- package/dist/src/commands/re-export-scan.d.ts +0 -72
- package/dist/src/commands/re-export-scan.js +0 -265
- package/dist/src/commands/re-export-single.d.ts +0 -53
- package/dist/src/commands/re-export-single.js +0 -426
- package/dist/src/commands/re-export-stale-registrations.d.ts +0 -39
- package/dist/src/commands/re-export-stale-registrations.js +0 -106
- package/dist/src/commands/re-export-summary.d.ts +0 -44
- package/dist/src/commands/re-export-summary.js +0 -59
- package/dist/src/commands/re-export.d.ts +0 -8
- package/dist/src/commands/rebase/abort.d.ts +0 -7
- package/dist/src/commands/rebase/abort.js +0 -67
- package/dist/src/commands/rebase/confirm.d.ts +0 -42
- package/dist/src/commands/rebase/confirm.js +0 -36
- package/dist/src/commands/rebase/conflict-summary.d.ts +0 -12
- package/dist/src/commands/rebase/conflict-summary.js +0 -37
- package/dist/src/commands/rebase/continue.d.ts +0 -7
- package/dist/src/commands/rebase/continue.js +0 -119
- package/dist/src/commands/rebase/index.d.ts +0 -22
- package/dist/src/commands/rebase/index.js +0 -209
- package/dist/src/commands/rebase/patch-loop.d.ts +0 -15
- package/dist/src/commands/rebase/patch-loop.js +0 -289
- package/dist/src/commands/rebase/summary.d.ts +0 -8
- package/dist/src/commands/rebase/summary.js +0 -47
- package/dist/src/commands/register.d.ts +0 -13
- package/dist/src/commands/reset.d.ts +0 -11
- package/dist/src/commands/resolve.d.ts +0 -36
- package/dist/src/commands/run.d.ts +0 -10
- package/dist/src/commands/setup-support.d.ts +0 -35
- package/dist/src/commands/setup-support.js +0 -386
- package/dist/src/commands/setup.d.ts +0 -11
- package/dist/src/commands/source.d.ts +0 -9
- package/dist/src/commands/source.js +0 -120
- package/dist/src/commands/status-check.d.ts +0 -87
- package/dist/src/commands/status-check.js +0 -161
- package/dist/src/commands/status-json.d.ts +0 -45
- package/dist/src/commands/status-json.js +0 -97
- package/dist/src/commands/status-output.d.ts +0 -23
- package/dist/src/commands/status-output.js +0 -231
- package/dist/src/commands/status-ownership.d.ts +0 -54
- package/dist/src/commands/status-ownership.js +0 -59
- package/dist/src/commands/status-scope.d.ts +0 -37
- package/dist/src/commands/status-scope.js +0 -54
- package/dist/src/commands/status.d.ts +0 -11
- package/dist/src/commands/test-appdir.d.ts +0 -6
- package/dist/src/commands/test-appdir.js +0 -29
- package/dist/src/commands/test-browser-preflight.d.ts +0 -28
- package/dist/src/commands/test-browser-preflight.js +0 -197
- package/dist/src/commands/test-build-furnace.d.ts +0 -21
- package/dist/src/commands/test-build-furnace.js +0 -53
- package/dist/src/commands/test-build-phase.d.ts +0 -34
- package/dist/src/commands/test-build-phase.js +0 -291
- package/dist/src/commands/test-checkjs.d.ts +0 -3
- package/dist/src/commands/test-checkjs.js +0 -35
- package/dist/src/commands/test-control-restore.d.ts +0 -40
- package/dist/src/commands/test-control-restore.js +0 -86
- package/dist/src/commands/test-diagnose.d.ts +0 -23
- package/dist/src/commands/test-diagnose.js +0 -317
- package/dist/src/commands/test-dispatch.d.ts +0 -39
- package/dist/src/commands/test-dispatch.js +0 -281
- package/dist/src/commands/test-furnace-reach.d.ts +0 -37
- package/dist/src/commands/test-furnace-reach.js +0 -132
- package/dist/src/commands/test-harness-env.d.ts +0 -23
- package/dist/src/commands/test-harness-env.js +0 -81
- package/dist/src/commands/test-harness-teardown.d.ts +0 -62
- package/dist/src/commands/test-harness-teardown.js +0 -128
- package/dist/src/commands/test-modes.d.ts +0 -57
- package/dist/src/commands/test-modes.js +0 -158
- package/dist/src/commands/test-multi-verdict.d.ts +0 -61
- package/dist/src/commands/test-multi-verdict.js +0 -112
- package/dist/src/commands/test-orchestrate.d.ts +0 -70
- package/dist/src/commands/test-orchestrate.js +0 -277
- package/dist/src/commands/test-perf-scope.d.ts +0 -50
- package/dist/src/commands/test-perf-scope.js +0 -138
- package/dist/src/commands/test-prelock.d.ts +0 -61
- package/dist/src/commands/test-prelock.js +0 -301
- package/dist/src/commands/test-register.d.ts +0 -4
- package/dist/src/commands/test-register.js +0 -181
- package/dist/src/commands/test-results.d.ts +0 -71
- package/dist/src/commands/test-results.js +0 -79
- package/dist/src/commands/test-run.d.ts +0 -89
- package/dist/src/commands/test-run.js +0 -251
- package/dist/src/commands/test-shards.d.ts +0 -114
- package/dist/src/commands/test-shards.js +0 -272
- package/dist/src/commands/test-stale-gate.d.ts +0 -56
- package/dist/src/commands/test-stale-gate.js +0 -208
- package/dist/src/commands/test-verdict.d.ts +0 -102
- package/dist/src/commands/test-verdict.js +0 -176
- package/dist/src/commands/test.d.ts +0 -22
- package/dist/src/commands/token-coverage.d.ts +0 -5
- package/dist/src/commands/token-coverage.js +0 -170
- package/dist/src/commands/token-lint.d.ts +0 -14
- package/dist/src/commands/token-lint.js +0 -151
- package/dist/src/commands/token-list.d.ts +0 -26
- package/dist/src/commands/token-list.js +0 -153
- package/dist/src/commands/token.d.ts +0 -14
- package/dist/src/commands/tree.d.ts +0 -19
- package/dist/src/commands/tree.js +0 -341
- package/dist/src/commands/typecheck-explain.d.ts +0 -13
- package/dist/src/commands/typecheck-explain.js +0 -100
- package/dist/src/commands/typecheck.d.ts +0 -61
- package/dist/src/commands/verify-scope.d.ts +0 -28
- package/dist/src/commands/verify-scope.js +0 -67
- package/dist/src/commands/verify.d.ts +0 -58
- package/dist/src/commands/watch.d.ts +0 -9
- package/dist/src/commands/wire.d.ts +0 -13
- package/dist/src/core/ast-utils.d.ts +0 -73
- package/dist/src/core/ast-utils.js +0 -105
- package/dist/src/core/brand-validation.d.ts +0 -7
- package/dist/src/core/brand-validation.js +0 -14
- package/dist/src/core/branding.d.ts +0 -86
- package/dist/src/core/branding.js +0 -371
- package/dist/src/core/browser-wire.d.ts +0 -48
- package/dist/src/core/browser-wire.js +0 -133
- package/dist/src/core/build-audit-platform.d.ts +0 -67
- package/dist/src/core/build-audit-platform.js +0 -373
- package/dist/src/core/build-audit-registration.d.ts +0 -80
- package/dist/src/core/build-audit-registration.js +0 -181
- package/dist/src/core/build-audit-resolve.d.ts +0 -78
- package/dist/src/core/build-audit-resolve.js +0 -240
- package/dist/src/core/build-audit-skip.d.ts +0 -57
- package/dist/src/core/build-audit-skip.js +0 -112
- package/dist/src/core/build-audit-transforms.d.ts +0 -23
- package/dist/src/core/build-audit-transforms.js +0 -92
- package/dist/src/core/build-audit.d.ts +0 -93
- package/dist/src/core/build-audit.js +0 -633
- package/dist/src/core/build-baseline-types.d.ts +0 -225
- package/dist/src/core/build-baseline-types.js +0 -10
- package/dist/src/core/build-baseline-validate.d.ts +0 -32
- package/dist/src/core/build-baseline-validate.js +0 -173
- package/dist/src/core/build-baseline.d.ts +0 -103
- package/dist/src/core/build-baseline.js +0 -261
- package/dist/src/core/build-jar-escalation.d.ts +0 -61
- package/dist/src/core/build-jar-escalation.js +0 -125
- package/dist/src/core/build-overwrite-guard.d.ts +0 -92
- package/dist/src/core/build-overwrite-guard.js +0 -235
- package/dist/src/core/build-prepare.d.ts +0 -83
- package/dist/src/core/build-prepare.js +0 -414
- package/dist/src/core/build-run-record.d.ts +0 -74
- package/dist/src/core/build-run-record.js +0 -136
- package/dist/src/core/checkjs-support-heads.d.ts +0 -41
- package/dist/src/core/checkjs-support-heads.js +0 -104
- package/dist/src/core/component-source-guard.d.ts +0 -20
- package/dist/src/core/component-source-guard.js +0 -68
- package/dist/src/core/config-mutate.d.ts +0 -16
- package/dist/src/core/config-mutate.js +0 -76
- package/dist/src/core/config-paths.d.ts +0 -16
- package/dist/src/core/config-paths.js +0 -106
- package/dist/src/core/config-state.d.ts +0 -16
- package/dist/src/core/config-state.js +0 -141
- package/dist/src/core/config-validate-build-audit.d.ts +0 -8
- package/dist/src/core/config-validate-build-audit.js +0 -80
- package/dist/src/core/config-validate-check.d.ts +0 -8
- package/dist/src/core/config-validate-check.js +0 -219
- package/dist/src/core/config-validate-file-size.d.ts +0 -15
- package/dist/src/core/config-validate-file-size.js +0 -154
- package/dist/src/core/config-validate-history.d.ts +0 -11
- package/dist/src/core/config-validate-history.js +0 -38
- package/dist/src/core/config-validate-patch-policy.d.ts +0 -7
- package/dist/src/core/config-validate-patch-policy.js +0 -284
- package/dist/src/core/config-validate-test-toolchains.d.ts +0 -8
- package/dist/src/core/config-validate-test-toolchains.js +0 -133
- package/dist/src/core/config-validate-token-scales.d.ts +0 -9
- package/dist/src/core/config-validate-token-scales.js +0 -125
- package/dist/src/core/config-validate.d.ts +0 -11
- package/dist/src/core/config-validate.js +0 -509
- package/dist/src/core/config.d.ts +0 -92
- package/dist/src/core/config.js +0 -169
- package/dist/src/core/coverage-dispatch.d.ts +0 -24
- package/dist/src/core/coverage-dispatch.js +0 -44
- package/dist/src/core/coverage-extend.d.ts +0 -89
- package/dist/src/core/coverage-extend.js +0 -239
- package/dist/src/core/coverage-records.d.ts +0 -107
- package/dist/src/core/coverage-records.js +0 -383
- package/dist/src/core/destructive.d.ts +0 -144
- package/dist/src/core/destructive.js +0 -182
- package/dist/src/core/dev-profile.d.ts +0 -28
- package/dist/src/core/dev-profile.js +0 -58
- package/dist/src/core/diff-hunks.d.ts +0 -73
- package/dist/src/core/diff-hunks.js +0 -286
- package/dist/src/core/discard-baseline.d.ts +0 -60
- package/dist/src/core/discard-baseline.js +0 -247
- package/dist/src/core/display-state.d.ts +0 -50
- package/dist/src/core/display-state.js +0 -87
- package/dist/src/core/engine-changes.d.ts +0 -40
- package/dist/src/core/engine-changes.js +0 -95
- package/dist/src/core/engine-precondition.d.ts +0 -42
- package/dist/src/core/engine-precondition.js +0 -60
- package/dist/src/core/engine-session-lock.d.ts +0 -119
- package/dist/src/core/engine-session-lock.js +0 -374
- package/dist/src/core/engine-write-boundary.d.ts +0 -5
- package/dist/src/core/engine-write-boundary.js +0 -41
- package/dist/src/core/export-moved-code-shape.d.ts +0 -98
- package/dist/src/core/export-moved-code-shape.js +0 -220
- package/dist/src/core/file-lock-owner.d.ts +0 -103
- package/dist/src/core/file-lock-owner.js +0 -259
- package/dist/src/core/file-lock-queue.d.ts +0 -67
- package/dist/src/core/file-lock-queue.js +0 -219
- package/dist/src/core/file-lock-shared.d.ts +0 -57
- package/dist/src/core/file-lock-shared.js +0 -117
- package/dist/src/core/file-lock.d.ts +0 -143
- package/dist/src/core/file-lock.js +0 -531
- package/dist/src/core/firefox-archive.d.ts +0 -45
- package/dist/src/core/firefox-archive.js +0 -96
- package/dist/src/core/firefox-cache.d.ts +0 -30
- package/dist/src/core/firefox-cache.js +0 -248
- package/dist/src/core/firefox-download.d.ts +0 -30
- package/dist/src/core/firefox-download.js +0 -152
- package/dist/src/core/firefox-extract.d.ts +0 -42
- package/dist/src/core/firefox-extract.js +0 -248
- package/dist/src/core/firefox-ignorefile.d.ts +0 -17
- package/dist/src/core/firefox-ignorefile.js +0 -30
- package/dist/src/core/firefox.d.ts +0 -66
- package/dist/src/core/firefox.js +0 -121
- package/dist/src/core/forward-registrations.d.ts +0 -33
- package/dist/src/core/forward-registrations.js +0 -16
- package/dist/src/core/furnace-apply-dry-run.d.ts +0 -12
- package/dist/src/core/furnace-apply-dry-run.js +0 -99
- package/dist/src/core/furnace-apply-ftl.d.ts +0 -49
- package/dist/src/core/furnace-apply-ftl.js +0 -210
- package/dist/src/core/furnace-apply-helpers.d.ts +0 -106
- package/dist/src/core/furnace-apply-helpers.js +0 -436
- package/dist/src/core/furnace-apply-output.d.ts +0 -36
- package/dist/src/core/furnace-apply-output.js +0 -111
- package/dist/src/core/furnace-apply-overwrite-warn.d.ts +0 -67
- package/dist/src/core/furnace-apply-overwrite-warn.js +0 -131
- package/dist/src/core/furnace-apply-undeploy-actions.d.ts +0 -10
- package/dist/src/core/furnace-apply-undeploy-actions.js +0 -48
- package/dist/src/core/furnace-apply.d.ts +0 -49
- package/dist/src/core/furnace-apply.js +0 -465
- package/dist/src/core/furnace-checksum-utils.d.ts +0 -25
- package/dist/src/core/furnace-checksum-utils.js +0 -54
- package/dist/src/core/furnace-composed-source.d.ts +0 -76
- package/dist/src/core/furnace-composed-source.js +0 -167
- package/dist/src/core/furnace-config-array-utils.d.ts +0 -11
- package/dist/src/core/furnace-config-array-utils.js +0 -26
- package/dist/src/core/furnace-config-custom.d.ts +0 -15
- package/dist/src/core/furnace-config-custom.js +0 -73
- package/dist/src/core/furnace-config-order.d.ts +0 -8
- package/dist/src/core/furnace-config-order.js +0 -90
- package/dist/src/core/furnace-config-tokens.d.ts +0 -17
- package/dist/src/core/furnace-config-tokens.js +0 -42
- package/dist/src/core/furnace-config-validate-exceptions.d.ts +0 -17
- package/dist/src/core/furnace-config-validate-exceptions.js +0 -122
- package/dist/src/core/furnace-config-validate.d.ts +0 -32
- package/dist/src/core/furnace-config-validate.js +0 -167
- package/dist/src/core/furnace-config.d.ts +0 -139
- package/dist/src/core/furnace-config.js +0 -511
- package/dist/src/core/furnace-constants.d.ts +0 -81
- package/dist/src/core/furnace-constants.js +0 -125
- package/dist/src/core/furnace-css-fragments.d.ts +0 -96
- package/dist/src/core/furnace-css-fragments.js +0 -279
- package/dist/src/core/furnace-deploy-owner.d.ts +0 -29
- package/dist/src/core/furnace-deploy-owner.js +0 -116
- package/dist/src/core/furnace-dir-entry.d.ts +0 -20
- package/dist/src/core/furnace-dir-entry.js +0 -21
- package/dist/src/core/furnace-fragment-includers.d.ts +0 -56
- package/dist/src/core/furnace-fragment-includers.js +0 -122
- package/dist/src/core/furnace-graph-utils.d.ts +0 -11
- package/dist/src/core/furnace-graph-utils.js +0 -93
- package/dist/src/core/furnace-jsconfig.d.ts +0 -87
- package/dist/src/core/furnace-jsconfig.js +0 -248
- package/dist/src/core/furnace-marker.d.ts +0 -15
- package/dist/src/core/furnace-marker.js +0 -21
- package/dist/src/core/furnace-operation.d.ts +0 -195
- package/dist/src/core/furnace-operation.js +0 -444
- package/dist/src/core/furnace-precondition.d.ts +0 -61
- package/dist/src/core/furnace-precondition.js +0 -67
- package/dist/src/core/furnace-refresh.d.ts +0 -28
- package/dist/src/core/furnace-refresh.js +0 -125
- package/dist/src/core/furnace-registration-ast.d.ts +0 -53
- package/dist/src/core/furnace-registration-ast.js +0 -402
- package/dist/src/core/furnace-registration-jar-inplace.d.ts +0 -12
- package/dist/src/core/furnace-registration-jar-inplace.js +0 -79
- package/dist/src/core/furnace-registration-remove.d.ts +0 -56
- package/dist/src/core/furnace-registration-remove.js +0 -260
- package/dist/src/core/furnace-registration-rename.d.ts +0 -26
- package/dist/src/core/furnace-registration-rename.js +0 -77
- package/dist/src/core/furnace-registration-validate.d.ts +0 -53
- package/dist/src/core/furnace-registration-validate.js +0 -110
- package/dist/src/core/furnace-registration.d.ts +0 -112
- package/dist/src/core/furnace-registration.js +0 -348
- package/dist/src/core/furnace-rollback.d.ts +0 -48
- package/dist/src/core/furnace-rollback.js +0 -170
- package/dist/src/core/furnace-scanner.d.ts +0 -47
- package/dist/src/core/furnace-scanner.js +0 -236
- package/dist/src/core/furnace-stale-export.d.ts +0 -60
- package/dist/src/core/furnace-stale-export.js +0 -125
- package/dist/src/core/furnace-staleness.d.ts +0 -24
- package/dist/src/core/furnace-staleness.js +0 -67
- package/dist/src/core/furnace-state-persist.d.ts +0 -68
- package/dist/src/core/furnace-state-persist.js +0 -116
- package/dist/src/core/furnace-step-errors.d.ts +0 -23
- package/dist/src/core/furnace-step-errors.js +0 -25
- package/dist/src/core/furnace-stories.d.ts +0 -37
- package/dist/src/core/furnace-stories.js +0 -186
- package/dist/src/core/furnace-tag-map.d.ts +0 -47
- package/dist/src/core/furnace-tag-map.js +0 -182
- package/dist/src/core/furnace-validate-accessibility.d.ts +0 -39
- package/dist/src/core/furnace-validate-accessibility.js +0 -417
- package/dist/src/core/furnace-validate-checks.d.ts +0 -4
- package/dist/src/core/furnace-validate-checks.js +0 -6
- package/dist/src/core/furnace-validate-compatibility.d.ts +0 -6
- package/dist/src/core/furnace-validate-compatibility.js +0 -295
- package/dist/src/core/furnace-validate-exceptions.d.ts +0 -49
- package/dist/src/core/furnace-validate-exceptions.js +0 -98
- package/dist/src/core/furnace-validate-helpers.d.ts +0 -7
- package/dist/src/core/furnace-validate-helpers.js +0 -4
- package/dist/src/core/furnace-validate-icon-button.d.ts +0 -7
- package/dist/src/core/furnace-validate-icon-button.js +0 -78
- package/dist/src/core/furnace-validate-registration.d.ts +0 -67
- package/dist/src/core/furnace-validate-registration.js +0 -487
- package/dist/src/core/furnace-validate-structure.d.ts +0 -22
- package/dist/src/core/furnace-validate-structure.js +0 -122
- package/dist/src/core/furnace-validate.d.ts +0 -41
- package/dist/src/core/furnace-validate.js +0 -331
- package/dist/src/core/furnace-version-drift.d.ts +0 -57
- package/dist/src/core/furnace-version-drift.js +0 -102
- package/dist/src/core/gecko-dom-types.d.ts +0 -2
- package/dist/src/core/gecko-dom-types.js +0 -17
- package/dist/src/core/git-base.d.ts +0 -101
- package/dist/src/core/git-base.js +0 -162
- package/dist/src/core/git-diff-new-file.d.ts +0 -40
- package/dist/src/core/git-diff-new-file.js +0 -118
- package/dist/src/core/git-diff.d.ts +0 -82
- package/dist/src/core/git-diff.js +0 -539
- package/dist/src/core/git-file-ops.d.ts +0 -108
- package/dist/src/core/git-file-ops.js +0 -280
- package/dist/src/core/git-readonly-index.d.ts +0 -91
- package/dist/src/core/git-readonly-index.js +0 -177
- package/dist/src/core/git-status.d.ts +0 -84
- package/dist/src/core/git-status.js +0 -208
- package/dist/src/core/git.d.ts +0 -114
- package/dist/src/core/git.js +0 -540
- package/dist/src/core/harness-helper-pids.d.ts +0 -98
- package/dist/src/core/harness-helper-pids.js +0 -240
- package/dist/src/core/harness-orphans.d.ts +0 -118
- package/dist/src/core/harness-orphans.js +0 -268
- package/dist/src/core/harness-port-fallback.d.ts +0 -60
- package/dist/src/core/harness-port-fallback.js +0 -96
- package/dist/src/core/harness-port-reservation.d.ts +0 -60
- package/dist/src/core/harness-port-reservation.js +0 -122
- package/dist/src/core/history-log-file.d.ts +0 -61
- package/dist/src/core/history-log-file.js +0 -164
- package/dist/src/core/history-log.d.ts +0 -20
- package/dist/src/core/history-log.js +0 -30
- package/dist/src/core/json-preserving-edit.d.ts +0 -22
- package/dist/src/core/json-preserving-edit.js +0 -199
- package/dist/src/core/launchable-build.d.ts +0 -39
- package/dist/src/core/launchable-build.js +0 -85
- package/dist/src/core/license-headers.d.ts +0 -103
- package/dist/src/core/license-headers.js +0 -328
- package/dist/src/core/line-prefixer.d.ts +0 -18
- package/dist/src/core/line-prefixer.js +0 -34
- package/dist/src/core/lit-template-regions.d.ts +0 -4
- package/dist/src/core/lit-template-regions.js +0 -50
- package/dist/src/core/mach-build-artifacts.d.ts +0 -176
- package/dist/src/core/mach-build-artifacts.js +0 -436
- package/dist/src/core/mach-error-hints.d.ts +0 -24
- package/dist/src/core/mach-error-hints.js +0 -135
- package/dist/src/core/mach-known-noise-filter.d.ts +0 -122
- package/dist/src/core/mach-known-noise-filter.js +0 -257
- package/dist/src/core/mach-mozconfig.d.ts +0 -57
- package/dist/src/core/mach-mozconfig.js +0 -166
- package/dist/src/core/mach-python.d.ts +0 -19
- package/dist/src/core/mach-python.js +0 -131
- package/dist/src/core/mach-resource-shim.d.ts +0 -107
- package/dist/src/core/mach-resource-shim.js +0 -640
- package/dist/src/core/mach.d.ts +0 -284
- package/dist/src/core/mach.js +0 -445
- package/dist/src/core/marionette-port.d.ts +0 -153
- package/dist/src/core/marionette-port.js +0 -474
- package/dist/src/core/marionette-preflight.d.ts +0 -58
- package/dist/src/core/marionette-preflight.js +0 -332
- package/dist/src/core/markdown-table.d.ts +0 -104
- package/dist/src/core/markdown-table.js +0 -265
- package/dist/src/core/mochitest-server-port.d.ts +0 -81
- package/dist/src/core/mochitest-server-port.js +0 -175
- package/dist/src/core/module-resolution-preflight.d.ts +0 -65
- package/dist/src/core/module-resolution-preflight.js +0 -171
- package/dist/src/core/moz-manifest-helpers.d.ts +0 -79
- package/dist/src/core/moz-manifest-helpers.js +0 -163
- package/dist/src/core/moz-manifest-register.d.ts +0 -19
- package/dist/src/core/moz-manifest-register.js +0 -51
- package/dist/src/core/moz-manifest-rules.d.ts +0 -58
- package/dist/src/core/moz-manifest-rules.js +0 -264
- package/dist/src/core/moz-manifest-tokenizers.d.ts +0 -38
- package/dist/src/core/moz-manifest-tokenizers.js +0 -108
- package/dist/src/core/negative-control-compiled.d.ts +0 -46
- package/dist/src/core/negative-control-compiled.js +0 -109
- package/dist/src/core/negative-control-diff.d.ts +0 -51
- package/dist/src/core/negative-control-diff.js +0 -167
- package/dist/src/core/negative-control.d.ts +0 -150
- package/dist/src/core/negative-control.js +0 -399
- package/dist/src/core/objdir-install-manifests.d.ts +0 -73
- package/dist/src/core/objdir-install-manifests.js +0 -226
- package/dist/src/core/objdir-maintenance.d.ts +0 -10
- package/dist/src/core/objdir-maintenance.js +0 -167
- package/dist/src/core/ownership-table.d.ts +0 -53
- package/dist/src/core/ownership-table.js +0 -159
- package/dist/src/core/parent-exit-watchdog.d.ts +0 -62
- package/dist/src/core/parent-exit-watchdog.js +0 -69
- package/dist/src/core/park-store.d.ts +0 -63
- package/dist/src/core/park-store.js +0 -216
- package/dist/src/core/parser-fallback.d.ts +0 -50
- package/dist/src/core/parser-fallback.js +0 -61
- package/dist/src/core/patch-apply-fuzz.d.ts +0 -57
- package/dist/src/core/patch-apply-fuzz.js +0 -125
- package/dist/src/core/patch-apply.d.ts +0 -88
- package/dist/src/core/patch-apply.js +0 -435
- package/dist/src/core/patch-export-coverage.d.ts +0 -49
- package/dist/src/core/patch-export-coverage.js +0 -73
- package/dist/src/core/patch-export-metadata.d.ts +0 -46
- package/dist/src/core/patch-export-metadata.js +0 -47
- package/dist/src/core/patch-export-update.d.ts +0 -55
- package/dist/src/core/patch-export-update.js +0 -95
- package/dist/src/core/patch-export.d.ts +0 -175
- package/dist/src/core/patch-export.js +0 -312
- package/dist/src/core/patch-files.d.ts +0 -17
- package/dist/src/core/patch-files.js +0 -59
- package/dist/src/core/patch-identifier-suggest.d.ts +0 -26
- package/dist/src/core/patch-identifier-suggest.js +0 -135
- package/dist/src/core/patch-lint-binary.d.ts +0 -45
- package/dist/src/core/patch-lint-binary.js +0 -39
- package/dist/src/core/patch-lint-cache-checkjs.d.ts +0 -45
- package/dist/src/core/patch-lint-cache-checkjs.js +0 -195
- package/dist/src/core/patch-lint-cache.d.ts +0 -79
- package/dist/src/core/patch-lint-cache.js +0 -247
- package/dist/src/core/patch-lint-checkjs-any-import.d.ts +0 -57
- package/dist/src/core/patch-lint-checkjs-any-import.js +0 -91
- package/dist/src/core/patch-lint-checkjs-cache.d.ts +0 -18
- package/dist/src/core/patch-lint-checkjs-cache.js +0 -45
- package/dist/src/core/patch-lint-checkjs-diagnostics.d.ts +0 -17
- package/dist/src/core/patch-lint-checkjs-diagnostics.js +0 -32
- package/dist/src/core/patch-lint-checkjs-resolve.d.ts +0 -31
- package/dist/src/core/patch-lint-checkjs-resolve.js +0 -86
- package/dist/src/core/patch-lint-checkjs.d.ts +0 -182
- package/dist/src/core/patch-lint-checkjs.js +0 -563
- package/dist/src/core/patch-lint-chrome-jsdoc.d.ts +0 -43
- package/dist/src/core/patch-lint-chrome-jsdoc.js +0 -90
- package/dist/src/core/patch-lint-code-lines.d.ts +0 -59
- package/dist/src/core/patch-lint-code-lines.js +0 -105
- package/dist/src/core/patch-lint-creators.d.ts +0 -26
- package/dist/src/core/patch-lint-creators.js +0 -45
- package/dist/src/core/patch-lint-cross.d.ts +0 -232
- package/dist/src/core/patch-lint-cross.js +0 -590
- package/dist/src/core/patch-lint-css.d.ts +0 -27
- package/dist/src/core/patch-lint-css.js +0 -228
- package/dist/src/core/patch-lint-diff-tag.d.ts +0 -51
- package/dist/src/core/patch-lint-diff-tag.js +0 -105
- package/dist/src/core/patch-lint-diff.d.ts +0 -42
- package/dist/src/core/patch-lint-diff.js +0 -100
- package/dist/src/core/patch-lint-file-size.d.ts +0 -57
- package/dist/src/core/patch-lint-file-size.js +0 -62
- package/dist/src/core/patch-lint-forward-registration-extended.d.ts +0 -61
- package/dist/src/core/patch-lint-forward-registration-extended.js +0 -265
- package/dist/src/core/patch-lint-forward-registration.d.ts +0 -71
- package/dist/src/core/patch-lint-forward-registration.js +0 -266
- package/dist/src/core/patch-lint-ignore.d.ts +0 -196
- package/dist/src/core/patch-lint-ignore.js +0 -429
- package/dist/src/core/patch-lint-imports.d.ts +0 -9
- package/dist/src/core/patch-lint-imports.js +0 -90
- package/dist/src/core/patch-lint-jsdoc.d.ts +0 -67
- package/dist/src/core/patch-lint-jsdoc.js +0 -471
- package/dist/src/core/patch-lint-module-registration.d.ts +0 -22
- package/dist/src/core/patch-lint-module-registration.js +0 -97
- package/dist/src/core/patch-lint-mozbuild.d.ts +0 -18
- package/dist/src/core/patch-lint-mozbuild.js +0 -192
- package/dist/src/core/patch-lint-observer.d.ts +0 -37
- package/dist/src/core/patch-lint-observer.js +0 -167
- package/dist/src/core/patch-lint-ownership.d.ts +0 -74
- package/dist/src/core/patch-lint-ownership.js +0 -125
- package/dist/src/core/patch-lint-prettier.d.ts +0 -34
- package/dist/src/core/patch-lint-prettier.js +0 -124
- package/dist/src/core/patch-lint-projection.d.ts +0 -25
- package/dist/src/core/patch-lint-projection.js +0 -43
- package/dist/src/core/patch-lint-queue-types.d.ts +0 -60
- package/dist/src/core/patch-lint-queue-types.js +0 -12
- package/dist/src/core/patch-lint-size-thresholds.d.ts +0 -52
- package/dist/src/core/patch-lint-size-thresholds.js +0 -110
- package/dist/src/core/patch-lint-size.d.ts +0 -117
- package/dist/src/core/patch-lint-size.js +0 -331
- package/dist/src/core/patch-lint-staged-registration.d.ts +0 -98
- package/dist/src/core/patch-lint-staged-registration.js +0 -128
- package/dist/src/core/patch-lint-token-scale.d.ts +0 -65
- package/dist/src/core/patch-lint-token-scale.js +0 -304
- package/dist/src/core/patch-lint-unmanaged-companion.d.ts +0 -106
- package/dist/src/core/patch-lint-unmanaged-companion.js +0 -214
- package/dist/src/core/patch-lint.d.ts +0 -206
- package/dist/src/core/patch-lint.js +0 -533
- package/dist/src/core/patch-lock.d.ts +0 -40
- package/dist/src/core/patch-lock.js +0 -129
- package/dist/src/core/patch-manifest-consistency.d.ts +0 -95
- package/dist/src/core/patch-manifest-consistency.js +0 -256
- package/dist/src/core/patch-manifest-files-affected.d.ts +0 -43
- package/dist/src/core/patch-manifest-files-affected.js +0 -77
- package/dist/src/core/patch-manifest-io.d.ts +0 -199
- package/dist/src/core/patch-manifest-io.js +0 -556
- package/dist/src/core/patch-manifest-key-order.d.ts +0 -23
- package/dist/src/core/patch-manifest-key-order.js +0 -60
- package/dist/src/core/patch-manifest-query.d.ts +0 -55
- package/dist/src/core/patch-manifest-query.js +0 -139
- package/dist/src/core/patch-manifest-resolve.d.ts +0 -21
- package/dist/src/core/patch-manifest-resolve.js +0 -35
- package/dist/src/core/patch-manifest-stage.d.ts +0 -46
- package/dist/src/core/patch-manifest-stage.js +0 -96
- package/dist/src/core/patch-manifest-validate.d.ts +0 -20
- package/dist/src/core/patch-manifest-validate.js +0 -240
- package/dist/src/core/patch-manifest.d.ts +0 -12
- package/dist/src/core/patch-manifest.js +0 -13
- package/dist/src/core/patch-order-legal.d.ts +0 -26
- package/dist/src/core/patch-order-legal.js +0 -88
- package/dist/src/core/patch-parse.d.ts +0 -176
- package/dist/src/core/patch-parse.js +0 -416
- package/dist/src/core/patch-policy-content.d.ts +0 -40
- package/dist/src/core/patch-policy-content.js +0 -219
- package/dist/src/core/patch-policy.d.ts +0 -80
- package/dist/src/core/patch-policy.js +0 -394
- package/dist/src/core/patch-registration-refs.d.ts +0 -41
- package/dist/src/core/patch-registration-refs.js +0 -107
- package/dist/src/core/patch-retired.d.ts +0 -57
- package/dist/src/core/patch-retired.js +0 -92
- package/dist/src/core/patch-source-metadata.d.ts +0 -6
- package/dist/src/core/patch-source-metadata.js +0 -12
- package/dist/src/core/patch-subset.d.ts +0 -18
- package/dist/src/core/patch-subset.js +0 -67
- package/dist/src/core/patch-transform.d.ts +0 -61
- package/dist/src/core/patch-transform.js +0 -198
- package/dist/src/core/preflight-wait.d.ts +0 -22
- package/dist/src/core/preflight-wait.js +0 -62
- package/dist/src/core/process-cpu-time.d.ts +0 -12
- package/dist/src/core/process-cpu-time.js +0 -52
- package/dist/src/core/process-owner.d.ts +0 -9
- package/dist/src/core/process-owner.js +0 -43
- package/dist/src/core/rebase-dry-run.d.ts +0 -48
- package/dist/src/core/rebase-dry-run.js +0 -105
- package/dist/src/core/rebase-from-version.d.ts +0 -46
- package/dist/src/core/rebase-from-version.js +0 -71
- package/dist/src/core/rebase-session.d.ts +0 -100
- package/dist/src/core/rebase-session.js +0 -174
- package/dist/src/core/register-browser-content.d.ts +0 -11
- package/dist/src/core/register-browser-content.js +0 -52
- package/dist/src/core/register-browser-test.d.ts +0 -18
- package/dist/src/core/register-browser-test.js +0 -66
- package/dist/src/core/register-module.d.ts +0 -11
- package/dist/src/core/register-module.js +0 -56
- package/dist/src/core/register-result.d.ts +0 -30
- package/dist/src/core/register-result.js +0 -8
- package/dist/src/core/register-scaffold.d.ts +0 -55
- package/dist/src/core/register-scaffold.js +0 -146
- package/dist/src/core/register-shared-css.d.ts +0 -36
- package/dist/src/core/register-shared-css.js +0 -112
- package/dist/src/core/register-xpcshell-test.d.ts +0 -50
- package/dist/src/core/register-xpcshell-test.js +0 -143
- package/dist/src/core/run-log-redact.d.ts +0 -38
- package/dist/src/core/run-log-redact.js +0 -69
- package/dist/src/core/run-log.d.ts +0 -97
- package/dist/src/core/run-log.js +0 -334
- package/dist/src/core/run-profile.d.ts +0 -57
- package/dist/src/core/run-profile.js +0 -137
- package/dist/src/core/shared-ftl.d.ts +0 -28
- package/dist/src/core/shared-ftl.js +0 -49
- package/dist/src/core/signal-critical.d.ts +0 -38
- package/dist/src/core/signal-critical.js +0 -62
- package/dist/src/core/smoke-patterns.d.ts +0 -81
- package/dist/src/core/smoke-patterns.js +0 -176
- package/dist/src/core/state-file.d.ts +0 -60
- package/dist/src/core/state-file.js +0 -71
- package/dist/src/core/status-binary.d.ts +0 -62
- package/dist/src/core/status-binary.js +0 -133
- package/dist/src/core/status-classify.d.ts +0 -96
- package/dist/src/core/status-classify.js +0 -244
- package/dist/src/core/test-changed-prefs.d.ts +0 -30
- package/dist/src/core/test-changed-prefs.js +0 -93
- package/dist/src/core/test-harness-crash.d.ts +0 -251
- package/dist/src/core/test-harness-crash.js +0 -780
- package/dist/src/core/test-harness-infra.d.ts +0 -32
- package/dist/src/core/test-harness-infra.js +0 -69
- package/dist/src/core/test-harness-output.d.ts +0 -45
- package/dist/src/core/test-harness-output.js +0 -119
- package/dist/src/core/test-harness-signature.d.ts +0 -57
- package/dist/src/core/test-harness-signature.js +0 -35
- package/dist/src/core/test-harness-verdict-notes.d.ts +0 -54
- package/dist/src/core/test-harness-verdict-notes.js +0 -48
- package/dist/src/core/test-host-state.d.ts +0 -14
- package/dist/src/core/test-host-state.js +0 -80
- package/dist/src/core/test-path-scope.d.ts +0 -59
- package/dist/src/core/test-path-scope.js +0 -147
- package/dist/src/core/test-profile-files.d.ts +0 -17
- package/dist/src/core/test-profile-files.js +0 -75
- package/dist/src/core/test-raw-log.d.ts +0 -66
- package/dist/src/core/test-raw-log.js +0 -122
- package/dist/src/core/test-run-completeness.d.ts +0 -97
- package/dist/src/core/test-run-completeness.js +0 -191
- package/dist/src/core/test-stale-check.d.ts +0 -213
- package/dist/src/core/test-stale-check.js +0 -396
- package/dist/src/core/test-stale-exempt.d.ts +0 -40
- package/dist/src/core/test-stale-exempt.js +0 -70
- package/dist/src/core/test-stale-symlink.d.ts +0 -12
- package/dist/src/core/test-stale-symlink.js +0 -39
- package/dist/src/core/test-stall-triage.d.ts +0 -51
- package/dist/src/core/test-stall-triage.js +0 -142
- package/dist/src/core/test-xpcshell-retry.d.ts +0 -35
- package/dist/src/core/test-xpcshell-retry.js +0 -31
- package/dist/src/core/token-category.d.ts +0 -54
- package/dist/src/core/token-category.js +0 -299
- package/dist/src/core/token-coverage.d.ts +0 -12
- package/dist/src/core/token-coverage.js +0 -96
- package/dist/src/core/token-dark-mode.d.ts +0 -64
- package/dist/src/core/token-dark-mode.js +0 -186
- package/dist/src/core/token-docs.d.ts +0 -34
- package/dist/src/core/token-docs.js +0 -102
- package/dist/src/core/token-inventory.d.ts +0 -56
- package/dist/src/core/token-inventory.js +0 -114
- package/dist/src/core/token-lint.d.ts +0 -53
- package/dist/src/core/token-lint.js +0 -131
- package/dist/src/core/token-manager.d.ts +0 -87
- package/dist/src/core/token-manager.js +0 -407
- package/dist/src/core/token-scaffold.d.ts +0 -36
- package/dist/src/core/token-scaffold.js +0 -73
- package/dist/src/core/token-sibling-sheets.d.ts +0 -46
- package/dist/src/core/token-sibling-sheets.js +0 -119
- package/dist/src/core/token-variant.d.ts +0 -90
- package/dist/src/core/token-variant.js +0 -327
- package/dist/src/core/toolchain-preflight.d.ts +0 -90
- package/dist/src/core/toolchain-preflight.js +0 -251
- package/dist/src/core/tree-cow.d.ts +0 -16
- package/dist/src/core/tree-cow.js +0 -71
- package/dist/src/core/tree-guard.d.ts +0 -35
- package/dist/src/core/tree-guard.js +0 -194
- package/dist/src/core/tree-store.d.ts +0 -143
- package/dist/src/core/tree-store.js +0 -478
- package/dist/src/core/typecheck-explain.d.ts +0 -93
- package/dist/src/core/typecheck-explain.js +0 -213
- package/dist/src/core/typecheck-shim.d.ts +0 -90
- package/dist/src/core/typecheck-shim.js +0 -508
- package/dist/src/core/typecheck.d.ts +0 -97
- package/dist/src/core/typecheck.js +0 -457
- package/dist/src/core/wire-destroy.d.ts +0 -25
- package/dist/src/core/wire-destroy.js +0 -126
- package/dist/src/core/wire-dom-fragment.d.ts +0 -44
- package/dist/src/core/wire-dom-fragment.js +0 -139
- package/dist/src/core/wire-init.d.ts +0 -28
- package/dist/src/core/wire-init.js +0 -219
- package/dist/src/core/wire-subscript.d.ts +0 -23
- package/dist/src/core/wire-subscript.js +0 -145
- package/dist/src/core/wire-utils.d.ts +0 -149
- package/dist/src/core/wire-utils.js +0 -338
- package/dist/src/core/xpcshell-appdir.d.ts +0 -157
- package/dist/src/core/xpcshell-appdir.js +0 -299
- package/dist/src/core/xpcshell-profile-dir.d.ts +0 -12
- package/dist/src/core/xpcshell-profile-dir.js +0 -45
- package/dist/src/errors/base.d.ts +0 -217
- package/dist/src/errors/base.js +0 -279
- package/dist/src/errors/build.d.ts +0 -92
- package/dist/src/errors/build.js +0 -166
- package/dist/src/errors/codes.d.ts +0 -74
- package/dist/src/errors/codes.js +0 -74
- package/dist/src/errors/config.d.ts +0 -17
- package/dist/src/errors/config.js +0 -39
- package/dist/src/errors/download.d.ts +0 -66
- package/dist/src/errors/download.js +0 -160
- package/dist/src/errors/furnace.d.ts +0 -20
- package/dist/src/errors/furnace.js +0 -28
- package/dist/src/errors/git.d.ts +0 -65
- package/dist/src/errors/git.js +0 -140
- package/dist/src/errors/patch.d.ts +0 -27
- package/dist/src/errors/patch.js +0 -52
- package/dist/src/errors/rebase.d.ts +0 -42
- package/dist/src/errors/rebase.js +0 -71
- package/dist/src/errors/run.d.ts +0 -16
- package/dist/src/errors/run.js +0 -22
- package/dist/src/index.d.ts +0 -42
- package/dist/src/index.js +0 -32
- package/dist/src/types/cli.d.ts +0 -14
- package/dist/src/types/commands/index.d.ts +0 -6
- package/dist/src/types/commands/index.js +0 -5
- package/dist/src/types/commands/options.d.ts +0 -1372
- package/dist/src/types/commands/options.js +0 -5
- package/dist/src/types/commands/patches.d.ts +0 -352
- package/dist/src/types/commands/patches.js +0 -5
- package/dist/src/types/commands/project.d.ts +0 -51
- package/dist/src/types/commands/project.js +0 -5
- package/dist/src/types/config.d.ts +0 -732
- package/dist/src/types/config.js +0 -15
- package/dist/src/types/furnace.d.ts +0 -422
- package/dist/src/types/furnace.js +0 -26
- package/dist/src/types/index.d.ts +0 -5
- package/dist/src/types/index.js +0 -5
- package/dist/src/types/json.d.ts +0 -22
- package/dist/src/types/json.js +0 -11
- package/dist/src/types/typecheck.d.ts +0 -51
- package/dist/src/types/typecheck.js +0 -14
- package/dist/src/utils/assert.d.ts +0 -34
- package/dist/src/utils/assert.js +0 -61
- package/dist/src/utils/build-info.d.ts +0 -30
- package/dist/src/utils/build-info.js +0 -99
- package/dist/src/utils/child-env.d.ts +0 -28
- package/dist/src/utils/child-env.js +0 -27
- package/dist/src/utils/concurrency.d.ts +0 -8
- package/dist/src/utils/concurrency.js +0 -32
- package/dist/src/utils/elapsed.d.ts +0 -2
- package/dist/src/utils/elapsed.js +0 -23
- package/dist/src/utils/errors.d.ts +0 -39
- package/dist/src/utils/errors.js +0 -67
- package/dist/src/utils/fs.d.ts +0 -113
- package/dist/src/utils/fs.js +0 -337
- package/dist/src/utils/hash.d.ts +0 -12
- package/dist/src/utils/hash.js +0 -16
- package/dist/src/utils/line-dispatch.d.ts +0 -15
- package/dist/src/utils/line-dispatch.js +0 -48
- package/dist/src/utils/logger.d.ts +0 -109
- package/dist/src/utils/logger.js +0 -270
- package/dist/src/utils/machine-output.d.ts +0 -12
- package/dist/src/utils/machine-output.js +0 -33
- package/dist/src/utils/options.d.ts +0 -155
- package/dist/src/utils/options.js +0 -312
- package/dist/src/utils/package-root.d.ts +0 -21
- package/dist/src/utils/package-root.js +0 -70
- package/dist/src/utils/parse.d.ts +0 -117
- package/dist/src/utils/parse.js +0 -214
- package/dist/src/utils/path-glob.d.ts +0 -15
- package/dist/src/utils/path-glob.js +0 -47
- package/dist/src/utils/paths.d.ts +0 -31
- package/dist/src/utils/paths.js +0 -80
- package/dist/src/utils/platform.d.ts +0 -9
- package/dist/src/utils/platform.js +0 -14
- package/dist/src/utils/process-group.d.ts +0 -42
- package/dist/src/utils/process-group.js +0 -190
- package/dist/src/utils/process-input.d.ts +0 -27
- package/dist/src/utils/process-input.js +0 -46
- package/dist/src/utils/process.d.ts +0 -293
- package/dist/src/utils/process.js +0 -593
- package/dist/src/utils/ps-duration.d.ts +0 -31
- package/dist/src/utils/ps-duration.js +0 -70
- package/dist/src/utils/regex.d.ts +0 -39
- package/dist/src/utils/regex.js +0 -109
- package/dist/src/utils/sleep.d.ts +0 -25
- package/dist/src/utils/sleep.js +0 -30
- package/dist/src/utils/stdio-drain.d.ts +0 -28
- package/dist/src/utils/stdio-drain.js +0 -54
- package/dist/src/utils/validation.d.ts +0 -182
- package/dist/src/utils/validation.js +0 -394
- package/docs/lifecycle-invariants.md +0 -523
- package/docs/run-logs.md +0 -122
- package/docs/verification-trees.md +0 -49
- /package/dist/src/{types/cli.js → cli/context.js} +0 -0
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/** Path to customElements.js within the engine source tree */
|
|
3
|
-
export const CUSTOM_ELEMENTS_JS = 'toolkit/content/customElements.js';
|
|
4
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
5
|
-
/** Path to jar.mn within the engine source tree (toolkit global) */
|
|
6
|
-
export const JAR_MN = 'toolkit/content/jar.mn';
|
|
7
|
-
/**
|
|
8
|
-
* Upstream home of the MozLitElement widget sources.
|
|
9
|
-
*
|
|
10
|
-
* The trailing slash is not included: `build-audit-transforms.ts` needs
|
|
11
|
-
* `${WIDGETS_DIR}/` and its ordered prefix table depends on that slash, so
|
|
12
|
-
* appending it at the one site that wants it keeps the others correct.
|
|
13
|
-
*/
|
|
14
|
-
export const WIDGETS_DIR = 'toolkit/content/widgets';
|
|
15
|
-
/** Chrome URL prefix under which a component's `.mjs` files deploy. */
|
|
16
|
-
export const CHROME_ELEMENTS_URL_PREFIX = 'chrome://global/content/elements/';
|
|
17
|
-
/** Default Fluent localization directory for toolkit global components, relative to engine root */
|
|
18
|
-
export const FTL_DIR = 'toolkit/locales/en-US/toolkit/global';
|
|
19
|
-
/**
|
|
20
|
-
* Engine-relative root every browser-chrome / xpcshell test scaffold lives
|
|
21
|
-
* under, trailing slash included. A `--test-dir` override must stay below
|
|
22
|
-
* it so the `browser/base/moz.build` manifest registration keeps working.
|
|
23
|
-
*/
|
|
24
|
-
export const BROWSER_TEST_SCAFFOLD_ROOT = 'browser/base/content/test/';
|
|
25
|
-
/**
|
|
26
|
-
* Suffix for the per-binary xpcshell scaffold parent directory. Components
|
|
27
|
-
* created with `furnace create --with-tests --xpcshell` land at
|
|
28
|
-
* `browser/base/content/test/<binaryName>${XPCSHELL_TEST_DIR_SUFFIX}/<component>/`.
|
|
29
|
-
* Centralised so `create` / `remove` / `rename` / `validate` all agree on the
|
|
30
|
-
* path template.
|
|
31
|
-
*/
|
|
32
|
-
const XPCSHELL_TEST_DIR_SUFFIX = '-xpcshell';
|
|
33
|
-
/**
|
|
34
|
-
* Returns the engine-relative directory that holds xpcshell scaffolds for
|
|
35
|
-
* a given binary. Matches the form `create-xpcshell.ts` writes and the
|
|
36
|
-
* path `remove.ts` / `rename.ts` / `validate.ts` must clean up.
|
|
37
|
-
*/
|
|
38
|
-
export function xpcshellTestParentDir(binaryName) {
|
|
39
|
-
return `${BROWSER_TEST_SCAFFOLD_ROOT}${binaryName}${XPCSHELL_TEST_DIR_SUFFIX}`;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Resolves the engine-relative directory a browser-chrome scaffold is
|
|
43
|
-
* written to: the `--test-dir` override when given, else
|
|
44
|
-
* `browser/base/content/test/<binaryName>`. The scaffolder and the
|
|
45
|
-
* dry-run / success formatters resolve through this one function, so the
|
|
46
|
-
* printed plan cannot disagree with the files that land on disk.
|
|
47
|
-
*/
|
|
48
|
-
export function resolveBrowserChromeTestDir(binaryName, override) {
|
|
49
|
-
return override ?? `${BROWSER_TEST_SCAFFOLD_ROOT}${binaryName}`;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Resolves the engine-relative directory an xpcshell scaffold is written
|
|
53
|
-
* to. A `--test-dir` override names the final directory (no per-component
|
|
54
|
-
* segment is appended). The default is
|
|
55
|
-
* `browser/base/content/test/<binaryName>-xpcshell/<componentName>`.
|
|
56
|
-
*/
|
|
57
|
-
export function resolveXpcshellTestDir(binaryName, componentName, override) {
|
|
58
|
-
return override ?? `${xpcshellTestParentDir(binaryName)}/${componentName}`;
|
|
59
|
-
}
|
|
60
|
-
/** File extensions that constitute a Furnace component's source files. */
|
|
61
|
-
const COMPONENT_FILE_EXTENSIONS = ['.mjs', '.css', '.ftl'];
|
|
62
|
-
/** Returns true when `fileName` has one of the standard component file extensions. */
|
|
63
|
-
export function isComponentSourceFile(fileName) {
|
|
64
|
-
return COMPONENT_FILE_EXTENSIONS.some((ext) => fileName.endsWith(ext));
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Resolves the FTL base path, preferring the user-configured value from
|
|
68
|
-
* `furnace.json` over the built-in default.
|
|
69
|
-
*/
|
|
70
|
-
export function resolveFtlDir(configuredPath) {
|
|
71
|
-
return configuredPath ?? FTL_DIR;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Resolves the chrome sub-path that `document.l10n` / `insertFTLIfNeeded`
|
|
75
|
-
* expects for a given `ftlBasePath`. Strips the mandatory `locales/<LOCALE>/`
|
|
76
|
-
* segment. For the default `toolkit/locales/en-US/toolkit/global` this yields
|
|
77
|
-
* `toolkit/global`.
|
|
78
|
-
*
|
|
79
|
-
* Returns `undefined` when no `locales/<LOCALE>/` segment is present. Callers
|
|
80
|
-
* must treat that as "cannot confidently locate the locale jar.mn entry" and
|
|
81
|
-
* degrade gracefully rather than inventing a path.
|
|
82
|
-
*/
|
|
83
|
-
export function resolveFtlChromeSubPath(ftlBasePath) {
|
|
84
|
-
const path = normalizePathSlashes(ftlBasePath ?? FTL_DIR);
|
|
85
|
-
const match = /^(.*?)\/locales\/[^/]+\/(.+?)\/?$/.exec(path);
|
|
86
|
-
if (!match?.[2])
|
|
87
|
-
return undefined;
|
|
88
|
-
return match[2];
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Returns the engine-relative locale jar.mn that owns the FTL tree for a
|
|
92
|
-
* given `ftlBasePath`. For the default toolkit tree this yields
|
|
93
|
-
* `toolkit/locales/jar.mn`.
|
|
94
|
-
*
|
|
95
|
-
* Returns `undefined` when the path does not contain a `locales/` segment.
|
|
96
|
-
* Callers must treat that as "cannot locate" and degrade gracefully.
|
|
97
|
-
*/
|
|
98
|
-
export function resolveFtlLocaleJarMnPath(ftlBasePath) {
|
|
99
|
-
const path = normalizePathSlashes(ftlBasePath ?? FTL_DIR);
|
|
100
|
-
const match = /^(.*?)\/locales\/[^/]+\//.exec(path);
|
|
101
|
-
if (!match?.[1])
|
|
102
|
-
return undefined;
|
|
103
|
-
return `${match[1]}/locales/jar.mn`;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Converts a kebab-case tag name to PascalCase class name.
|
|
107
|
-
* e.g. "moz-sidebar-panel" → "MozSidebarPanel"
|
|
108
|
-
*/
|
|
109
|
-
export function tagNameToClassName(tagName) {
|
|
110
|
-
return tagName
|
|
111
|
-
.split('-')
|
|
112
|
-
.map((s) => s.charAt(0).toUpperCase() + s.slice(1))
|
|
113
|
-
.join('');
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Strips a known component prefix from a tag name to produce a concise
|
|
117
|
-
* display name. Falls back to the full tag name when the prefix doesn't
|
|
118
|
-
* match, so callers never receive an empty string.
|
|
119
|
-
*/
|
|
120
|
-
export function stripComponentPrefix(tagName, componentPrefix) {
|
|
121
|
-
if (componentPrefix && tagName.startsWith(componentPrefix)) {
|
|
122
|
-
return tagName.slice(componentPrefix.length);
|
|
123
|
-
}
|
|
124
|
-
return tagName;
|
|
125
|
-
}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared CSS fragments for Furnace widgets.
|
|
3
|
-
*
|
|
4
|
-
* Shadow-DOM isolation forces each widget stylesheet to carry its own copy
|
|
5
|
-
* of genuinely shared CSS (keyframes, resets), and hand-syncing those copies
|
|
6
|
-
* drifts. Instead, a workspace stylesheet declares an include directive
|
|
7
|
-
* (a CSS block comment on its own line):
|
|
8
|
-
*
|
|
9
|
-
* @fireforge-include shared-anims.css
|
|
10
|
-
*
|
|
11
|
-
* naming a fragment file in `components/shared/`. `furnace deploy` expands
|
|
12
|
-
* the fragment into the *deployed* copy only (the workspace source stays
|
|
13
|
-
* DRY), fencing the expansion between the directive line and a matching
|
|
14
|
-
* `@fireforge-end-include` marker so re-deploys can refresh it idempotently.
|
|
15
|
-
*
|
|
16
|
-
* Drift contract: the apply fast-path and `furnace validate` compare the
|
|
17
|
-
* *expanded* workspace source against the engine copy, so editing a fragment
|
|
18
|
-
* surfaces as ordinary component drift and the next deploy refreshes every
|
|
19
|
-
* consuming widget.
|
|
20
|
-
*/
|
|
21
|
-
import type { ValidationIssue } from '../types/furnace.js';
|
|
22
|
-
export { SHARED_FRAGMENTS_DIR } from './furnace-config.js';
|
|
23
|
-
/**
|
|
24
|
-
* Reads a shared fragment as the exact body an expansion inlines: the
|
|
25
|
-
* trailing newline is dropped so the fenced block ends on the end marker.
|
|
26
|
-
* One definition, so every consumer (expansion, validation, the stale
|
|
27
|
-
* includer probe) compares the same bytes.
|
|
28
|
-
*/
|
|
29
|
-
export declare function readFragmentSource(sharedDir: string, name: string): Promise<string>;
|
|
30
|
-
/** Returns the fragment names referenced by `@fireforge-include` directives. */
|
|
31
|
-
export declare function listFragmentIncludes(css: string): string[];
|
|
32
|
-
/**
|
|
33
|
-
* Collapses fenced fragment expansions back to their bare directives.
|
|
34
|
-
* Inverse of {@link expandCssFragments}. Used to compare a deployed file
|
|
35
|
-
* against its workspace source and to re-expand idempotently.
|
|
36
|
-
*/
|
|
37
|
-
export declare function stripExpandedFragments(css: string): string;
|
|
38
|
-
/**
|
|
39
|
-
* Marks the lines of a stylesheet that belong to a fenced fragment
|
|
40
|
-
* expansion: the directive, the inlined body and the end marker. Index `i`
|
|
41
|
-
* is line `i + 1` of `css`. Fences are found exactly as
|
|
42
|
-
* {@link stripExpandedFragments} finds them, so a bare directive or an
|
|
43
|
-
* unterminated fence marks nothing. The patch-size metric reads this
|
|
44
|
-
* off a file's post-image, because a hunk can start inside a span and
|
|
45
|
-
* carry no directive of its own.
|
|
46
|
-
*/
|
|
47
|
-
export declare function expandedFragmentLineMask(css: string): boolean[];
|
|
48
|
-
/**
|
|
49
|
-
* Expands every `@fireforge-include` directive in `css` with the current
|
|
50
|
-
* content of its fragment file from `sharedDir`, fencing each expansion
|
|
51
|
-
* with an end marker. Existing expansions are stripped first, so the
|
|
52
|
-
* operation is idempotent and refreshes stale content.
|
|
53
|
-
*
|
|
54
|
-
* @param css - Stylesheet source (workspace or previously expanded)
|
|
55
|
-
* @param sharedDir - Absolute path to the shared fragments directory
|
|
56
|
-
* @returns Expanded stylesheet and the fragment names it consumed
|
|
57
|
-
* @throws FurnaceError when a fragment is missing or itself contains an
|
|
58
|
-
* include directive (nesting is not supported)
|
|
59
|
-
*/
|
|
60
|
-
export declare function expandCssFragments(css: string, sharedDir: string): Promise<{
|
|
61
|
-
expanded: string;
|
|
62
|
-
includes: string[];
|
|
63
|
-
}>;
|
|
64
|
-
/**
|
|
65
|
-
* Extracts the fenced expansion bodies of a previously expanded stylesheet,
|
|
66
|
-
* keyed by fragment name. Used by validate to compare a deployed expansion
|
|
67
|
-
* against the current fragment source without re-deploying.
|
|
68
|
-
*/
|
|
69
|
-
export declare function extractExpandedFragmentBodies(css: string): Map<string, string>;
|
|
70
|
-
/**
|
|
71
|
-
* Deploys one component file: CSS sources carrying include directives are
|
|
72
|
-
* written as their fragment-expanded form. Everything else is a plain
|
|
73
|
-
* copy. Extracted here so `applyCustomComponent` stays inside the
|
|
74
|
-
* per-file line budget.
|
|
75
|
-
*
|
|
76
|
-
* @returns True when fragment expansion was applied
|
|
77
|
-
*/
|
|
78
|
-
export declare function deployFileWithFragments(src: string, dest: string, sharedDir: string): Promise<boolean>;
|
|
79
|
-
/**
|
|
80
|
-
* Builds the dry-run description suffix for a component file copy,
|
|
81
|
-
* naming the fragments an expansion would inline. Empty for plain copies.
|
|
82
|
-
*/
|
|
83
|
-
export declare function describeFragmentExpansion(src: string): Promise<string>;
|
|
84
|
-
/**
|
|
85
|
-
* Validates fragment usage for one custom component: every directive must
|
|
86
|
-
* name an existing fragment (`missing-fragment`, error), and a deployed
|
|
87
|
-
* stylesheet's fenced expansion must match the current fragment source
|
|
88
|
-
* (`stale-fragment-expansion`, warning → redeploy refreshes it).
|
|
89
|
-
*
|
|
90
|
-
* @param componentDir - Workspace directory of the component
|
|
91
|
-
* @param tagName - Component tag name for issue attribution
|
|
92
|
-
* @param sharedDir - Shared fragments directory
|
|
93
|
-
* @param engineTargetDir - Deployed directory in the engine. Optional, and
|
|
94
|
-
* pre-deploy validation skips the staleness check.
|
|
95
|
-
*/
|
|
96
|
-
export declare function validateCssFragments(componentDir: string, tagName: string, sharedDir: string, engineTargetDir?: string): Promise<ValidationIssue[]>;
|
|
@@ -1,279 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Shared CSS fragments for Furnace widgets.
|
|
4
|
-
*
|
|
5
|
-
* Shadow-DOM isolation forces each widget stylesheet to carry its own copy
|
|
6
|
-
* of genuinely shared CSS (keyframes, resets), and hand-syncing those copies
|
|
7
|
-
* drifts. Instead, a workspace stylesheet declares an include directive
|
|
8
|
-
* (a CSS block comment on its own line):
|
|
9
|
-
*
|
|
10
|
-
* @fireforge-include shared-anims.css
|
|
11
|
-
*
|
|
12
|
-
* naming a fragment file in `components/shared/`. `furnace deploy` expands
|
|
13
|
-
* the fragment into the *deployed* copy only (the workspace source stays
|
|
14
|
-
* DRY), fencing the expansion between the directive line and a matching
|
|
15
|
-
* `@fireforge-end-include` marker so re-deploys can refresh it idempotently.
|
|
16
|
-
*
|
|
17
|
-
* Drift contract: the apply fast-path and `furnace validate` compare the
|
|
18
|
-
* *expanded* workspace source against the engine copy, so editing a fragment
|
|
19
|
-
* surfaces as ordinary component drift and the next deploy refreshes every
|
|
20
|
-
* consuming widget.
|
|
21
|
-
*/
|
|
22
|
-
import { readdir } from 'node:fs/promises';
|
|
23
|
-
import { join } from 'node:path';
|
|
24
|
-
import { FurnaceError } from '../errors/furnace.js';
|
|
25
|
-
import { copyFile, pathExists, readText, writeText } from '../utils/fs.js';
|
|
26
|
-
export { SHARED_FRAGMENTS_DIR } from './furnace-config.js';
|
|
27
|
-
// Local copy of the directory name for message text. Importing the
|
|
28
|
-
// binding for value use keeps a single source of truth.
|
|
29
|
-
import { SHARED_FRAGMENTS_DIR } from './furnace-config.js';
|
|
30
|
-
const INCLUDE_PATTERN = /^\s*\/\*\s*@fireforge-include\s+([\w./-]+)\s*\*\/\s*$/;
|
|
31
|
-
const END_INCLUDE_PATTERN = /^\s*\/\*\s*@fireforge-end-include\s+([\w./-]+)\s*\*\/\s*$/;
|
|
32
|
-
/**
|
|
33
|
-
* Reads a shared fragment as the exact body an expansion inlines: the
|
|
34
|
-
* trailing newline is dropped so the fenced block ends on the end marker.
|
|
35
|
-
* One definition, so every consumer (expansion, validation, the stale
|
|
36
|
-
* includer probe) compares the same bytes.
|
|
37
|
-
*/
|
|
38
|
-
export async function readFragmentSource(sharedDir, name) {
|
|
39
|
-
return (await readText(join(sharedDir, name))).replace(/\n$/, '');
|
|
40
|
-
}
|
|
41
|
-
/** Returns the fragment names referenced by `@fireforge-include` directives. */
|
|
42
|
-
export function listFragmentIncludes(css) {
|
|
43
|
-
const names = [];
|
|
44
|
-
for (const line of css.split('\n')) {
|
|
45
|
-
const m = INCLUDE_PATTERN.exec(line);
|
|
46
|
-
if (m?.[1] && !names.includes(m[1]))
|
|
47
|
-
names.push(m[1]);
|
|
48
|
-
}
|
|
49
|
-
return names;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Collapses fenced fragment expansions back to their bare directives.
|
|
53
|
-
* Inverse of {@link expandCssFragments}. Used to compare a deployed file
|
|
54
|
-
* against its workspace source and to re-expand idempotently.
|
|
55
|
-
*/
|
|
56
|
-
export function stripExpandedFragments(css) {
|
|
57
|
-
const lines = css.split('\n');
|
|
58
|
-
const out = [];
|
|
59
|
-
for (let i = 0; i < lines.length; i++) {
|
|
60
|
-
const line = lines[i] ?? '';
|
|
61
|
-
out.push(line);
|
|
62
|
-
const inc = INCLUDE_PATTERN.exec(line);
|
|
63
|
-
if (!inc?.[1])
|
|
64
|
-
continue;
|
|
65
|
-
// A bare directive (workspace file) has no fence to strip. Only skip
|
|
66
|
-
// the expansion body when a matching end marker actually follows.
|
|
67
|
-
// Otherwise an unterminated fence would silently eat the rest of the
|
|
68
|
-
// file.
|
|
69
|
-
let endIndex = -1;
|
|
70
|
-
for (let j = i + 1; j < lines.length; j++) {
|
|
71
|
-
if (END_INCLUDE_PATTERN.exec(lines[j] ?? '')?.[1] === inc[1]) {
|
|
72
|
-
endIndex = j;
|
|
73
|
-
break;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
if (endIndex !== -1)
|
|
77
|
-
i = endIndex;
|
|
78
|
-
}
|
|
79
|
-
return out.join('\n');
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Marks the lines of a stylesheet that belong to a fenced fragment
|
|
83
|
-
* expansion: the directive, the inlined body and the end marker. Index `i`
|
|
84
|
-
* is line `i + 1` of `css`. Fences are found exactly as
|
|
85
|
-
* {@link stripExpandedFragments} finds them, so a bare directive or an
|
|
86
|
-
* unterminated fence marks nothing. The patch-size metric reads this
|
|
87
|
-
* off a file's post-image, because a hunk can start inside a span and
|
|
88
|
-
* carry no directive of its own.
|
|
89
|
-
*/
|
|
90
|
-
export function expandedFragmentLineMask(css) {
|
|
91
|
-
const lines = css.split('\n');
|
|
92
|
-
const mask = lines.map(() => false);
|
|
93
|
-
for (let i = 0; i < lines.length; i++) {
|
|
94
|
-
const inc = INCLUDE_PATTERN.exec(lines[i] ?? '');
|
|
95
|
-
if (!inc?.[1])
|
|
96
|
-
continue;
|
|
97
|
-
for (let j = i + 1; j < lines.length; j++) {
|
|
98
|
-
if (END_INCLUDE_PATTERN.exec(lines[j] ?? '')?.[1] !== inc[1])
|
|
99
|
-
continue;
|
|
100
|
-
mask.fill(true, i, j + 1);
|
|
101
|
-
i = j;
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
return mask;
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Expands every `@fireforge-include` directive in `css` with the current
|
|
109
|
-
* content of its fragment file from `sharedDir`, fencing each expansion
|
|
110
|
-
* with an end marker. Existing expansions are stripped first, so the
|
|
111
|
-
* operation is idempotent and refreshes stale content.
|
|
112
|
-
*
|
|
113
|
-
* @param css - Stylesheet source (workspace or previously expanded)
|
|
114
|
-
* @param sharedDir - Absolute path to the shared fragments directory
|
|
115
|
-
* @returns Expanded stylesheet and the fragment names it consumed
|
|
116
|
-
* @throws FurnaceError when a fragment is missing or itself contains an
|
|
117
|
-
* include directive (nesting is not supported)
|
|
118
|
-
*/
|
|
119
|
-
export async function expandCssFragments(css, sharedDir) {
|
|
120
|
-
const stripped = stripExpandedFragments(css);
|
|
121
|
-
const includes = listFragmentIncludes(stripped);
|
|
122
|
-
if (includes.length === 0)
|
|
123
|
-
return { expanded: stripped, includes };
|
|
124
|
-
const fragments = new Map();
|
|
125
|
-
for (const name of includes) {
|
|
126
|
-
const fragmentPath = join(sharedDir, name);
|
|
127
|
-
if (!(await pathExists(fragmentPath))) {
|
|
128
|
-
throw new FurnaceError(`CSS fragment "${name}" not found in components/${SHARED_FRAGMENTS_DIR}/. ` +
|
|
129
|
-
'Create the fragment file or remove the @fireforge-include directive.');
|
|
130
|
-
}
|
|
131
|
-
const content = await readFragmentSource(sharedDir, name);
|
|
132
|
-
if (listFragmentIncludes(content).length > 0) {
|
|
133
|
-
throw new FurnaceError(`CSS fragment "${name}" contains an @fireforge-include directive of its own; ` +
|
|
134
|
-
'nested fragment includes are not supported.');
|
|
135
|
-
}
|
|
136
|
-
fragments.set(name, content);
|
|
137
|
-
}
|
|
138
|
-
const out = [];
|
|
139
|
-
for (const line of stripped.split('\n')) {
|
|
140
|
-
out.push(line);
|
|
141
|
-
const inc = INCLUDE_PATTERN.exec(line);
|
|
142
|
-
if (inc?.[1]) {
|
|
143
|
-
out.push(fragments.get(inc[1]) ?? '');
|
|
144
|
-
out.push(`/* @fireforge-end-include ${inc[1]} */`);
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
return { expanded: out.join('\n'), includes };
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Extracts the fenced expansion bodies of a previously expanded stylesheet,
|
|
151
|
-
* keyed by fragment name. Used by validate to compare a deployed expansion
|
|
152
|
-
* against the current fragment source without re-deploying.
|
|
153
|
-
*/
|
|
154
|
-
export function extractExpandedFragmentBodies(css) {
|
|
155
|
-
const bodies = new Map();
|
|
156
|
-
const lines = css.split('\n');
|
|
157
|
-
let current = null;
|
|
158
|
-
let buffer = [];
|
|
159
|
-
for (const line of lines) {
|
|
160
|
-
if (current !== null) {
|
|
161
|
-
if (END_INCLUDE_PATTERN.exec(line)?.[1] === current) {
|
|
162
|
-
bodies.set(current, buffer.join('\n'));
|
|
163
|
-
current = null;
|
|
164
|
-
buffer = [];
|
|
165
|
-
continue;
|
|
166
|
-
}
|
|
167
|
-
buffer.push(line);
|
|
168
|
-
continue;
|
|
169
|
-
}
|
|
170
|
-
const inc = INCLUDE_PATTERN.exec(line);
|
|
171
|
-
if (inc?.[1]) {
|
|
172
|
-
current = inc[1];
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
return bodies;
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Deploys one component file: CSS sources carrying include directives are
|
|
179
|
-
* written as their fragment-expanded form. Everything else is a plain
|
|
180
|
-
* copy. Extracted here so `applyCustomComponent` stays inside the
|
|
181
|
-
* per-file line budget.
|
|
182
|
-
*
|
|
183
|
-
* @returns True when fragment expansion was applied
|
|
184
|
-
*/
|
|
185
|
-
export async function deployFileWithFragments(src, dest, sharedDir) {
|
|
186
|
-
if (src.endsWith('.css')) {
|
|
187
|
-
const content = await readText(src);
|
|
188
|
-
if (listFragmentIncludes(content).length > 0) {
|
|
189
|
-
const { expanded } = await expandCssFragments(content, sharedDir);
|
|
190
|
-
await writeText(dest, expanded);
|
|
191
|
-
return true;
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
await copyFile(src, dest);
|
|
195
|
-
return false;
|
|
196
|
-
}
|
|
197
|
-
/**
|
|
198
|
-
* Builds the dry-run description suffix for a component file copy,
|
|
199
|
-
* naming the fragments an expansion would inline. Empty for plain copies.
|
|
200
|
-
*/
|
|
201
|
-
export async function describeFragmentExpansion(src) {
|
|
202
|
-
if (!src.endsWith('.css'))
|
|
203
|
-
return '';
|
|
204
|
-
const includes = listFragmentIncludes(await readText(src));
|
|
205
|
-
if (includes.length === 0)
|
|
206
|
-
return '';
|
|
207
|
-
return ` (expanding fragment${includes.length === 1 ? '' : 's'}: ${includes.join(', ')})`;
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* Validates fragment usage for one custom component: every directive must
|
|
211
|
-
* name an existing fragment (`missing-fragment`, error), and a deployed
|
|
212
|
-
* stylesheet's fenced expansion must match the current fragment source
|
|
213
|
-
* (`stale-fragment-expansion`, warning → redeploy refreshes it).
|
|
214
|
-
*
|
|
215
|
-
* @param componentDir - Workspace directory of the component
|
|
216
|
-
* @param tagName - Component tag name for issue attribution
|
|
217
|
-
* @param sharedDir - Shared fragments directory
|
|
218
|
-
* @param engineTargetDir - Deployed directory in the engine. Optional, and
|
|
219
|
-
* pre-deploy validation skips the staleness check.
|
|
220
|
-
*/
|
|
221
|
-
export async function validateCssFragments(componentDir, tagName, sharedDir, engineTargetDir) {
|
|
222
|
-
const issues = [];
|
|
223
|
-
if (!(await pathExists(componentDir)))
|
|
224
|
-
return issues;
|
|
225
|
-
// Graceful degradation like the other validators: an unreadable
|
|
226
|
-
// component directory must not cascade into a validation crash.
|
|
227
|
-
let entries;
|
|
228
|
-
try {
|
|
229
|
-
entries = await readdir(componentDir);
|
|
230
|
-
}
|
|
231
|
-
catch {
|
|
232
|
-
// An unreadable component directory contributes no fragment issues.
|
|
233
|
-
// Return what has been collected so far rather than failing validation.
|
|
234
|
-
return issues;
|
|
235
|
-
}
|
|
236
|
-
for (const fileName of entries) {
|
|
237
|
-
if (!fileName.endsWith('.css'))
|
|
238
|
-
continue;
|
|
239
|
-
const source = await readText(join(componentDir, fileName));
|
|
240
|
-
const includes = listFragmentIncludes(source);
|
|
241
|
-
if (includes.length === 0)
|
|
242
|
-
continue;
|
|
243
|
-
let deployedBodies = null;
|
|
244
|
-
if (engineTargetDir) {
|
|
245
|
-
const destPath = join(engineTargetDir, fileName);
|
|
246
|
-
if (await pathExists(destPath)) {
|
|
247
|
-
deployedBodies = extractExpandedFragmentBodies(await readText(destPath));
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
for (const include of includes) {
|
|
251
|
-
const fragmentPath = join(sharedDir, include);
|
|
252
|
-
if (!(await pathExists(fragmentPath))) {
|
|
253
|
-
issues.push({
|
|
254
|
-
component: tagName,
|
|
255
|
-
severity: 'error',
|
|
256
|
-
check: 'missing-fragment',
|
|
257
|
-
message: `${fileName} includes CSS fragment "${include}", but components/${SHARED_FRAGMENTS_DIR}/${include} does not exist. ` +
|
|
258
|
-
'Create the fragment or remove the @fireforge-include directive.',
|
|
259
|
-
});
|
|
260
|
-
continue;
|
|
261
|
-
}
|
|
262
|
-
if (deployedBodies === null)
|
|
263
|
-
continue;
|
|
264
|
-
const fragmentContent = await readFragmentSource(sharedDir, include);
|
|
265
|
-
const deployed = deployedBodies.get(include);
|
|
266
|
-
if (deployed === undefined || deployed !== fragmentContent) {
|
|
267
|
-
issues.push({
|
|
268
|
-
component: tagName,
|
|
269
|
-
severity: 'warning',
|
|
270
|
-
check: 'stale-fragment-expansion',
|
|
271
|
-
message: deployed === undefined
|
|
272
|
-
? `Deployed ${fileName} has no expansion for fragment "${include}". Run "fireforge furnace deploy ${tagName}".`
|
|
273
|
-
: `Deployed ${fileName} carries a stale expansion of fragment "${include}" — the fragment source changed since the last deploy. Run "fireforge furnace deploy ${tagName}".`,
|
|
274
|
-
});
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
return issues;
|
|
279
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `furnace deploy --owner <patch>`: refuse a deploy that would overwrite a
|
|
3
|
-
* deployed file another patch owns.
|
|
4
|
-
*
|
|
5
|
-
* Deploy copies a whole component folder. Two sessions editing different
|
|
6
|
-
* files of one folder, owned by different patches, cannot deploy apart:
|
|
7
|
-
* the first deploy ships the other's half-done edit into the engine copy
|
|
8
|
-
* its patch owns. Naming the patch being exported lets deploy judge every
|
|
9
|
-
* file it is about to replace before any is written, across every named
|
|
10
|
-
* component, and refuse when one belongs to a patch other than the named
|
|
11
|
-
* one. Without `--owner` the same overwrites stay advisory warnings.
|
|
12
|
-
*/
|
|
13
|
-
import type { FurnaceConfig } from '../types/furnace.js';
|
|
14
|
-
/**
|
|
15
|
-
* Refuses the deploy when a file it would overwrite is owned by a patch
|
|
16
|
-
* other than `owner`. Runs before any component is applied. A file the
|
|
17
|
-
* owner shares with another patch is the owner's to deploy.
|
|
18
|
-
*
|
|
19
|
-
* @param args.root - Project root
|
|
20
|
-
* @param args.config - Furnace configuration
|
|
21
|
-
* @param args.names - The named components (empty for a deploy of all)
|
|
22
|
-
* @param args.owner - The `--owner` patch identifier
|
|
23
|
-
*/
|
|
24
|
-
export declare function assertDeployOverwritesOwnedBy(args: {
|
|
25
|
-
root: string;
|
|
26
|
-
config: FurnaceConfig;
|
|
27
|
-
names: readonly string[];
|
|
28
|
-
owner: string;
|
|
29
|
-
}): Promise<void>;
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* `furnace deploy --owner <patch>`: refuse a deploy that would overwrite a
|
|
4
|
-
* deployed file another patch owns.
|
|
5
|
-
*
|
|
6
|
-
* Deploy copies a whole component folder. Two sessions editing different
|
|
7
|
-
* files of one folder, owned by different patches, cannot deploy apart:
|
|
8
|
-
* the first deploy ships the other's half-done edit into the engine copy
|
|
9
|
-
* its patch owns. Naming the patch being exported lets deploy judge every
|
|
10
|
-
* file it is about to replace before any is written, across every named
|
|
11
|
-
* component, and refuse when one belongs to a patch other than the named
|
|
12
|
-
* one. Without `--owner` the same overwrites stay advisory warnings.
|
|
13
|
-
*/
|
|
14
|
-
import { join } from 'node:path';
|
|
15
|
-
import { FurnaceError } from '../errors/furnace.js';
|
|
16
|
-
import { pathExists } from '../utils/fs.js';
|
|
17
|
-
import { getProjectPaths } from './config.js';
|
|
18
|
-
import { probePatchOwnedOverwrites, } from './furnace-apply-overwrite-warn.js';
|
|
19
|
-
import { getFurnacePaths } from './furnace-config.js';
|
|
20
|
-
import { resolveFtlDir } from './furnace-constants.js';
|
|
21
|
-
import { formatPatchNotFoundError } from './patch-identifier-suggest.js';
|
|
22
|
-
import { loadPatchesManifest, resolvePatchIdentifier } from './patch-manifest.js';
|
|
23
|
-
import { buildPatchClaims } from './status-classify.js';
|
|
24
|
-
/**
|
|
25
|
-
* Resolves `--owner` to a patch filename in the queue, refusing an unknown
|
|
26
|
-
* patch or a project with no queue.
|
|
27
|
-
*
|
|
28
|
-
* @param root - Project root
|
|
29
|
-
* @param owner - The patch identifier as given (filename, order or name)
|
|
30
|
-
* @returns The owner's filename and the queue's file claims
|
|
31
|
-
*/
|
|
32
|
-
async function resolveOwner(root, owner) {
|
|
33
|
-
const manifest = await loadPatchesManifest(getProjectPaths(root).patches);
|
|
34
|
-
if (!manifest || manifest.patches.length === 0) {
|
|
35
|
-
throw new FurnaceError(`--owner ${owner}: the patch queue is empty or missing.`, owner);
|
|
36
|
-
}
|
|
37
|
-
const match = resolvePatchIdentifier(owner, manifest.patches);
|
|
38
|
-
if (!match) {
|
|
39
|
-
throw new FurnaceError(`--owner: ${formatPatchNotFoundError(owner, manifest.patches)}`, owner);
|
|
40
|
-
}
|
|
41
|
-
return { filename: match.filename, claims: buildPatchClaims(manifest.patches) };
|
|
42
|
-
}
|
|
43
|
-
/** The overrides and custom components a deploy of `names` (all when empty) applies. */
|
|
44
|
-
function componentsInScope(config, names) {
|
|
45
|
-
const all = [...Object.keys(config.overrides), ...Object.keys(config.custom)];
|
|
46
|
-
if (names.length === 0)
|
|
47
|
-
return all;
|
|
48
|
-
return [...new Set(names)].filter((name) => all.includes(name));
|
|
49
|
-
}
|
|
50
|
-
function formatForeignOverwrites(owner, foreign) {
|
|
51
|
-
const lines = foreign.map((entry) => ` - ${entry.file} (${entry.component}): owned by ${entry.owners.join(', ')}`);
|
|
52
|
-
const owners = [...new Set(foreign.flatMap((entry) => entry.owners))].join(', ');
|
|
53
|
-
return [
|
|
54
|
-
`Deploy refused (--owner ${owner}): it would overwrite ${foreign.length} deployed file(s) ` +
|
|
55
|
-
`that differ from the components/ source and are owned by another patch:`,
|
|
56
|
-
...lines,
|
|
57
|
-
`Nothing was written. Those component sources carry edits for ${owners}, not ${owner}. ` +
|
|
58
|
-
'Park that work or export that patch first, then deploy again, or deploy without ' +
|
|
59
|
-
'--owner to overwrite the files anyway.',
|
|
60
|
-
].join('\n');
|
|
61
|
-
}
|
|
62
|
-
/** The patch-owned files one component's apply would overwrite. */
|
|
63
|
-
async function probeComponent(root, config, name, patchClaims) {
|
|
64
|
-
const ftlDir = resolveFtlDir(config.ftlBasePath);
|
|
65
|
-
const override = config.overrides[name];
|
|
66
|
-
if (override !== undefined) {
|
|
67
|
-
const componentDir = join(getFurnacePaths(root).overridesDir, name);
|
|
68
|
-
// A missing override folder copies nothing; apply reports it.
|
|
69
|
-
if (!(await pathExists(componentDir)))
|
|
70
|
-
return [];
|
|
71
|
-
return probePatchOwnedOverwrites({
|
|
72
|
-
type: 'override',
|
|
73
|
-
engineDir: getProjectPaths(root).engine,
|
|
74
|
-
name,
|
|
75
|
-
componentDir,
|
|
76
|
-
config: override,
|
|
77
|
-
ftlDir,
|
|
78
|
-
patchClaims,
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
const custom = config.custom[name];
|
|
82
|
-
if (custom === undefined)
|
|
83
|
-
return [];
|
|
84
|
-
return probePatchOwnedOverwrites({
|
|
85
|
-
type: 'custom',
|
|
86
|
-
root,
|
|
87
|
-
name,
|
|
88
|
-
config: custom,
|
|
89
|
-
ftlDir,
|
|
90
|
-
patchClaims,
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Refuses the deploy when a file it would overwrite is owned by a patch
|
|
95
|
-
* other than `owner`. Runs before any component is applied. A file the
|
|
96
|
-
* owner shares with another patch is the owner's to deploy.
|
|
97
|
-
*
|
|
98
|
-
* @param args.root - Project root
|
|
99
|
-
* @param args.config - Furnace configuration
|
|
100
|
-
* @param args.names - The named components (empty for a deploy of all)
|
|
101
|
-
* @param args.owner - The `--owner` patch identifier
|
|
102
|
-
*/
|
|
103
|
-
export async function assertDeployOverwritesOwnedBy(args) {
|
|
104
|
-
const { root, config, names } = args;
|
|
105
|
-
const { filename, claims } = await resolveOwner(root, args.owner);
|
|
106
|
-
const foreign = [];
|
|
107
|
-
for (const name of componentsInScope(config, names)) {
|
|
108
|
-
const found = await probeComponent(root, config, name, claims);
|
|
109
|
-
foreign.push(...found.filter((entry) => !entry.owners.includes(filename)));
|
|
110
|
-
}
|
|
111
|
-
if (foreign.length > 0) {
|
|
112
|
-
throw new FurnaceError(formatForeignOverwrites(filename, foreign), undefined, undefined, {
|
|
113
|
-
omitValidateAdvice: true,
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The minimal `readdir(..., { withFileTypes: true })` entry shape the furnace
|
|
3
|
-
* apply path needs, plus the single predicate that decides whether an entry is
|
|
4
|
-
* a copy candidate. Kept in its own leaf module so both `furnace-apply-helpers`
|
|
5
|
-
* and its dry-run mirror can share one definition without importing each other.
|
|
6
|
-
*/
|
|
7
|
-
/** Structural subset of `Dirent` used by the furnace apply/dry-run walkers. */
|
|
8
|
-
export interface DirectoryEntry {
|
|
9
|
-
isFile(): boolean;
|
|
10
|
-
isSymbolicLink?(): boolean;
|
|
11
|
-
name: string;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* True for a plain-file directory entry. Symlinks and directories are
|
|
15
|
-
* never copy candidates.
|
|
16
|
-
*
|
|
17
|
-
* @param entry - Directory entry to classify
|
|
18
|
-
* @returns True when the entry is a regular file
|
|
19
|
-
*/
|
|
20
|
-
export declare function isRegularFile(entry: DirectoryEntry): boolean;
|