@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,196 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `PatchMetadata.lintIgnore` entries and the waiver filter they drive.
|
|
3
|
-
*
|
|
4
|
-
* An entry is either a bare check ID, which suppresses that rule at any
|
|
5
|
-
* size, or a ceiling `{ rule, max, reason }`, which suppresses a size rule
|
|
6
|
-
* only while its measurement is at or below `max`. The bare form lets a
|
|
7
|
-
* waived file grow without bound: nothing re-examines the waiver once it
|
|
8
|
-
* is written, so a 950-line file waived at review time is still waived at
|
|
9
|
-
* 2,000 lines. The ceiling makes growth past the reviewed size fire again,
|
|
10
|
-
* and lets a gate say when the waiver is no longer needed at all.
|
|
11
|
-
*
|
|
12
|
-
* Its own module so every caller that turns a manifest list into a filter
|
|
13
|
-
* (export, re-export, per-patch and aggregate lint, split, move-files)
|
|
14
|
-
* shares one reading of an entry, and so `patch-lint.ts` only calls into it.
|
|
15
|
-
*/
|
|
16
|
-
import type { LintIgnoreCeiling, LintIgnoreEntry, PatchLintIssue, PatchSizeShare } from '../types/commands/index.js';
|
|
17
|
-
/**
|
|
18
|
-
* The size rules whose findings carry a `measurement`, and therefore the
|
|
19
|
-
* only rules a ceiling can bound. A ceiling on any other rule could never
|
|
20
|
-
* suppress anything, so the manifest validator refuses it.
|
|
21
|
-
*/
|
|
22
|
-
export declare const LINT_IGNORE_CEILING_RULES: readonly string[];
|
|
23
|
-
/**
|
|
24
|
-
* A waiver filter: the bare check IDs as a set (so a plain `Set<string>`
|
|
25
|
-
* still satisfies the type), plus the ceilings keyed by {@link ceilingKey}.
|
|
26
|
-
*
|
|
27
|
-
* Bare IDs and ceilings are kept apart on purpose. A caller that only knows
|
|
28
|
-
* `has()` treats a ceiling-waived rule as not waived, which fails closed.
|
|
29
|
-
*/
|
|
30
|
-
export type LintIgnoreChecks = ReadonlySet<string> & {
|
|
31
|
-
readonly ceilings?: ReadonlyMap<string, LintIgnoreCeiling>;
|
|
32
|
-
};
|
|
33
|
-
/** Narrows an entry to the ceiling form. */
|
|
34
|
-
export declare function isLintIgnoreCeiling(entry: LintIgnoreEntry): entry is LintIgnoreCeiling;
|
|
35
|
-
/** The check ID an entry names, whatever its form. */
|
|
36
|
-
export declare function lintIgnoreRule(entry: LintIgnoreEntry): string;
|
|
37
|
-
/**
|
|
38
|
-
* One-word rendering for summaries and dry runs: `file-too-large<=1200`,
|
|
39
|
-
* `large-patch-lines[test]<=900`.
|
|
40
|
-
*/
|
|
41
|
-
export declare function formatLintIgnoreEntry(entry: LintIgnoreEntry): string;
|
|
42
|
-
/** Renders a list for messages, `(empty)` when there is nothing to show. */
|
|
43
|
-
export declare function formatLintIgnoreList(entries: readonly LintIgnoreEntry[]): string;
|
|
44
|
-
/**
|
|
45
|
-
* Validates a raw `lintIgnore` value from `patches.json`.
|
|
46
|
-
*
|
|
47
|
-
* Bare strings keep their historical leniency (any ID, duplicates collapse
|
|
48
|
-
* later). A ceiling must name a measured size rule, carry a positive
|
|
49
|
-
* integer `max` and a non-empty `reason`, and must be the only entry for
|
|
50
|
-
* its rule: a bare ID beside a ceiling for the same rule would make the
|
|
51
|
-
* ceiling dead, and two ceilings would leave the effective one ambiguous.
|
|
52
|
-
* The one exception is `large-patch-lines`, which may carry one ceiling
|
|
53
|
-
* per `share` instead of a single share-less one. `meta` must be a JSON
|
|
54
|
-
* object and is kept verbatim.
|
|
55
|
-
*
|
|
56
|
-
* @param raw - The value under `lintIgnore`
|
|
57
|
-
* @param label - Field label for error messages, e.g. `patches[3].lintIgnore`
|
|
58
|
-
* @returns The validated entries
|
|
59
|
-
* @throws Error naming the offending element
|
|
60
|
-
*/
|
|
61
|
-
export declare function parseLintIgnoreEntries(raw: unknown, label: string): LintIgnoreEntry[];
|
|
62
|
-
/**
|
|
63
|
-
* Builds the waiver filter for a patch's entries.
|
|
64
|
-
*
|
|
65
|
-
* @param entries - `PatchMetadata.lintIgnore`, possibly merged with CLI flags
|
|
66
|
-
* @returns The filter, or undefined when there is nothing to waive
|
|
67
|
-
*/
|
|
68
|
-
export declare function buildLintIgnoreChecks(entries: readonly LintIgnoreEntry[] | undefined): LintIgnoreChecks | undefined;
|
|
69
|
-
/**
|
|
70
|
-
* Canonical string form of a filter for the per-patch lint cache's waiver
|
|
71
|
-
* comparison: bare IDs as themselves, ceilings as `rule<=max`.
|
|
72
|
-
*/
|
|
73
|
-
export declare function lintIgnoreCacheTokens(checks: LintIgnoreChecks | undefined): string[];
|
|
74
|
-
/**
|
|
75
|
-
* Unions CLI-flag check IDs into an existing list, the append-only
|
|
76
|
-
* semantics `export` / `re-export --lint-ignore` have always had. A bare ID
|
|
77
|
-
* whose rule already has an entry (bare or ceiling) is a no-op: widening a
|
|
78
|
-
* reviewed ceiling to an unbounded waiver is `patch lint-ignore`'s job, where
|
|
79
|
-
* it is confirmed explicitly. Ceilings deduplicate by rule and share, so a
|
|
80
|
-
* rule's per-share ceilings all survive.
|
|
81
|
-
*
|
|
82
|
-
* @returns The merged list, or undefined when it is empty
|
|
83
|
-
*/
|
|
84
|
-
export declare function mergeLintIgnoreIds(existing: readonly LintIgnoreEntry[] | undefined, ids: readonly string[] | undefined): LintIgnoreEntry[] | undefined;
|
|
85
|
-
/**
|
|
86
|
-
* Adds or replaces entries, the `patch lint-ignore --add` semantics: an
|
|
87
|
-
* explicit `--add <rule>` turns a rule's ceilings into a bare waiver,
|
|
88
|
-
* `--add <rule> --max <n>` sets or moves the rule's ceiling, and a
|
|
89
|
-
* share-scoped ceiling replaces only its own share (plus any bare or
|
|
90
|
-
* share-less entry for the rule, which it would contradict).
|
|
91
|
-
*
|
|
92
|
-
* @returns The new list, or undefined when it is empty
|
|
93
|
-
*/
|
|
94
|
-
export declare function upsertLintIgnoreEntries(existing: readonly LintIgnoreEntry[], additions: readonly LintIgnoreEntry[]): LintIgnoreEntry[] | undefined;
|
|
95
|
-
/** Removes every entry naming one of `rules`. Undefined when nothing is left. */
|
|
96
|
-
export declare function removeLintIgnoreRules(existing: readonly LintIgnoreEntry[], rules: readonly string[]): LintIgnoreEntry[] | undefined;
|
|
97
|
-
/** Entries present in `after` but not (identically) in `before`. */
|
|
98
|
-
export declare function addedLintIgnoreEntries(before: readonly LintIgnoreEntry[], after: readonly LintIgnoreEntry[]): LintIgnoreEntry[];
|
|
99
|
-
/**
|
|
100
|
-
* Splits issues into the ones that still surface and the ones a waiver
|
|
101
|
-
* drops.
|
|
102
|
-
*
|
|
103
|
-
* A bare ID drops every finding of its rule. A ceiling drops a finding only
|
|
104
|
-
* when it carries a measurement at or below `max`. Past the ceiling the
|
|
105
|
-
* finding surfaces at its own severity with the ceiling named, and a
|
|
106
|
-
* finding with no measurement surfaces too (fail closed).
|
|
107
|
-
*/
|
|
108
|
-
export declare function partitionLintIgnoredIssues(issues: readonly PatchLintIssue[], checks: LintIgnoreChecks | undefined): {
|
|
109
|
-
kept: PatchLintIssue[];
|
|
110
|
-
suppressed: PatchLintIssue[];
|
|
111
|
-
};
|
|
112
|
-
/** True when `checks` waives `issue` (see {@link partitionLintIgnoredIssues}). */
|
|
113
|
-
export declare function isLintIgnored(issue: PatchLintIssue, checks: LintIgnoreChecks | undefined): boolean;
|
|
114
|
-
/**
|
|
115
|
-
* Drops issues that a patch owning `issue.file` (via `filesAffected`)
|
|
116
|
-
* waives. Used where findings carry no patch scope of their own (aggregate
|
|
117
|
-
* `lint`). Each owner keeps its own filter, so a ceiling stays bounded by
|
|
118
|
-
* the patch that declared it instead of merging into a file-wide union; an
|
|
119
|
-
* issue is dropped when any owner waives it.
|
|
120
|
-
*/
|
|
121
|
-
export declare function filterLintIgnoredByOwners(issues: PatchLintIssue[], owners: ReadonlyArray<{
|
|
122
|
-
lintIgnore?: LintIgnoreEntry[];
|
|
123
|
-
filesAffected: readonly string[];
|
|
124
|
-
} | null | undefined>): PatchLintIssue[];
|
|
125
|
-
/** Where a ceiling stands against the patch's current measurements. */
|
|
126
|
-
export type LintIgnoreCeilingState = 'within' | 'exceeded' | 'removable';
|
|
127
|
-
/** One ceiling's standing, as `lint --per-patch --report` records it. */
|
|
128
|
-
export interface LintIgnoreCeilingStatus {
|
|
129
|
-
rule: string;
|
|
130
|
-
max: number;
|
|
131
|
-
reason: string;
|
|
132
|
-
/** The share the ceiling bounds, when it is share-scoped. */
|
|
133
|
-
share?: PatchSizeShare;
|
|
134
|
-
/** The ceiling's `meta`, verbatim, when it has one. */
|
|
135
|
-
meta?: Record<string, unknown>;
|
|
136
|
-
/** Largest current measurement for the rule, null when none was taken. */
|
|
137
|
-
measurement: number | null;
|
|
138
|
-
/**
|
|
139
|
-
* `exceeded`: a warning- or error-band finding measured past `max` and
|
|
140
|
-
* surfaced. A notice never exceeds a ceiling: it gates nothing.
|
|
141
|
-
* `removable`: the rule no longer reaches its own warning band, so the
|
|
142
|
-
* waiver changes no gate and can be dropped.
|
|
143
|
-
* `within`: the waiver is doing its job.
|
|
144
|
-
*/
|
|
145
|
-
state: LintIgnoreCeilingState;
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* One waiver's standing, bare or ceiling, as the report's
|
|
149
|
-
* `lintIgnoreWaivers` records it. A bare waiver has `max: null`; its
|
|
150
|
-
* `state` is `within` while the rule still finds something to suppress at
|
|
151
|
-
* warning band or above, and `removable` otherwise (informational: a bare
|
|
152
|
-
* waiver of a rule this lint does not run reads as removable too).
|
|
153
|
-
*/
|
|
154
|
-
export interface LintIgnoreWaiverStatus {
|
|
155
|
-
kind: 'bare' | 'ceiling';
|
|
156
|
-
rule: string;
|
|
157
|
-
max: number | null;
|
|
158
|
-
reason: string | null;
|
|
159
|
-
share?: PatchSizeShare;
|
|
160
|
-
meta?: Record<string, unknown>;
|
|
161
|
-
measurement: number | null;
|
|
162
|
-
state: LintIgnoreCeilingState;
|
|
163
|
-
}
|
|
164
|
-
/** Patch-level measurements a size rule falls back to when it did not fire. */
|
|
165
|
-
interface PatchMeasurements {
|
|
166
|
-
lines: number;
|
|
167
|
-
files: number;
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
|
-
* Evaluates each ceiling on a patch against the findings its lint produced
|
|
171
|
-
* (both surfaced and suppressed).
|
|
172
|
-
*
|
|
173
|
-
* @param entries - The patch's `lintIgnore`
|
|
174
|
-
* @param issues - Every finding of the patch's lint, surfaced and suppressed
|
|
175
|
-
* @param patchMeasurements - Patch-level measurements used when a
|
|
176
|
-
* patch-size rule did not fire at all, so the report still shows the
|
|
177
|
-
* current number
|
|
178
|
-
*/
|
|
179
|
-
export declare function evaluateLintIgnoreCeilings(entries: readonly LintIgnoreEntry[] | undefined, issues: readonly PatchLintIssue[], patchMeasurements: PatchMeasurements): LintIgnoreCeilingStatus[];
|
|
180
|
-
/**
|
|
181
|
-
* Evaluates every waiver on a patch, bare IDs included, so a waiver audit
|
|
182
|
-
* reads each one's current measurement from the report instead of
|
|
183
|
-
* re-measuring bare waivers from `suppressedIssues`.
|
|
184
|
-
*
|
|
185
|
-
* @param entries - The patch's `lintIgnore`
|
|
186
|
-
* @param issues - Every finding of the patch's lint, surfaced and suppressed
|
|
187
|
-
* @param patchMeasurements - See {@link evaluateLintIgnoreCeilings}
|
|
188
|
-
*/
|
|
189
|
-
export declare function evaluateLintIgnoreWaivers(entries: readonly LintIgnoreEntry[] | undefined, issues: readonly PatchLintIssue[], patchMeasurements: PatchMeasurements): LintIgnoreWaiverStatus[];
|
|
190
|
-
/**
|
|
191
|
-
* Notice-severity findings for ceilings that are no longer needed, so the
|
|
192
|
-
* waiver's removal is prompted by the tool that enforces it rather than
|
|
193
|
-
* discovered by hand.
|
|
194
|
-
*/
|
|
195
|
-
export declare function removableCeilingIssues(patchFilename: string, statuses: readonly LintIgnoreCeilingStatus[]): PatchLintIssue[];
|
|
196
|
-
export {};
|
|
@@ -1,429 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* `PatchMetadata.lintIgnore` entries and the waiver filter they drive.
|
|
4
|
-
*
|
|
5
|
-
* An entry is either a bare check ID, which suppresses that rule at any
|
|
6
|
-
* size, or a ceiling `{ rule, max, reason }`, which suppresses a size rule
|
|
7
|
-
* only while its measurement is at or below `max`. The bare form lets a
|
|
8
|
-
* waived file grow without bound: nothing re-examines the waiver once it
|
|
9
|
-
* is written, so a 950-line file waived at review time is still waived at
|
|
10
|
-
* 2,000 lines. The ceiling makes growth past the reviewed size fire again,
|
|
11
|
-
* and lets a gate say when the waiver is no longer needed at all.
|
|
12
|
-
*
|
|
13
|
-
* Its own module so every caller that turns a manifest list into a filter
|
|
14
|
-
* (export, re-export, per-patch and aggregate lint, split, move-files)
|
|
15
|
-
* shares one reading of an entry, and so `patch-lint.ts` only calls into it.
|
|
16
|
-
*/
|
|
17
|
-
/**
|
|
18
|
-
* The size rules whose findings carry a `measurement`, and therefore the
|
|
19
|
-
* only rules a ceiling can bound. A ceiling on any other rule could never
|
|
20
|
-
* suppress anything, so the manifest validator refuses it.
|
|
21
|
-
*/
|
|
22
|
-
export const LINT_IGNORE_CEILING_RULES = [
|
|
23
|
-
'file-too-large',
|
|
24
|
-
'large-patch-lines',
|
|
25
|
-
'large-patch-files',
|
|
26
|
-
];
|
|
27
|
-
/** The only rule whose findings carry a {@link PatchSizeShare}. */
|
|
28
|
-
const SHARE_RULE = 'large-patch-lines';
|
|
29
|
-
const SHARES = ['product', 'test'];
|
|
30
|
-
/**
|
|
31
|
-
* The key a ceiling is stored under: the rule, plus `#<share>` for a
|
|
32
|
-
* share-scoped ceiling, so one rule can carry a ceiling per share.
|
|
33
|
-
*/
|
|
34
|
-
function ceilingKey(rule, share) {
|
|
35
|
-
return share === undefined ? rule : `${rule}#${share}`;
|
|
36
|
-
}
|
|
37
|
-
/** Narrows an entry to the ceiling form. */
|
|
38
|
-
export function isLintIgnoreCeiling(entry) {
|
|
39
|
-
return typeof entry !== 'string';
|
|
40
|
-
}
|
|
41
|
-
/** The check ID an entry names, whatever its form. */
|
|
42
|
-
export function lintIgnoreRule(entry) {
|
|
43
|
-
return isLintIgnoreCeiling(entry) ? entry.rule : entry;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* One-word rendering for summaries and dry runs: `file-too-large<=1200`,
|
|
47
|
-
* `large-patch-lines[test]<=900`.
|
|
48
|
-
*/
|
|
49
|
-
export function formatLintIgnoreEntry(entry) {
|
|
50
|
-
if (!isLintIgnoreCeiling(entry))
|
|
51
|
-
return entry;
|
|
52
|
-
const share = entry.share === undefined ? '' : `[${entry.share}]`;
|
|
53
|
-
return `${entry.rule}${share}<=${String(entry.max)}`;
|
|
54
|
-
}
|
|
55
|
-
/** The identity an entry is upserted and deduplicated by. */
|
|
56
|
-
function entryKey(entry) {
|
|
57
|
-
return isLintIgnoreCeiling(entry) ? ceilingKey(entry.rule, entry.share) : entry;
|
|
58
|
-
}
|
|
59
|
-
/** Renders a list for messages, `(empty)` when there is nothing to show. */
|
|
60
|
-
export function formatLintIgnoreList(entries) {
|
|
61
|
-
return entries.length > 0 ? entries.map(formatLintIgnoreEntry).join(', ') : '(empty)';
|
|
62
|
-
}
|
|
63
|
-
function sameEntry(a, b) {
|
|
64
|
-
if (!isLintIgnoreCeiling(a) || !isLintIgnoreCeiling(b))
|
|
65
|
-
return a === b;
|
|
66
|
-
return (a.rule === b.rule &&
|
|
67
|
-
a.max === b.max &&
|
|
68
|
-
a.reason === b.reason &&
|
|
69
|
-
a.share === b.share &&
|
|
70
|
-
JSON.stringify(a.meta) === JSON.stringify(b.meta));
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Validates a raw `lintIgnore` value from `patches.json`.
|
|
74
|
-
*
|
|
75
|
-
* Bare strings keep their historical leniency (any ID, duplicates collapse
|
|
76
|
-
* later). A ceiling must name a measured size rule, carry a positive
|
|
77
|
-
* integer `max` and a non-empty `reason`, and must be the only entry for
|
|
78
|
-
* its rule: a bare ID beside a ceiling for the same rule would make the
|
|
79
|
-
* ceiling dead, and two ceilings would leave the effective one ambiguous.
|
|
80
|
-
* The one exception is `large-patch-lines`, which may carry one ceiling
|
|
81
|
-
* per `share` instead of a single share-less one. `meta` must be a JSON
|
|
82
|
-
* object and is kept verbatim.
|
|
83
|
-
*
|
|
84
|
-
* @param raw - The value under `lintIgnore`
|
|
85
|
-
* @param label - Field label for error messages, e.g. `patches[3].lintIgnore`
|
|
86
|
-
* @returns The validated entries
|
|
87
|
-
* @throws Error naming the offending element
|
|
88
|
-
*/
|
|
89
|
-
export function parseLintIgnoreEntries(raw, label) {
|
|
90
|
-
if (!Array.isArray(raw)) {
|
|
91
|
-
throw new Error(`${label} must be an array`);
|
|
92
|
-
}
|
|
93
|
-
const entries = [];
|
|
94
|
-
const ceilingRules = new Set();
|
|
95
|
-
for (const [index, item] of raw.entries()) {
|
|
96
|
-
const itemLabel = `${label}[${String(index)}]`;
|
|
97
|
-
if (typeof item === 'string') {
|
|
98
|
-
entries.push(item);
|
|
99
|
-
continue;
|
|
100
|
-
}
|
|
101
|
-
entries.push(parseCeiling(item, itemLabel));
|
|
102
|
-
}
|
|
103
|
-
const sharedRules = new Set();
|
|
104
|
-
for (const entry of entries) {
|
|
105
|
-
if (!isLintIgnoreCeiling(entry))
|
|
106
|
-
continue;
|
|
107
|
-
const key = ceilingKey(entry.rule, entry.share);
|
|
108
|
-
const clash = ceilingRules.has(key) ||
|
|
109
|
-
entries.includes(entry.rule) ||
|
|
110
|
-
(entry.share === undefined ? sharedRules.has(entry.rule) : ceilingRules.has(entry.rule));
|
|
111
|
-
if (clash) {
|
|
112
|
-
throw new Error(`${label} names "${entry.rule}" more than once; keep a single entry (bare or ceiling) ` +
|
|
113
|
-
'per rule, or one ceiling per share');
|
|
114
|
-
}
|
|
115
|
-
ceilingRules.add(key);
|
|
116
|
-
if (entry.share !== undefined)
|
|
117
|
-
sharedRules.add(entry.rule);
|
|
118
|
-
}
|
|
119
|
-
return entries;
|
|
120
|
-
}
|
|
121
|
-
function parseCeiling(item, label) {
|
|
122
|
-
if (item === null || typeof item !== 'object' || Array.isArray(item)) {
|
|
123
|
-
throw new Error(`${label} must be a check ID string or a { rule, max, reason } object`);
|
|
124
|
-
}
|
|
125
|
-
const record = item;
|
|
126
|
-
const unknownKeys = Object.keys(record).filter((key) => !CEILING_KEYS.has(key));
|
|
127
|
-
if (unknownKeys.length > 0) {
|
|
128
|
-
throw new Error(`${label} has unknown field(s): ${unknownKeys.join(', ')}`);
|
|
129
|
-
}
|
|
130
|
-
const { rule, max, reason, share, meta } = record;
|
|
131
|
-
if (typeof rule !== 'string' || !LINT_IGNORE_CEILING_RULES.includes(rule)) {
|
|
132
|
-
throw new Error(`${label}.rule must be one of the measured size rules: ${LINT_IGNORE_CEILING_RULES.join(', ')}`);
|
|
133
|
-
}
|
|
134
|
-
if (typeof max !== 'number' || !Number.isInteger(max) || max <= 0) {
|
|
135
|
-
throw new Error(`${label}.max must be a positive integer`);
|
|
136
|
-
}
|
|
137
|
-
if (typeof reason !== 'string' || reason.trim() === '') {
|
|
138
|
-
throw new Error(`${label}.reason must be a non-empty string`);
|
|
139
|
-
}
|
|
140
|
-
const ceiling = { rule, max, reason };
|
|
141
|
-
if (share !== undefined) {
|
|
142
|
-
if (rule !== SHARE_RULE || !SHARES.includes(share)) {
|
|
143
|
-
throw new Error(`${label}.share must be "product" or "test", and only on ${SHARE_RULE}`);
|
|
144
|
-
}
|
|
145
|
-
ceiling.share = share;
|
|
146
|
-
}
|
|
147
|
-
if (meta !== undefined) {
|
|
148
|
-
if (meta === null || typeof meta !== 'object' || Array.isArray(meta)) {
|
|
149
|
-
throw new Error(`${label}.meta must be a JSON object`);
|
|
150
|
-
}
|
|
151
|
-
ceiling.meta = meta;
|
|
152
|
-
}
|
|
153
|
-
return ceiling;
|
|
154
|
-
}
|
|
155
|
-
const CEILING_KEYS = new Set(['rule', 'max', 'reason', 'share', 'meta']);
|
|
156
|
-
/**
|
|
157
|
-
* Builds the waiver filter for a patch's entries.
|
|
158
|
-
*
|
|
159
|
-
* @param entries - `PatchMetadata.lintIgnore`, possibly merged with CLI flags
|
|
160
|
-
* @returns The filter, or undefined when there is nothing to waive
|
|
161
|
-
*/
|
|
162
|
-
export function buildLintIgnoreChecks(entries) {
|
|
163
|
-
if (entries === undefined || entries.length === 0)
|
|
164
|
-
return undefined;
|
|
165
|
-
const plain = new Set();
|
|
166
|
-
const ceilings = new Map();
|
|
167
|
-
for (const entry of entries) {
|
|
168
|
-
if (isLintIgnoreCeiling(entry))
|
|
169
|
-
ceilings.set(ceilingKey(entry.rule, entry.share), entry);
|
|
170
|
-
else
|
|
171
|
-
plain.add(entry);
|
|
172
|
-
}
|
|
173
|
-
return ceilings.size > 0 ? Object.assign(plain, { ceilings }) : plain;
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Canonical string form of a filter for the per-patch lint cache's waiver
|
|
177
|
-
* comparison: bare IDs as themselves, ceilings as `rule<=max`.
|
|
178
|
-
*/
|
|
179
|
-
export function lintIgnoreCacheTokens(checks) {
|
|
180
|
-
if (checks === undefined)
|
|
181
|
-
return [];
|
|
182
|
-
const ceilings = [...(checks.ceilings?.values() ?? [])].map(formatLintIgnoreEntry);
|
|
183
|
-
return [...checks, ...ceilings];
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Unions CLI-flag check IDs into an existing list, the append-only
|
|
187
|
-
* semantics `export` / `re-export --lint-ignore` have always had. A bare ID
|
|
188
|
-
* whose rule already has an entry (bare or ceiling) is a no-op: widening a
|
|
189
|
-
* reviewed ceiling to an unbounded waiver is `patch lint-ignore`'s job, where
|
|
190
|
-
* it is confirmed explicitly. Ceilings deduplicate by rule and share, so a
|
|
191
|
-
* rule's per-share ceilings all survive.
|
|
192
|
-
*
|
|
193
|
-
* @returns The merged list, or undefined when it is empty
|
|
194
|
-
*/
|
|
195
|
-
export function mergeLintIgnoreIds(existing, ids) {
|
|
196
|
-
const merged = [];
|
|
197
|
-
const keys = new Set();
|
|
198
|
-
const rules = new Set();
|
|
199
|
-
for (const entry of [...(existing ?? []), ...(ids ?? [])]) {
|
|
200
|
-
const blocked = isLintIgnoreCeiling(entry) ? keys.has(entryKey(entry)) : rules.has(entry);
|
|
201
|
-
if (blocked)
|
|
202
|
-
continue;
|
|
203
|
-
keys.add(entryKey(entry));
|
|
204
|
-
rules.add(lintIgnoreRule(entry));
|
|
205
|
-
merged.push(entry);
|
|
206
|
-
}
|
|
207
|
-
return merged.length > 0 ? merged : undefined;
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* Adds or replaces entries, the `patch lint-ignore --add` semantics: an
|
|
211
|
-
* explicit `--add <rule>` turns a rule's ceilings into a bare waiver,
|
|
212
|
-
* `--add <rule> --max <n>` sets or moves the rule's ceiling, and a
|
|
213
|
-
* share-scoped ceiling replaces only its own share (plus any bare or
|
|
214
|
-
* share-less entry for the rule, which it would contradict).
|
|
215
|
-
*
|
|
216
|
-
* @returns The new list, or undefined when it is empty
|
|
217
|
-
*/
|
|
218
|
-
export function upsertLintIgnoreEntries(existing, additions) {
|
|
219
|
-
let next = [...existing];
|
|
220
|
-
for (const addition of additions) {
|
|
221
|
-
const rule = lintIgnoreRule(addition);
|
|
222
|
-
const scoped = isLintIgnoreCeiling(addition) && addition.share !== undefined;
|
|
223
|
-
const replaced = (entry) => lintIgnoreRule(entry) === rule &&
|
|
224
|
-
(!scoped ||
|
|
225
|
-
!isLintIgnoreCeiling(entry) ||
|
|
226
|
-
entry.share === undefined ||
|
|
227
|
-
entryKey(entry) === entryKey(addition));
|
|
228
|
-
const index = next.findIndex(replaced);
|
|
229
|
-
const kept = next.filter((entry) => !replaced(entry));
|
|
230
|
-
// The addition takes the first replaced entry's place, so a moved
|
|
231
|
-
// ceiling keeps its position in the list.
|
|
232
|
-
next =
|
|
233
|
-
index === -1
|
|
234
|
-
? [...kept, addition]
|
|
235
|
-
: [...kept.slice(0, index), addition, ...kept.slice(index)];
|
|
236
|
-
}
|
|
237
|
-
return mergeLintIgnoreIds(next, undefined);
|
|
238
|
-
}
|
|
239
|
-
/** Removes every entry naming one of `rules`. Undefined when nothing is left. */
|
|
240
|
-
export function removeLintIgnoreRules(existing, rules) {
|
|
241
|
-
const drop = new Set(rules);
|
|
242
|
-
const remaining = existing.filter((entry) => !drop.has(lintIgnoreRule(entry)));
|
|
243
|
-
return remaining.length > 0 ? remaining : undefined;
|
|
244
|
-
}
|
|
245
|
-
/** Entries present in `after` but not (identically) in `before`. */
|
|
246
|
-
export function addedLintIgnoreEntries(before, after) {
|
|
247
|
-
return after.filter((entry) => !before.some((prior) => sameEntry(prior, entry)));
|
|
248
|
-
}
|
|
249
|
-
/**
|
|
250
|
-
* Splits issues into the ones that still surface and the ones a waiver
|
|
251
|
-
* drops.
|
|
252
|
-
*
|
|
253
|
-
* A bare ID drops every finding of its rule. A ceiling drops a finding only
|
|
254
|
-
* when it carries a measurement at or below `max`. Past the ceiling the
|
|
255
|
-
* finding surfaces at its own severity with the ceiling named, and a
|
|
256
|
-
* finding with no measurement surfaces too (fail closed).
|
|
257
|
-
*/
|
|
258
|
-
export function partitionLintIgnoredIssues(issues, checks) {
|
|
259
|
-
const kept = [];
|
|
260
|
-
const suppressed = [];
|
|
261
|
-
for (const issue of issues) {
|
|
262
|
-
if (checks?.has(issue.check) === true) {
|
|
263
|
-
suppressed.push(issue);
|
|
264
|
-
continue;
|
|
265
|
-
}
|
|
266
|
-
const ceiling = ceilingFor(issue, checks);
|
|
267
|
-
if (ceiling === undefined) {
|
|
268
|
-
kept.push(issue);
|
|
269
|
-
continue;
|
|
270
|
-
}
|
|
271
|
-
if (issue.measurement !== undefined && issue.measurement <= ceiling.max) {
|
|
272
|
-
suppressed.push(issue);
|
|
273
|
-
continue;
|
|
274
|
-
}
|
|
275
|
-
// A notice never gates, so a ceiling does not bound it: one past `max`
|
|
276
|
-
// surfaces as the plain notice it is, not as an exceeded waiver.
|
|
277
|
-
if (issue.severity === 'notice') {
|
|
278
|
-
kept.push(issue);
|
|
279
|
-
continue;
|
|
280
|
-
}
|
|
281
|
-
kept.push({ ...issue, message: `${issue.message} ${describeExceededCeiling(ceiling)}` });
|
|
282
|
-
}
|
|
283
|
-
return { kept, suppressed };
|
|
284
|
-
}
|
|
285
|
-
/** The ceiling that governs `issue`: its share's, else the rule's share-less one. */
|
|
286
|
-
function ceilingFor(issue, checks) {
|
|
287
|
-
const ceilings = checks?.ceilings;
|
|
288
|
-
if (ceilings === undefined)
|
|
289
|
-
return undefined;
|
|
290
|
-
if (issue.share !== undefined) {
|
|
291
|
-
const scoped = ceilings.get(ceilingKey(issue.check, issue.share));
|
|
292
|
-
if (scoped !== undefined)
|
|
293
|
-
return scoped;
|
|
294
|
-
}
|
|
295
|
-
return ceilings.get(issue.check);
|
|
296
|
-
}
|
|
297
|
-
function describeExceededCeiling(ceiling) {
|
|
298
|
-
const share = ceiling.share === undefined ? '' : ` (${ceiling.share} share)`;
|
|
299
|
-
return (`This exceeds the patch's lintIgnore ceiling for ${ceiling.rule}${share} ` +
|
|
300
|
-
`(max ${String(ceiling.max)}: ${ceiling.reason}).`);
|
|
301
|
-
}
|
|
302
|
-
/** True when `checks` waives `issue` (see {@link partitionLintIgnoredIssues}). */
|
|
303
|
-
export function isLintIgnored(issue, checks) {
|
|
304
|
-
return partitionLintIgnoredIssues([issue], checks).suppressed.length === 1;
|
|
305
|
-
}
|
|
306
|
-
/**
|
|
307
|
-
* Drops issues that a patch owning `issue.file` (via `filesAffected`)
|
|
308
|
-
* waives. Used where findings carry no patch scope of their own (aggregate
|
|
309
|
-
* `lint`). Each owner keeps its own filter, so a ceiling stays bounded by
|
|
310
|
-
* the patch that declared it instead of merging into a file-wide union; an
|
|
311
|
-
* issue is dropped when any owner waives it.
|
|
312
|
-
*/
|
|
313
|
-
export function filterLintIgnoredByOwners(issues, owners) {
|
|
314
|
-
const byFile = new Map();
|
|
315
|
-
for (const owner of owners) {
|
|
316
|
-
const checks = buildLintIgnoreChecks(owner?.lintIgnore);
|
|
317
|
-
if (!checks)
|
|
318
|
-
continue;
|
|
319
|
-
for (const file of owner?.filesAffected ?? []) {
|
|
320
|
-
byFile.set(file, [...(byFile.get(file) ?? []), checks]);
|
|
321
|
-
}
|
|
322
|
-
}
|
|
323
|
-
if (byFile.size === 0)
|
|
324
|
-
return issues;
|
|
325
|
-
return issues.filter((issue) => !(byFile.get(issue.file) ?? []).some((checks) => isLintIgnored(issue, checks)));
|
|
326
|
-
}
|
|
327
|
-
function judgeWaiver(rule, max, share, issues, patchMeasurements) {
|
|
328
|
-
const findings = issues.filter((issue) => issue.check === rule && (share === undefined || issue.share === share));
|
|
329
|
-
const measured = findings
|
|
330
|
-
.map((issue) => issue.measurement)
|
|
331
|
-
.filter((value) => value !== undefined);
|
|
332
|
-
// A share-scoped ceiling has no patch-level fallback: the total counts
|
|
333
|
-
// both shares, which is not what it bounds.
|
|
334
|
-
const fallback = share !== undefined
|
|
335
|
-
? null
|
|
336
|
-
: rule === 'large-patch-lines'
|
|
337
|
-
? patchMeasurements.lines
|
|
338
|
-
: rule === 'large-patch-files'
|
|
339
|
-
? patchMeasurements.files
|
|
340
|
-
: null;
|
|
341
|
-
const measurement = measured.length > 0 ? Math.max(...measured) : fallback;
|
|
342
|
-
const gating = findings.filter((issue) => issue.severity !== 'notice');
|
|
343
|
-
const exceeded = max !== null &&
|
|
344
|
-
gating.some((issue) => issue.measurement !== undefined && issue.measurement > max);
|
|
345
|
-
const state = exceeded
|
|
346
|
-
? 'exceeded'
|
|
347
|
-
: gating.length > 0
|
|
348
|
-
? 'within'
|
|
349
|
-
: 'removable';
|
|
350
|
-
return { measurement, state };
|
|
351
|
-
}
|
|
352
|
-
/**
|
|
353
|
-
* Evaluates each ceiling on a patch against the findings its lint produced
|
|
354
|
-
* (both surfaced and suppressed).
|
|
355
|
-
*
|
|
356
|
-
* @param entries - The patch's `lintIgnore`
|
|
357
|
-
* @param issues - Every finding of the patch's lint, surfaced and suppressed
|
|
358
|
-
* @param patchMeasurements - Patch-level measurements used when a
|
|
359
|
-
* patch-size rule did not fire at all, so the report still shows the
|
|
360
|
-
* current number
|
|
361
|
-
*/
|
|
362
|
-
export function evaluateLintIgnoreCeilings(entries, issues, patchMeasurements) {
|
|
363
|
-
const statuses = [];
|
|
364
|
-
for (const entry of entries ?? []) {
|
|
365
|
-
if (!isLintIgnoreCeiling(entry))
|
|
366
|
-
continue;
|
|
367
|
-
statuses.push({
|
|
368
|
-
rule: entry.rule,
|
|
369
|
-
max: entry.max,
|
|
370
|
-
reason: entry.reason,
|
|
371
|
-
...(entry.share !== undefined ? { share: entry.share } : {}),
|
|
372
|
-
...(entry.meta !== undefined ? { meta: entry.meta } : {}),
|
|
373
|
-
...judgeWaiver(entry.rule, entry.max, entry.share, issues, patchMeasurements),
|
|
374
|
-
});
|
|
375
|
-
}
|
|
376
|
-
return statuses;
|
|
377
|
-
}
|
|
378
|
-
/**
|
|
379
|
-
* Evaluates every waiver on a patch, bare IDs included, so a waiver audit
|
|
380
|
-
* reads each one's current measurement from the report instead of
|
|
381
|
-
* re-measuring bare waivers from `suppressedIssues`.
|
|
382
|
-
*
|
|
383
|
-
* @param entries - The patch's `lintIgnore`
|
|
384
|
-
* @param issues - Every finding of the patch's lint, surfaced and suppressed
|
|
385
|
-
* @param patchMeasurements - See {@link evaluateLintIgnoreCeilings}
|
|
386
|
-
*/
|
|
387
|
-
export function evaluateLintIgnoreWaivers(entries, issues, patchMeasurements) {
|
|
388
|
-
return (entries ?? []).map((entry) => {
|
|
389
|
-
if (!isLintIgnoreCeiling(entry)) {
|
|
390
|
-
return {
|
|
391
|
-
kind: 'bare',
|
|
392
|
-
rule: entry,
|
|
393
|
-
max: null,
|
|
394
|
-
reason: null,
|
|
395
|
-
...judgeWaiver(entry, null, undefined, issues, patchMeasurements),
|
|
396
|
-
};
|
|
397
|
-
}
|
|
398
|
-
return {
|
|
399
|
-
kind: 'ceiling',
|
|
400
|
-
rule: entry.rule,
|
|
401
|
-
max: entry.max,
|
|
402
|
-
reason: entry.reason,
|
|
403
|
-
...(entry.share !== undefined ? { share: entry.share } : {}),
|
|
404
|
-
...(entry.meta !== undefined ? { meta: entry.meta } : {}),
|
|
405
|
-
...judgeWaiver(entry.rule, entry.max, entry.share, issues, patchMeasurements),
|
|
406
|
-
};
|
|
407
|
-
});
|
|
408
|
-
}
|
|
409
|
-
/**
|
|
410
|
-
* Notice-severity findings for ceilings that are no longer needed, so the
|
|
411
|
-
* waiver's removal is prompted by the tool that enforces it rather than
|
|
412
|
-
* discovered by hand.
|
|
413
|
-
*/
|
|
414
|
-
export function removableCeilingIssues(patchFilename, statuses) {
|
|
415
|
-
return statuses
|
|
416
|
-
.filter((status) => status.state === 'removable')
|
|
417
|
-
.map((status) => {
|
|
418
|
-
const now = status.measurement === null ? 'below its notice band' : `at ${String(status.measurement)}`;
|
|
419
|
-
const share = status.share === undefined ? '' : `, ${status.share} share`;
|
|
420
|
-
return {
|
|
421
|
-
file: patchFilename,
|
|
422
|
-
check: 'lint-ignore-removable',
|
|
423
|
-
message: `lintIgnore ceiling for ${status.rule} (max ${String(status.max)}${share}) is no longer needed: ` +
|
|
424
|
-
`the measurement is ${now}, under the rule's own warning threshold. ` +
|
|
425
|
-
`Remove it with "fireforge patch lint-ignore ${patchFilename} --remove ${status.rule} --yes".`,
|
|
426
|
-
severity: 'notice',
|
|
427
|
-
};
|
|
428
|
-
});
|
|
429
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Returns the 1-based line numbers of the relative JS imports in `content`
|
|
3
|
-
* (the line holding each `./` or `../` specifier), avoiding comment and
|
|
4
|
-
* template false positives. Falls back to stripped-text matching for legacy
|
|
5
|
-
* chrome scripts Acorn cannot parse.
|
|
6
|
-
*
|
|
7
|
-
* @param content - JS source
|
|
8
|
-
*/
|
|
9
|
-
export declare function relativeImportLines(content: string): number[];
|