@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,428 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
import { join } from 'node:path';
|
|
3
|
-
import { loadConfig } from '../core/config.js';
|
|
4
|
-
import { getDiffForFilesAgainstHead } from '../core/git-diff.js';
|
|
5
|
-
import { withPrivateGitIndex } from '../core/git-readonly-index.js';
|
|
6
|
-
import { buildPatchQueueContext, formatPatchLintIssue, lintExportedPatch, lintPatchQueue, measurePatchSize, resolvePatchSizeTier, } from '../core/patch-lint.js';
|
|
7
|
-
import { buildPerPatchLintCacheKey, getCachedPerPatchLintIssues, getPerPatchLintCacheHeadSha, loadPerPatchLintCache, savePerPatchLintCache, setCachedPerPatchLintIssues, } from '../core/patch-lint-cache.js';
|
|
8
|
-
import { buildLintIgnoreChecks, evaluateLintIgnoreCeilings, formatLintIgnoreEntry, isLintIgnoreCeiling, lintIgnoreCacheTokens, removableCeilingIssues, } from '../core/patch-lint-ignore.js';
|
|
9
|
-
import { loadPatchesManifest } from '../core/patch-manifest.js';
|
|
10
|
-
import { evaluatePatchPolicy } from '../core/patch-policy.js';
|
|
11
|
-
import { evaluatePatchPolicyContent } from '../core/patch-policy-content.js';
|
|
12
|
-
import { selectPatchSubset } from '../core/patch-subset.js';
|
|
13
|
-
import { GeneralError } from '../errors/base.js';
|
|
14
|
-
import { mapWithConcurrency } from '../utils/concurrency.js';
|
|
15
|
-
import { pathExists } from '../utils/fs.js';
|
|
16
|
-
import { info, outro, success, warn } from '../utils/logger.js';
|
|
17
|
-
import { buildPerRunCheckJs } from './lint-per-run-checkjs.js';
|
|
18
|
-
import { writePerPatchLintReport } from './lint-report.js';
|
|
19
|
-
function buildPerPatchMaxWarningsMessage(count, maxWarnings, linted) {
|
|
20
|
-
return (`Patch lint found ${count} warning(s) across ${linted} patch(es), exceeding --max-warnings ${maxWarnings}.` +
|
|
21
|
-
' If this is a release gate, run with --per-patch to identify the owning patch. For intentional staged imports, use patch staged-dependency; for ownership repairs, preview patch move-files, patch reorder --dry-run, or re-export --files --dry-run; add scoped lintIgnore only after review.');
|
|
22
|
-
}
|
|
23
|
-
function emitTierNotice(filename, files, tier) {
|
|
24
|
-
const decision = resolvePatchSizeTier(files, tier);
|
|
25
|
-
if (decision.tier !== 'branding')
|
|
26
|
-
return;
|
|
27
|
-
info(decision.source === 'explicit'
|
|
28
|
-
? `${filename}: branding threshold tier applied via patches.json \`tier: "branding"\` opt-in.`
|
|
29
|
-
: `${filename}: branding threshold tier applied (all files under browser/branding/ plus registration siblings).`);
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Lints one queued patch against its own isolated diff, reusing the cache entry
|
|
33
|
-
* when the cache key matches. Returns the outcome and the patch's (unprefixed)
|
|
34
|
-
* issues without touching shared state. The orchestrator applies the tier
|
|
35
|
-
* notice, issue prefixing, and cache write in patch order after the pool
|
|
36
|
-
* drains, so the bounded concurrency cannot reorder output. Returns `skipped`
|
|
37
|
-
* (no files present / empty diff), `cached`, or `linted`.
|
|
38
|
-
*/
|
|
39
|
-
async function lintQueuedPatch(patch, lintCtx) {
|
|
40
|
-
const { projectRoot, paths, config, ctx, cache, engineHeadSha } = lintCtx;
|
|
41
|
-
const present = await mapWithConcurrency(patch.filesAffected, 8, (f) => pathExists(join(paths.engine, f)));
|
|
42
|
-
const existing = patch.filesAffected.filter((_, index) => present[index] === true);
|
|
43
|
-
if (existing.length === 0) {
|
|
44
|
-
return {
|
|
45
|
-
status: 'skipped',
|
|
46
|
-
existingFiles: [],
|
|
47
|
-
rawIssues: [],
|
|
48
|
-
suppressedIssues: [],
|
|
49
|
-
lineCount: 0,
|
|
50
|
-
usedCheckJs: false,
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
const ignore = buildLintIgnoreChecks(patch.lintIgnore);
|
|
54
|
-
let cacheKey;
|
|
55
|
-
if (cache) {
|
|
56
|
-
cacheKey = await buildPerPatchLintCacheKey({
|
|
57
|
-
projectRoot,
|
|
58
|
-
engineDir: paths.engine,
|
|
59
|
-
patchesDir: paths.patches,
|
|
60
|
-
patch,
|
|
61
|
-
existingFiles: existing,
|
|
62
|
-
config,
|
|
63
|
-
queueContext: ctx,
|
|
64
|
-
...(engineHeadSha === undefined ? {} : { engineHeadSha }),
|
|
65
|
-
});
|
|
66
|
-
const cached = getCachedPerPatchLintIssues(cache, patch.filename, cacheKey, lintIgnoreCacheTokens(ignore));
|
|
67
|
-
if (cached) {
|
|
68
|
-
// Returning before the empty-diff probe below is safe: the cache key
|
|
69
|
-
// hashes every affected engine file's content plus engineHeadSha, so
|
|
70
|
-
// an engine-side revert that would empty the diff always changes the
|
|
71
|
-
// key and misses the cache (pinned by the "engine-side content
|
|
72
|
-
// revert invalidates the per-patch cache" test).
|
|
73
|
-
return {
|
|
74
|
-
status: 'cached',
|
|
75
|
-
existingFiles: existing,
|
|
76
|
-
rawIssues: cached.issues,
|
|
77
|
-
suppressedIssues: cached.suppressed,
|
|
78
|
-
lineCount: cached.lineCount,
|
|
79
|
-
usedCheckJs: false,
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
const diff = await getDiffForFilesAgainstHead(paths.engine, existing);
|
|
84
|
-
if (!diff.trim()) {
|
|
85
|
-
return {
|
|
86
|
-
status: 'skipped',
|
|
87
|
-
existingFiles: [],
|
|
88
|
-
rawIssues: [],
|
|
89
|
-
suppressedIssues: [],
|
|
90
|
-
lineCount: 0,
|
|
91
|
-
usedCheckJs: false,
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
// checkJs: instead of rebuilding the program per patch, slice this patch's
|
|
95
|
-
// findings out of the one queue-wide program (built lazily on first miss).
|
|
96
|
-
const suppressedIssues = [];
|
|
97
|
-
const lintOptions = {
|
|
98
|
-
onSuppressed: (suppressed) => suppressedIssues.push(...suppressed),
|
|
99
|
-
};
|
|
100
|
-
let usedCheckJs = false;
|
|
101
|
-
if (lintCtx.checkJs) {
|
|
102
|
-
const grouped = await lintCtx.checkJs.getGrouped();
|
|
103
|
-
usedCheckJs = true;
|
|
104
|
-
const owned = lintCtx.checkJs.ownedByPatch.get(patch.filename);
|
|
105
|
-
const precomputedCheckJs = [];
|
|
106
|
-
if (owned) {
|
|
107
|
-
for (const rel of owned)
|
|
108
|
-
precomputedCheckJs.push(...(grouped.byFile.get(rel) ?? []));
|
|
109
|
-
}
|
|
110
|
-
lintOptions.precomputedCheckJs = precomputedCheckJs;
|
|
111
|
-
}
|
|
112
|
-
// Measured from the working tree, like every other rule here: the files
|
|
113
|
-
// on disk are the would-be export, so a size tier fires mid-edit rather
|
|
114
|
-
// than first at the re-export.
|
|
115
|
-
const patchSize = await measurePatchSize(paths.engine, diff, existing, config);
|
|
116
|
-
const patchIssues = await lintExportedPatch(paths.engine, existing, diff, config, {
|
|
117
|
-
...lintOptions,
|
|
118
|
-
patchSizeMeasurement: patchSize,
|
|
119
|
-
patchQueueCtx: ctx,
|
|
120
|
-
...(ignore ? { ignoreChecks: ignore } : {}),
|
|
121
|
-
...(patch.tier ? { patchTier: patch.tier } : {}),
|
|
122
|
-
});
|
|
123
|
-
const result = {
|
|
124
|
-
status: 'linted',
|
|
125
|
-
existingFiles: existing,
|
|
126
|
-
rawIssues: patchIssues,
|
|
127
|
-
suppressedIssues,
|
|
128
|
-
lineCount: patchSize.lines,
|
|
129
|
-
usedCheckJs,
|
|
130
|
-
};
|
|
131
|
-
if (cache && cacheKey) {
|
|
132
|
-
result.cacheWrite = { key: cacheKey, lintIgnore: lintIgnoreCacheTokens(ignore) };
|
|
133
|
-
}
|
|
134
|
-
return result;
|
|
135
|
-
}
|
|
136
|
-
/** Size-rule check IDs whose waived measurement is still reported. */
|
|
137
|
-
const SUPPRESSED_SIZE_CHECKS = new Set([
|
|
138
|
-
'large-patch-lines',
|
|
139
|
-
'large-patch-files',
|
|
140
|
-
'file-too-large',
|
|
141
|
-
]);
|
|
142
|
-
/**
|
|
143
|
-
* Applies the per-patch results in patch order so the bounded concurrency
|
|
144
|
-
* cannot reorder output: emits each tier notice, the once-only run-level
|
|
145
|
-
* checkJs errors (before the first freshly linted patch's issues), the
|
|
146
|
-
* filename-prefixed issue rows, and the cache writes, all in the same
|
|
147
|
-
* sequence a serial run produced. Returns the run tallies.
|
|
148
|
-
*/
|
|
149
|
-
async function applyPerPatchResults(subset, results, issues, checkJs, cache, heldNotices) {
|
|
150
|
-
const totals = {
|
|
151
|
-
linted: 0,
|
|
152
|
-
skipped: 0,
|
|
153
|
-
cacheDirty: false,
|
|
154
|
-
reusedCacheEntries: 0,
|
|
155
|
-
suppressed: 0,
|
|
156
|
-
};
|
|
157
|
-
let globalCheckJsEmitted = false;
|
|
158
|
-
for (let i = 0; i < subset.length; i++) {
|
|
159
|
-
const patch = subset[i];
|
|
160
|
-
const result = results[i];
|
|
161
|
-
if (!patch || !result)
|
|
162
|
-
continue;
|
|
163
|
-
if (result.status === 'skipped') {
|
|
164
|
-
totals.skipped++;
|
|
165
|
-
continue;
|
|
166
|
-
}
|
|
167
|
-
emitTierNotice(patch.filename, result.existingFiles, patch.tier);
|
|
168
|
-
// Run-level checkJs errors are emitted once, before the first
|
|
169
|
-
// non-skipped patch's own issues, matching the serial emit point.
|
|
170
|
-
// Not gated on `result.usedCheckJs`: global findings are
|
|
171
|
-
// run-level and never cached, so gating drops them entirely on an
|
|
172
|
-
// all-cache-hit run and lets a warm run report fewer errors than a cold
|
|
173
|
-
// one. PerRunCheckJs builds its program lazily, so the cost only
|
|
174
|
-
// materialises when checkJs is configured.
|
|
175
|
-
if (checkJs && !globalCheckJsEmitted) {
|
|
176
|
-
globalCheckJsEmitted = true;
|
|
177
|
-
issues.push(...(await checkJs.getGlobal()));
|
|
178
|
-
}
|
|
179
|
-
if (result.cacheWrite && cache) {
|
|
180
|
-
setCachedPerPatchLintIssues({
|
|
181
|
-
cache,
|
|
182
|
-
patchFilename: patch.filename,
|
|
183
|
-
key: result.cacheWrite.key,
|
|
184
|
-
issues: result.rawIssues,
|
|
185
|
-
suppressed: result.suppressedIssues,
|
|
186
|
-
lineCount: result.lineCount,
|
|
187
|
-
lintIgnore: result.cacheWrite.lintIgnore,
|
|
188
|
-
});
|
|
189
|
-
totals.cacheDirty = true;
|
|
190
|
-
}
|
|
191
|
-
for (const issue of result.rawIssues) {
|
|
192
|
-
issues.push({ ...issue, file: `${patch.filename} :: ${issue.file}` });
|
|
193
|
-
}
|
|
194
|
-
// A ceiling the patch no longer needs is reported as a notice naming
|
|
195
|
-
// the command that drops it.
|
|
196
|
-
issues.push(...removableCeilingIssues(patch.filename, evaluateLintIgnoreCeilings(patch.lintIgnore, [...result.rawIssues, ...result.suppressedIssues], { lines: result.lineCount, files: patch.filesAffected.length })));
|
|
197
|
-
// A waived size finding still reports its measurement: the finding stays
|
|
198
|
-
// suppressed (no exit-code / --max-warnings effect) but the current count
|
|
199
|
-
// is readable from the tool that enforces it, so a waiver's cited size
|
|
200
|
-
// can be calibrated without hand-measuring.
|
|
201
|
-
for (const suppressedIssue of result.suppressedIssues) {
|
|
202
|
-
if (!SUPPRESSED_SIZE_CHECKS.has(suppressedIssue.check))
|
|
203
|
-
continue;
|
|
204
|
-
if (heldNotices !== undefined) {
|
|
205
|
-
heldNotices.push({ check: suppressedIssue.check, patch: patch.filename, suppressed: true });
|
|
206
|
-
continue;
|
|
207
|
-
}
|
|
208
|
-
const ceilings = (patch.lintIgnore ?? []).filter((entry) => isLintIgnoreCeiling(entry) && entry.rule === suppressedIssue.check);
|
|
209
|
-
const ceiling = ceilings.find((entry) => isLintIgnoreCeiling(entry) && entry.share === suppressedIssue.share) ?? ceilings[0];
|
|
210
|
-
const waiver = ceiling === undefined ? 'lintIgnore' : `lintIgnore (${formatLintIgnoreEntry(ceiling)})`;
|
|
211
|
-
info(`NOTICE [${suppressedIssue.check}] ${patch.filename}: suppressed by ${waiver} — ${suppressedIssue.message}`);
|
|
212
|
-
}
|
|
213
|
-
totals.suppressed += result.suppressedIssues.length;
|
|
214
|
-
if (result.status === 'cached')
|
|
215
|
-
totals.reusedCacheEntries++;
|
|
216
|
-
totals.linted++;
|
|
217
|
-
}
|
|
218
|
-
return totals;
|
|
219
|
-
}
|
|
220
|
-
/**
|
|
221
|
-
* Maximum patches linted concurrently. After the per-file→batched git change,
|
|
222
|
-
* each patch is only a handful of git spawns, so a small pool overlaps their
|
|
223
|
-
* I/O without oversubscribing git on the shared repository.
|
|
224
|
-
*/
|
|
225
|
-
const PER_PATCH_LINT_CONCURRENCY = 8;
|
|
226
|
-
/**
|
|
227
|
-
* Lints every patch in `subset` with bounded concurrency, returning results in
|
|
228
|
-
* patch order (each slot index matches `subset`). Mirrors the worker-pool idiom
|
|
229
|
-
* used by the rollback restore path. Side effects are deferred to the caller so
|
|
230
|
-
* issue ordering and cache writes stay deterministic.
|
|
231
|
-
*/
|
|
232
|
-
async function lintSubsetConcurrently(subset, lintCtx) {
|
|
233
|
-
const results = new Array(subset.length);
|
|
234
|
-
let index = 0;
|
|
235
|
-
async function worker() {
|
|
236
|
-
while (index < subset.length) {
|
|
237
|
-
const current = index++;
|
|
238
|
-
const patch = subset[current];
|
|
239
|
-
if (!patch)
|
|
240
|
-
break;
|
|
241
|
-
results[current] = await lintQueuedPatch(patch, lintCtx);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
const workers = Array.from({ length: Math.min(PER_PATCH_LINT_CONCURRENCY, subset.length) }, () => worker());
|
|
245
|
-
await Promise.all(workers);
|
|
246
|
-
return results;
|
|
247
|
-
}
|
|
248
|
-
/**
|
|
249
|
-
* Reporting + exit phase of per-patch lint: renders every issue row,
|
|
250
|
-
* prints the per-patch summary, and applies the failure criteria
|
|
251
|
-
* (errors, `--max-warnings`) by throwing GeneralError.
|
|
252
|
-
*/
|
|
253
|
-
function reportPerPatchOutcome(issues, linted, skipped, options, heldNotices) {
|
|
254
|
-
if (heldNotices !== undefined) {
|
|
255
|
-
reportNoticeSummary(heldNotices, issues);
|
|
256
|
-
}
|
|
257
|
-
if (issues.length === 0) {
|
|
258
|
-
if (linted === 0 && skipped > 0) {
|
|
259
|
-
info(`No patches in the queue have been applied to engine/. Run "fireforge import" first if you want lint findings against the staged hunks; otherwise this is expected.`);
|
|
260
|
-
}
|
|
261
|
-
const summary = skipped > 0
|
|
262
|
-
? `No lint issues found across ${linted} patch(es) (${skipped} skipped — files not present in engine/).`
|
|
263
|
-
: `No lint issues found across ${linted} patch(es).`;
|
|
264
|
-
success(summary);
|
|
265
|
-
outro('Lint passed');
|
|
266
|
-
return;
|
|
267
|
-
}
|
|
268
|
-
const errors = issues.filter((i) => i.severity === 'error');
|
|
269
|
-
const warnings = issues.filter((i) => i.severity === 'warning');
|
|
270
|
-
const notices = issues.filter((i) => i.severity === 'notice');
|
|
271
|
-
if (heldNotices === undefined) {
|
|
272
|
-
for (const issue of notices)
|
|
273
|
-
info(`NOTICE ${formatPatchLintIssue(issue)}`);
|
|
274
|
-
}
|
|
275
|
-
for (const issue of warnings)
|
|
276
|
-
warn(formatPatchLintIssue(issue));
|
|
277
|
-
for (const issue of errors)
|
|
278
|
-
warn(`ERROR ${formatPatchLintIssue(issue)}`);
|
|
279
|
-
info(`\nLint (per-patch over ${linted} patch(es)): ${errors.length} error(s), ${warnings.length} warning(s)`);
|
|
280
|
-
if (errors.length > 0) {
|
|
281
|
-
outro('Lint failed');
|
|
282
|
-
throw new GeneralError(`Patch lint found ${errors.length} error(s) across ${linted} patch(es). Fix these before exporting.`);
|
|
283
|
-
}
|
|
284
|
-
if (options.maxWarnings !== undefined && warnings.length > options.maxWarnings) {
|
|
285
|
-
outro('Lint failed');
|
|
286
|
-
throw new GeneralError(buildPerPatchMaxWarningsMessage(warnings.length, options.maxWarnings, linted));
|
|
287
|
-
}
|
|
288
|
-
if (warnings.length > 0) {
|
|
289
|
-
outro('Lint passed with warnings');
|
|
290
|
-
}
|
|
291
|
-
else if (notices.length > 0) {
|
|
292
|
-
outro('Lint passed with notices');
|
|
293
|
-
}
|
|
294
|
-
else {
|
|
295
|
-
outro('Lint passed');
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
/**
|
|
299
|
-
* `--notices summary`: one line per check instead of one per finding, for
|
|
300
|
-
* a green queue whose hundreds of NOTICE lines are reviewed waivers and
|
|
301
|
-
* under-threshold measurements. The full list stays in `--report`.
|
|
302
|
-
* Errors and warnings are never summarised.
|
|
303
|
-
*/
|
|
304
|
-
function reportNoticeSummary(heldNotices, issues) {
|
|
305
|
-
const byCheck = new Map();
|
|
306
|
-
const tally = (check, patch, suppressed) => {
|
|
307
|
-
const entry = byCheck.get(check) ?? { count: 0, suppressed: 0, patches: new Set() };
|
|
308
|
-
entry.count += 1;
|
|
309
|
-
if (suppressed)
|
|
310
|
-
entry.suppressed += 1;
|
|
311
|
-
entry.patches.add(patch);
|
|
312
|
-
byCheck.set(check, entry);
|
|
313
|
-
};
|
|
314
|
-
for (const held of heldNotices)
|
|
315
|
-
tally(held.check, held.patch, held.suppressed);
|
|
316
|
-
for (const issue of issues) {
|
|
317
|
-
if (issue.severity !== 'notice')
|
|
318
|
-
continue;
|
|
319
|
-
tally(issue.check, issue.patches?.[0] ?? issue.file.split(' :: ')[0] ?? issue.file, false);
|
|
320
|
-
}
|
|
321
|
-
for (const [check, entry] of [...byCheck].sort(([a], [b]) => a.localeCompare(b))) {
|
|
322
|
-
const suppressed = entry.suppressed > 0 ? `, ${entry.suppressed} of them suppressed by lintIgnore` : '';
|
|
323
|
-
info(`NOTICE [${check}]: ${entry.count} across ${entry.patches.size} patch(es)${suppressed} (see --report)`);
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
/** The refusal sentence `selectPatchSubset` adds for a `lint --per-patch` miss. */
|
|
327
|
-
const PER_PATCH_SUBSET_HINT = 'In --per-patch mode, positional arguments and --patches select patches (filename, stem, ' +
|
|
328
|
-
'order number, manifest name, or slug) — not engine files; drop --per-patch to lint engine paths.';
|
|
329
|
-
/**
|
|
330
|
-
* Lints each patch in the queue as its own isolated diff, honouring
|
|
331
|
-
* per-patch `lintIgnore` entries. Cross-patch rules still run once over
|
|
332
|
-
* the whole queue so queue-level findings are not lost by the rescoping.
|
|
333
|
-
* With `options.patches` set, only the named subset is linted (and the
|
|
334
|
-
* queue-level findings are scoped to files those patches touch).
|
|
335
|
-
*/
|
|
336
|
-
export async function lintPerPatch(projectRoot, paths, options = {}) {
|
|
337
|
-
// Read-only to the operator, but an index writer to git: the per-patch diffs
|
|
338
|
-
// run `git diff HEAD` (and, for untracked binaries, a real stage/unstage
|
|
339
|
-
// pair) against the primary checkout. A private index absorbs all of it
|
|
340
|
-
// so a concurrent `fireforge test` still gets an evidential verdict.
|
|
341
|
-
return withPrivateGitIndex(paths.engine, () => lintPerPatchInner(projectRoot, paths, options));
|
|
342
|
-
}
|
|
343
|
-
async function lintPerPatchInner(projectRoot, paths, options = {}) {
|
|
344
|
-
const manifest = await loadPatchesManifest(paths.patches);
|
|
345
|
-
if (!manifest || manifest.patches.length === 0) {
|
|
346
|
-
info('No patches in manifest — nothing to lint per-patch.');
|
|
347
|
-
outro('Nothing to lint');
|
|
348
|
-
return;
|
|
349
|
-
}
|
|
350
|
-
const subset = options.patches && options.patches.length > 0
|
|
351
|
-
? selectPatchSubset(manifest, options.patches, PER_PATCH_SUBSET_HINT)
|
|
352
|
-
: manifest.patches;
|
|
353
|
-
const subsetNames = new Set(subset.map((p) => p.filename));
|
|
354
|
-
const isSubset = subset.length !== manifest.patches.length;
|
|
355
|
-
const config = await loadConfig(projectRoot);
|
|
356
|
-
const ctx = await buildPatchQueueContext(paths.patches, config);
|
|
357
|
-
// Queue-level findings (policy, cross-patch) are scoped to the requested
|
|
358
|
-
// subset: a 5-patch slice should not fail on a policy or forward-import
|
|
359
|
-
// problem owned entirely by patches the operator did not target.
|
|
360
|
-
const subsetTouchedFiles = new Set();
|
|
361
|
-
if (isSubset) {
|
|
362
|
-
for (const entry of ctx.entries) {
|
|
363
|
-
if (!subsetNames.has(entry.filename))
|
|
364
|
-
continue;
|
|
365
|
-
for (const f of entry.newFiles.keys())
|
|
366
|
-
subsetTouchedFiles.add(f);
|
|
367
|
-
for (const f of entry.modifiedFileAdditions.keys())
|
|
368
|
-
subsetTouchedFiles.add(f);
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
const cache = options.noCache === true ? undefined : await loadPerPatchLintCache(projectRoot);
|
|
372
|
-
const engineHeadSha = cache ? await getPerPatchLintCacheHeadSha(paths.engine) : undefined;
|
|
373
|
-
const issues = [];
|
|
374
|
-
const policyIssues = [
|
|
375
|
-
...evaluatePatchPolicy(config, manifest),
|
|
376
|
-
...(await evaluatePatchPolicyContent(config, projectRoot, manifest, ctx.entries)),
|
|
377
|
-
];
|
|
378
|
-
for (const issue of policyIssues) {
|
|
379
|
-
if (isSubset && !subsetNames.has(issue.filename))
|
|
380
|
-
continue;
|
|
381
|
-
issues.push({
|
|
382
|
-
file: issue.filename,
|
|
383
|
-
check: `patch-policy/${issue.code}`,
|
|
384
|
-
message: issue.message,
|
|
385
|
-
severity: issue.severity,
|
|
386
|
-
});
|
|
387
|
-
}
|
|
388
|
-
// With `--patches`, the checkJs program roots at only the subset's owned
|
|
389
|
-
// files. The full queue stays resolvable, so a cold subset run costs the
|
|
390
|
-
// subset's import closure instead of the whole queue.
|
|
391
|
-
const checkJs = buildPerRunCheckJs(projectRoot, paths, config, ctx, isSubset ? subsetNames : undefined);
|
|
392
|
-
// Lint patches concurrently, then apply every side effect in patch order so
|
|
393
|
-
// the issue rows, the run-level checkJs errors, and the saved cache are
|
|
394
|
-
// identical to a serial run.
|
|
395
|
-
const results = await lintSubsetConcurrently(subset, {
|
|
396
|
-
projectRoot,
|
|
397
|
-
paths,
|
|
398
|
-
config,
|
|
399
|
-
ctx,
|
|
400
|
-
cache,
|
|
401
|
-
engineHeadSha,
|
|
402
|
-
checkJs,
|
|
403
|
-
});
|
|
404
|
-
const heldNotices = options.notices === 'summary' ? [] : undefined;
|
|
405
|
-
const { linted, skipped, cacheDirty, reusedCacheEntries, suppressed } = await applyPerPatchResults(subset, results, issues, checkJs, cache, heldNotices);
|
|
406
|
-
const queueIssues = [];
|
|
407
|
-
for (const issue of lintPatchQueue(ctx)) {
|
|
408
|
-
// A finding that names a subset patch stays in scope even when its file
|
|
409
|
-
// is one the patch no longer touches (a stale staged declaration).
|
|
410
|
-
const namesSubset = issue.patches?.some((name) => subsetNames.has(name)) === true;
|
|
411
|
-
if (isSubset && !namesSubset && !subsetTouchedFiles.has(issue.file))
|
|
412
|
-
continue;
|
|
413
|
-
issues.push(issue);
|
|
414
|
-
queueIssues.push(issue);
|
|
415
|
-
}
|
|
416
|
-
if (cache && cacheDirty)
|
|
417
|
-
await savePerPatchLintCache(projectRoot, cache);
|
|
418
|
-
if (reusedCacheEntries > 0) {
|
|
419
|
-
info(`Reused lint cache for ${reusedCacheEntries} patch${reusedCacheEntries === 1 ? '' : 'es'}.`);
|
|
420
|
-
}
|
|
421
|
-
if (suppressed > 0) {
|
|
422
|
-
info(`Suppressed ${suppressed} issue(s) via per-patch lintIgnore.`);
|
|
423
|
-
}
|
|
424
|
-
if (options.report !== undefined) {
|
|
425
|
-
await writePerPatchLintReport(options.report, subset, results, config, queueIssues);
|
|
426
|
-
}
|
|
427
|
-
reportPerPatchOutcome(issues, linted, skipped, options, heldNotices);
|
|
428
|
-
}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Per-run checkJs program controller, shared by `lint --per-patch` and
|
|
3
|
-
* `re-export`.
|
|
4
|
-
*
|
|
5
|
-
* The dominant fixed cost of patch lint is one `ts.createProgram` over the
|
|
6
|
-
* queue's patch-owned `.sys.mjs` files, tens of seconds on a large queue.
|
|
7
|
-
* This controller builds that program at most once per command invocation
|
|
8
|
-
* (lazily, promise-memoised) and lets callers slice per-patch findings out of
|
|
9
|
-
* the grouped result. Three levers keep the cost paid only when it buys
|
|
10
|
-
* something:
|
|
11
|
-
*
|
|
12
|
-
* - Lazy build: nothing is built until the first cache miss asks.
|
|
13
|
-
* - Root scoping (`rootScopePatches`): with `--patches <subset>` the
|
|
14
|
-
* program's roots are only the subset's owned files. The full queue stays
|
|
15
|
-
* resolvable, so cross-patch imports type-check identically while
|
|
16
|
-
* unrelated files are never parsed.
|
|
17
|
-
* - Warm-run probe: run-level ("global") checkJs findings come only from a
|
|
18
|
-
* missing `typescript` package or an unreadable shim, never from the built
|
|
19
|
-
* program, so an all-cache-hit run satisfies "warm never reports less than
|
|
20
|
-
* cold" via `probeCheckJsGlobalIssues` instead of building anything.
|
|
21
|
-
*/
|
|
22
|
-
import { type GroupedCheckJsResult } from '../core/patch-lint-checkjs.js';
|
|
23
|
-
import type { PatchQueueContext } from '../core/patch-lint-cross.js';
|
|
24
|
-
import type { PatchLintIssue } from '../types/commands/index.js';
|
|
25
|
-
import type { FireForgeConfig, ProjectPaths } from '../types/config.js';
|
|
26
|
-
/**
|
|
27
|
-
* Queue-wide checkJs program built once per run and sliced per patch, so a
|
|
28
|
-
* single type regression surfaces once against its owning patch instead of
|
|
29
|
-
* being duplicated for every patch in the queue.
|
|
30
|
-
*/
|
|
31
|
-
export interface PerRunCheckJs {
|
|
32
|
-
/** Patch filename → the checkJs-relevant files that patch creates. */
|
|
33
|
-
ownedByPatch: Map<string, Set<string>>;
|
|
34
|
-
/** Every checkJs-relevant file in the queue (sys + test scripts), the
|
|
35
|
-
* resolution universe the program can see. Callers use it to detect
|
|
36
|
-
* files the hoisted program has never heard of (fresh `--scan`
|
|
37
|
-
* adoptions) and fall back to a per-patch build. */
|
|
38
|
-
resolutionSet: ReadonlySet<string>;
|
|
39
|
-
/** Builds (once, lazily on first cache miss) and returns the grouped run.
|
|
40
|
-
* Promise-memoised so the bounded per-patch pool builds the program exactly
|
|
41
|
-
* once even when several patches reach it concurrently. */
|
|
42
|
-
getGrouped: () => Promise<GroupedCheckJsResult>;
|
|
43
|
-
/** Run-level checkJs errors (e.g. TypeScript missing). When the program
|
|
44
|
-
* was never built (all-warm run) this probes the two global failure
|
|
45
|
-
* sources directly instead of building it, which is safe because the
|
|
46
|
-
* built program never contributes globals of its own. */
|
|
47
|
-
getGlobal: () => Promise<PatchLintIssue[]>;
|
|
48
|
-
/** The byFile slices for `files` (globals are excluded because they
|
|
49
|
-
* are run-level, never cached, and emitted once per invocation via
|
|
50
|
-
* `getGlobal`). Feed to `LintExportedPatchOptions.precomputedCheckJs`. */
|
|
51
|
-
sliceFor: (files: ReadonlySet<string>) => Promise<PatchLintIssue[]>;
|
|
52
|
-
/** True when this file kind participates in the run's checkJs surface
|
|
53
|
-
* (`.sys.mjs`, plus test scripts when `checkJsTestFiles` is on). */
|
|
54
|
-
isRelevant: (file: string) => boolean;
|
|
55
|
-
/** The program's roots under `rootScopePatches`, or undefined for the
|
|
56
|
-
* whole queue. A file outside it is resolvable but never checked. */
|
|
57
|
-
rootScope: ReadonlySet<string> | undefined;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Builds the per-run checkJs program controller when `patchLint.checkJs` is
|
|
61
|
-
* enabled, or returns undefined. With `rootScopePatches` set (the
|
|
62
|
-
* `--patches` subset, by patch filename), the program roots at only the
|
|
63
|
-
* subset's owned files and the test-file pass runs only the subset's own
|
|
64
|
-
* scripts (head.js discovery still spans the queue).
|
|
65
|
-
*/
|
|
66
|
-
export declare function buildPerRunCheckJs(projectRoot: string, paths: ProjectPaths, config: FireForgeConfig, ctx: PatchQueueContext, rootScopePatches?: ReadonlySet<string>): PerRunCheckJs | undefined;
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Per-run checkJs program controller, shared by `lint --per-patch` and
|
|
4
|
-
* `re-export`.
|
|
5
|
-
*
|
|
6
|
-
* The dominant fixed cost of patch lint is one `ts.createProgram` over the
|
|
7
|
-
* queue's patch-owned `.sys.mjs` files, tens of seconds on a large queue.
|
|
8
|
-
* This controller builds that program at most once per command invocation
|
|
9
|
-
* (lazily, promise-memoised) and lets callers slice per-patch findings out of
|
|
10
|
-
* the grouped result. Three levers keep the cost paid only when it buys
|
|
11
|
-
* something:
|
|
12
|
-
*
|
|
13
|
-
* - Lazy build: nothing is built until the first cache miss asks.
|
|
14
|
-
* - Root scoping (`rootScopePatches`): with `--patches <subset>` the
|
|
15
|
-
* program's roots are only the subset's owned files. The full queue stays
|
|
16
|
-
* resolvable, so cross-patch imports type-check identically while
|
|
17
|
-
* unrelated files are never parsed.
|
|
18
|
-
* - Warm-run probe: run-level ("global") checkJs findings come only from a
|
|
19
|
-
* missing `typescript` package or an unreadable shim, never from the built
|
|
20
|
-
* program, so an all-cache-hit run satisfies "warm never reports less than
|
|
21
|
-
* cold" via `probeCheckJsGlobalIssues` instead of building anything.
|
|
22
|
-
*/
|
|
23
|
-
import { invokePatchLintCheckJsGrouped, probeCheckJsGlobalIssues, runCheckJsTestFilesGrouped, } from '../core/patch-lint-checkjs.js';
|
|
24
|
-
import { isTestScriptFile, resolvableModulesForTests, resolvePatchOwnedSysMjs, resolvePatchOwnedTestScripts, } from '../core/patch-lint-ownership.js';
|
|
25
|
-
/**
|
|
26
|
-
* Builds the per-run checkJs program controller when `patchLint.checkJs` is
|
|
27
|
-
* enabled, or returns undefined. With `rootScopePatches` set (the
|
|
28
|
-
* `--patches` subset, by patch filename), the program roots at only the
|
|
29
|
-
* subset's owned files and the test-file pass runs only the subset's own
|
|
30
|
-
* scripts (head.js discovery still spans the queue).
|
|
31
|
-
*/
|
|
32
|
-
export function buildPerRunCheckJs(projectRoot, paths, config, ctx, rootScopePatches) {
|
|
33
|
-
const patchLint = config.patchLint;
|
|
34
|
-
if (!patchLint?.checkJs)
|
|
35
|
-
return undefined;
|
|
36
|
-
const testFilesEnabled = patchLint.checkJsTestFiles === true;
|
|
37
|
-
const ownedByPatch = new Map();
|
|
38
|
-
for (const entry of ctx.entries) {
|
|
39
|
-
const owned = new Set();
|
|
40
|
-
for (const f of entry.newFiles.keys()) {
|
|
41
|
-
if (f.endsWith('.sys.mjs'))
|
|
42
|
-
owned.add(f);
|
|
43
|
-
else if (testFilesEnabled && isTestScriptFile(f))
|
|
44
|
-
owned.add(f);
|
|
45
|
-
}
|
|
46
|
-
if (owned.size > 0)
|
|
47
|
-
ownedByPatch.set(entry.filename, owned);
|
|
48
|
-
}
|
|
49
|
-
const resolutionSet = new Set();
|
|
50
|
-
for (const files of ownedByPatch.values()) {
|
|
51
|
-
for (const f of files)
|
|
52
|
-
resolutionSet.add(f);
|
|
53
|
-
}
|
|
54
|
-
// The subset's owned files, split by program kind. Undefined = full queue.
|
|
55
|
-
let scopedRoots;
|
|
56
|
-
if (rootScopePatches !== undefined) {
|
|
57
|
-
scopedRoots = new Set();
|
|
58
|
-
for (const [patchFilename, files] of ownedByPatch) {
|
|
59
|
-
if (!rootScopePatches.has(patchFilename))
|
|
60
|
-
continue;
|
|
61
|
-
for (const f of files)
|
|
62
|
-
scopedRoots.add(f);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
// One build for the whole run: the queue-wide `.sys.mjs` program, plus
|
|
66
|
-
// (when `patchLint.checkJsTestFiles` is on) one small script-scope
|
|
67
|
-
// program per patch-owned test file, merged by file.
|
|
68
|
-
const buildAll = async () => {
|
|
69
|
-
const sys = await invokePatchLintCheckJsGrouped(paths.engine, resolvePatchOwnedSysMjs(new Set(), ctx), patchLint, projectRoot, scopedRoots);
|
|
70
|
-
if (!testFilesEnabled)
|
|
71
|
-
return sys;
|
|
72
|
-
const tests = await runCheckJsTestFilesGrouped(paths.engine, resolvePatchOwnedTestScripts(new Set(), ctx), patchLint, projectRoot, scopedRoots, resolvableModulesForTests(ctx));
|
|
73
|
-
const byFile = new Map(sys.byFile);
|
|
74
|
-
for (const [rel, list] of tests.byFile) {
|
|
75
|
-
byFile.set(rel, [...(byFile.get(rel) ?? []), ...list]);
|
|
76
|
-
}
|
|
77
|
-
return { byFile, global: [...sys.global, ...tests.global] };
|
|
78
|
-
};
|
|
79
|
-
// Memoise the promise rather than the resolved value: under the bounded pool
|
|
80
|
-
// several patches can reach `getGrouped` before the first build resolves, and
|
|
81
|
-
// `??=` on the promise (a synchronous expression) guarantees a single build.
|
|
82
|
-
let groupedPromise;
|
|
83
|
-
const getGrouped = () => (groupedPromise ??= buildAll());
|
|
84
|
-
return {
|
|
85
|
-
ownedByPatch,
|
|
86
|
-
resolutionSet,
|
|
87
|
-
getGrouped,
|
|
88
|
-
getGlobal: async () => groupedPromise !== undefined
|
|
89
|
-
? (await groupedPromise).global
|
|
90
|
-
: probeCheckJsGlobalIssues(patchLint, projectRoot),
|
|
91
|
-
sliceFor: async (files) => {
|
|
92
|
-
const grouped = await getGrouped();
|
|
93
|
-
const issues = [];
|
|
94
|
-
for (const rel of files) {
|
|
95
|
-
issues.push(...(grouped.byFile.get(rel) ?? []));
|
|
96
|
-
}
|
|
97
|
-
return issues;
|
|
98
|
-
},
|
|
99
|
-
isRelevant: (file) => file.endsWith('.sys.mjs') || (testFilesEnabled && isTestScriptFile(file)),
|
|
100
|
-
rootScope: scopedRoots,
|
|
101
|
-
};
|
|
102
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { PatchLintIssue, PatchMetadata } from '../types/commands/index.js';
|
|
2
|
-
import type { FireForgeConfig } from '../types/config.js';
|
|
3
|
-
/**
|
|
4
|
-
* Structural view of one per-patch lint outcome. Mirrors the relevant
|
|
5
|
-
* fields of lint-per-patch's QueuedPatchResult without importing it:
|
|
6
|
-
* that module imports this one, and a type back-edge would trip the
|
|
7
|
-
* dpdm cycle gate.
|
|
8
|
-
*/
|
|
9
|
-
export interface PerPatchReportResult {
|
|
10
|
-
status: 'skipped' | 'cached' | 'linted';
|
|
11
|
-
existingFiles: string[];
|
|
12
|
-
rawIssues: PatchLintIssue[];
|
|
13
|
-
suppressedIssues: PatchLintIssue[];
|
|
14
|
-
lineCount: number;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Writes the per-patch lint report JSON. Called after the per-patch
|
|
18
|
-
* results are assembled in patch order. Policy findings are
|
|
19
|
-
* patch-attributed by their `filename` field upstream and are not
|
|
20
|
-
* duplicated here. Cross-patch findings (`forward-import`,
|
|
21
|
-
* `forward-registration`, …) go in `queueIssues`, with the
|
|
22
|
-
* `stagedDeclarations` that discharge them, so the report can be handed to
|
|
23
|
-
* `patch staged-dependency --from` as is.
|
|
24
|
-
*/
|
|
25
|
-
export declare function writePerPatchLintReport(reportPath: string, subset: readonly PatchMetadata[], results: readonly PerPatchReportResult[], config: Pick<FireForgeConfig, 'patchLint'>, queueIssues?: readonly PatchLintIssue[]): Promise<void>;
|