@skillsmith/cli 0.7.1 → 0.7.3
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 +9 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/cli.js +44039 -0
- package/package.json +21 -11
- package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts +0 -20
- package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts.map +0 -1
- package/dist/src/commands/__meta__/telemetry-coverage.test.js +0 -118
- package/dist/src/commands/__meta__/telemetry-coverage.test.js.map +0 -1
- package/dist/src/commands/ab-test.d.ts +0 -29
- package/dist/src/commands/ab-test.d.ts.map +0 -1
- package/dist/src/commands/ab-test.js +0 -226
- package/dist/src/commands/ab-test.js.map +0 -1
- package/dist/src/commands/ab-test.test.d.ts +0 -7
- package/dist/src/commands/ab-test.test.d.ts.map +0 -1
- package/dist/src/commands/ab-test.test.js +0 -255
- package/dist/src/commands/ab-test.test.js.map +0 -1
- package/dist/src/commands/analyze.d.ts +0 -14
- package/dist/src/commands/analyze.d.ts.map +0 -1
- package/dist/src/commands/analyze.js +0 -191
- package/dist/src/commands/analyze.js.map +0 -1
- package/dist/src/commands/audit-collisions.d.ts +0 -68
- package/dist/src/commands/audit-collisions.d.ts.map +0 -1
- package/dist/src/commands/audit-collisions.js +0 -309
- package/dist/src/commands/audit-collisions.js.map +0 -1
- package/dist/src/commands/audit-sources.action.d.ts +0 -37
- package/dist/src/commands/audit-sources.action.d.ts.map +0 -1
- package/dist/src/commands/audit-sources.action.js +0 -321
- package/dist/src/commands/audit-sources.action.js.map +0 -1
- package/dist/src/commands/audit-sources.d.ts +0 -37
- package/dist/src/commands/audit-sources.d.ts.map +0 -1
- package/dist/src/commands/audit-sources.js +0 -55
- package/dist/src/commands/audit-sources.js.map +0 -1
- package/dist/src/commands/audit-sources.test.d.ts +0 -9
- package/dist/src/commands/audit-sources.test.d.ts.map +0 -1
- package/dist/src/commands/audit-sources.test.js +0 -228
- package/dist/src/commands/audit-sources.test.js.map +0 -1
- package/dist/src/commands/audit.d.ts +0 -40
- package/dist/src/commands/audit.d.ts.map +0 -1
- package/dist/src/commands/audit.js +0 -223
- package/dist/src/commands/audit.js.map +0 -1
- package/dist/src/commands/audit.test.d.ts +0 -8
- package/dist/src/commands/audit.test.d.ts.map +0 -1
- package/dist/src/commands/audit.test.js +0 -97
- package/dist/src/commands/audit.test.js.map +0 -1
- package/dist/src/commands/author/index.d.ts +0 -17
- package/dist/src/commands/author/index.d.ts.map +0 -1
- package/dist/src/commands/author/index.js +0 -21
- package/dist/src/commands/author/index.js.map +0 -1
- package/dist/src/commands/author/init.action.d.ts +0 -29
- package/dist/src/commands/author/init.action.d.ts.map +0 -1
- package/dist/src/commands/author/init.action.js +0 -131
- package/dist/src/commands/author/init.action.js.map +0 -1
- package/dist/src/commands/author/init.d.ts +0 -36
- package/dist/src/commands/author/init.d.ts.map +0 -1
- package/dist/src/commands/author/init.helpers.d.ts +0 -80
- package/dist/src/commands/author/init.helpers.d.ts.map +0 -1
- package/dist/src/commands/author/init.helpers.js +0 -107
- package/dist/src/commands/author/init.helpers.js.map +0 -1
- package/dist/src/commands/author/init.js +0 -320
- package/dist/src/commands/author/init.js.map +0 -1
- package/dist/src/commands/author/mcp-init.d.ts +0 -21
- package/dist/src/commands/author/mcp-init.d.ts.map +0 -1
- package/dist/src/commands/author/mcp-init.js +0 -202
- package/dist/src/commands/author/mcp-init.js.map +0 -1
- package/dist/src/commands/author/subagent.d.ts +0 -23
- package/dist/src/commands/author/subagent.d.ts.map +0 -1
- package/dist/src/commands/author/subagent.js +0 -174
- package/dist/src/commands/author/subagent.js.map +0 -1
- package/dist/src/commands/author/transform.d.ts +0 -23
- package/dist/src/commands/author/transform.d.ts.map +0 -1
- package/dist/src/commands/author/transform.js +0 -149
- package/dist/src/commands/author/transform.js.map +0 -1
- package/dist/src/commands/author/utils.d.ts +0 -27
- package/dist/src/commands/author/utils.d.ts.map +0 -1
- package/dist/src/commands/author/utils.js +0 -118
- package/dist/src/commands/author/utils.js.map +0 -1
- package/dist/src/commands/config.d.ts +0 -57
- package/dist/src/commands/config.d.ts.map +0 -1
- package/dist/src/commands/config.js +0 -226
- package/dist/src/commands/config.js.map +0 -1
- package/dist/src/commands/create.d.ts +0 -43
- package/dist/src/commands/create.d.ts.map +0 -1
- package/dist/src/commands/create.js +0 -336
- package/dist/src/commands/create.js.map +0 -1
- package/dist/src/commands/diff.d.ts +0 -21
- package/dist/src/commands/diff.d.ts.map +0 -1
- package/dist/src/commands/diff.js +0 -227
- package/dist/src/commands/diff.js.map +0 -1
- package/dist/src/commands/diff.test.d.ts +0 -6
- package/dist/src/commands/diff.test.d.ts.map +0 -1
- package/dist/src/commands/diff.test.js +0 -327
- package/dist/src/commands/diff.test.js.map +0 -1
- package/dist/src/commands/import-local.d.ts +0 -28
- package/dist/src/commands/import-local.d.ts.map +0 -1
- package/dist/src/commands/import-local.helpers.d.ts +0 -28
- package/dist/src/commands/import-local.helpers.d.ts.map +0 -1
- package/dist/src/commands/import-local.helpers.js +0 -166
- package/dist/src/commands/import-local.helpers.js.map +0 -1
- package/dist/src/commands/import-local.js +0 -273
- package/dist/src/commands/import-local.js.map +0 -1
- package/dist/src/commands/import-local.types.d.ts +0 -59
- package/dist/src/commands/import-local.types.d.ts.map +0 -1
- package/dist/src/commands/import-local.types.js +0 -2
- package/dist/src/commands/import-local.types.js.map +0 -1
- package/dist/src/commands/import.d.ts +0 -47
- package/dist/src/commands/import.d.ts.map +0 -1
- package/dist/src/commands/import.js +0 -314
- package/dist/src/commands/import.js.map +0 -1
- package/dist/src/commands/index.d.ts +0 -28
- package/dist/src/commands/index.d.ts.map +0 -1
- package/dist/src/commands/index.js +0 -50
- package/dist/src/commands/index.js.map +0 -1
- package/dist/src/commands/info.d.ts +0 -19
- package/dist/src/commands/info.d.ts.map +0 -1
- package/dist/src/commands/info.js +0 -110
- package/dist/src/commands/info.js.map +0 -1
- package/dist/src/commands/install-skill.d.ts +0 -16
- package/dist/src/commands/install-skill.d.ts.map +0 -1
- package/dist/src/commands/install-skill.js +0 -155
- package/dist/src/commands/install-skill.js.map +0 -1
- package/dist/src/commands/install.d.ts +0 -34
- package/dist/src/commands/install.d.ts.map +0 -1
- package/dist/src/commands/install.js +0 -311
- package/dist/src/commands/install.js.map +0 -1
- package/dist/src/commands/inventory.action.d.ts +0 -55
- package/dist/src/commands/inventory.action.d.ts.map +0 -1
- package/dist/src/commands/inventory.action.js +0 -179
- package/dist/src/commands/inventory.action.js.map +0 -1
- package/dist/src/commands/inventory.action.test.d.ts +0 -19
- package/dist/src/commands/inventory.action.test.d.ts.map +0 -1
- package/dist/src/commands/inventory.action.test.js +0 -371
- package/dist/src/commands/inventory.action.test.js.map +0 -1
- package/dist/src/commands/inventory.d.ts +0 -21
- package/dist/src/commands/inventory.d.ts.map +0 -1
- package/dist/src/commands/inventory.js +0 -42
- package/dist/src/commands/inventory.js.map +0 -1
- package/dist/src/commands/login.d.ts +0 -7
- package/dist/src/commands/login.d.ts.map +0 -1
- package/dist/src/commands/login.js +0 -323
- package/dist/src/commands/login.js.map +0 -1
- package/dist/src/commands/login.test-helpers.d.ts +0 -7
- package/dist/src/commands/login.test-helpers.d.ts.map +0 -1
- package/dist/src/commands/login.test-helpers.js +0 -44
- package/dist/src/commands/login.test-helpers.js.map +0 -1
- package/dist/src/commands/login.test.d.ts +0 -2
- package/dist/src/commands/login.test.d.ts.map +0 -1
- package/dist/src/commands/login.test.js +0 -387
- package/dist/src/commands/login.test.js.map +0 -1
- package/dist/src/commands/logout.d.ts +0 -15
- package/dist/src/commands/logout.d.ts.map +0 -1
- package/dist/src/commands/logout.js +0 -54
- package/dist/src/commands/logout.js.map +0 -1
- package/dist/src/commands/logout.test.d.ts +0 -8
- package/dist/src/commands/logout.test.d.ts.map +0 -1
- package/dist/src/commands/logout.test.js +0 -137
- package/dist/src/commands/logout.test.js.map +0 -1
- package/dist/src/commands/manage.d.ts +0 -19
- package/dist/src/commands/manage.d.ts.map +0 -1
- package/dist/src/commands/manage.js +0 -346
- package/dist/src/commands/manage.js.map +0 -1
- package/dist/src/commands/merge.d.ts +0 -24
- package/dist/src/commands/merge.d.ts.map +0 -1
- package/dist/src/commands/merge.js +0 -168
- package/dist/src/commands/merge.js.map +0 -1
- package/dist/src/commands/pin.d.ts +0 -26
- package/dist/src/commands/pin.d.ts.map +0 -1
- package/dist/src/commands/pin.js +0 -138
- package/dist/src/commands/pin.js.map +0 -1
- package/dist/src/commands/pin.test.d.ts +0 -6
- package/dist/src/commands/pin.test.d.ts.map +0 -1
- package/dist/src/commands/pin.test.js +0 -206
- package/dist/src/commands/pin.test.js.map +0 -1
- package/dist/src/commands/recommend-scoring.d.ts +0 -29
- package/dist/src/commands/recommend-scoring.d.ts.map +0 -1
- package/dist/src/commands/recommend-scoring.js +0 -141
- package/dist/src/commands/recommend-scoring.js.map +0 -1
- package/dist/src/commands/recommend.d.ts +0 -15
- package/dist/src/commands/recommend.d.ts.map +0 -1
- package/dist/src/commands/recommend.helpers.d.ts +0 -44
- package/dist/src/commands/recommend.helpers.d.ts.map +0 -1
- package/dist/src/commands/recommend.helpers.js +0 -303
- package/dist/src/commands/recommend.helpers.js.map +0 -1
- package/dist/src/commands/recommend.js +0 -198
- package/dist/src/commands/recommend.js.map +0 -1
- package/dist/src/commands/recommend.types.d.ts +0 -66
- package/dist/src/commands/recommend.types.d.ts.map +0 -1
- package/dist/src/commands/recommend.types.js +0 -14
- package/dist/src/commands/recommend.types.js.map +0 -1
- package/dist/src/commands/run-registry-sync.d.ts +0 -31
- package/dist/src/commands/run-registry-sync.d.ts.map +0 -1
- package/dist/src/commands/run-registry-sync.js +0 -45
- package/dist/src/commands/run-registry-sync.js.map +0 -1
- package/dist/src/commands/search-formatters.d.ts +0 -36
- package/dist/src/commands/search-formatters.d.ts.map +0 -1
- package/dist/src/commands/search-formatters.js +0 -132
- package/dist/src/commands/search-formatters.js.map +0 -1
- package/dist/src/commands/search-types.d.ts +0 -46
- package/dist/src/commands/search-types.d.ts.map +0 -1
- package/dist/src/commands/search-types.js +0 -12
- package/dist/src/commands/search-types.js.map +0 -1
- package/dist/src/commands/search.action.d.ts +0 -16
- package/dist/src/commands/search.action.d.ts.map +0 -1
- package/dist/src/commands/search.action.js +0 -384
- package/dist/src/commands/search.action.js.map +0 -1
- package/dist/src/commands/search.d.ts +0 -18
- package/dist/src/commands/search.d.ts.map +0 -1
- package/dist/src/commands/search.helpers.d.ts +0 -52
- package/dist/src/commands/search.helpers.d.ts.map +0 -1
- package/dist/src/commands/search.helpers.js +0 -95
- package/dist/src/commands/search.helpers.js.map +0 -1
- package/dist/src/commands/search.js +0 -48
- package/dist/src/commands/search.js.map +0 -1
- package/dist/src/commands/search.test.d.ts +0 -10
- package/dist/src/commands/search.test.d.ts.map +0 -1
- package/dist/src/commands/search.test.js +0 -179
- package/dist/src/commands/search.test.js.map +0 -1
- package/dist/src/commands/sync.action.d.ts +0 -39
- package/dist/src/commands/sync.action.d.ts.map +0 -1
- package/dist/src/commands/sync.action.js +0 -353
- package/dist/src/commands/sync.action.js.map +0 -1
- package/dist/src/commands/sync.d.ts +0 -24
- package/dist/src/commands/sync.d.ts.map +0 -1
- package/dist/src/commands/sync.helpers.d.ts +0 -55
- package/dist/src/commands/sync.helpers.d.ts.map +0 -1
- package/dist/src/commands/sync.helpers.js +0 -90
- package/dist/src/commands/sync.helpers.js.map +0 -1
- package/dist/src/commands/sync.js +0 -101
- package/dist/src/commands/sync.js.map +0 -1
- package/dist/src/commands/telemetry.action.d.ts +0 -38
- package/dist/src/commands/telemetry.action.d.ts.map +0 -1
- package/dist/src/commands/telemetry.action.js +0 -350
- package/dist/src/commands/telemetry.action.js.map +0 -1
- package/dist/src/commands/telemetry.d.ts +0 -30
- package/dist/src/commands/telemetry.d.ts.map +0 -1
- package/dist/src/commands/telemetry.helpers.d.ts +0 -58
- package/dist/src/commands/telemetry.helpers.d.ts.map +0 -1
- package/dist/src/commands/telemetry.helpers.js +0 -173
- package/dist/src/commands/telemetry.helpers.js.map +0 -1
- package/dist/src/commands/telemetry.helpers.test.d.ts +0 -15
- package/dist/src/commands/telemetry.helpers.test.d.ts.map +0 -1
- package/dist/src/commands/telemetry.helpers.test.js +0 -240
- package/dist/src/commands/telemetry.helpers.test.js.map +0 -1
- package/dist/src/commands/telemetry.js +0 -65
- package/dist/src/commands/telemetry.js.map +0 -1
- package/dist/src/commands/telemetry.test.d.ts +0 -18
- package/dist/src/commands/telemetry.test.d.ts.map +0 -1
- package/dist/src/commands/telemetry.test.js +0 -401
- package/dist/src/commands/telemetry.test.js.map +0 -1
- package/dist/src/commands/whoami.d.ts +0 -15
- package/dist/src/commands/whoami.d.ts.map +0 -1
- package/dist/src/commands/whoami.js +0 -55
- package/dist/src/commands/whoami.js.map +0 -1
- package/dist/src/commands/whoami.test.d.ts +0 -8
- package/dist/src/commands/whoami.test.d.ts.map +0 -1
- package/dist/src/commands/whoami.test.js +0 -133
- package/dist/src/commands/whoami.test.js.map +0 -1
- package/dist/src/config.d.ts +0 -29
- package/dist/src/config.d.ts.map +0 -1
- package/dist/src/config.js +0 -34
- package/dist/src/config.js.map +0 -1
- package/dist/src/index.d.ts +0 -22
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -117
- package/dist/src/index.js.map +0 -1
- package/dist/src/templates/changelog.md.template.d.ts +0 -8
- package/dist/src/templates/changelog.md.template.d.ts.map +0 -1
- package/dist/src/templates/changelog.md.template.js +0 -19
- package/dist/src/templates/changelog.md.template.js.map +0 -1
- package/dist/src/templates/index.d.ts +0 -11
- package/dist/src/templates/index.d.ts.map +0 -1
- package/dist/src/templates/index.js +0 -11
- package/dist/src/templates/index.js.map +0 -1
- package/dist/src/templates/mcp-server.template.d.ts +0 -82
- package/dist/src/templates/mcp-server.template.d.ts.map +0 -1
- package/dist/src/templates/mcp-server.template.js +0 -430
- package/dist/src/templates/mcp-server.template.js.map +0 -1
- package/dist/src/templates/mcp-server.template.snippets.d.ts +0 -51
- package/dist/src/templates/mcp-server.template.snippets.d.ts.map +0 -1
- package/dist/src/templates/mcp-server.template.snippets.js +0 -162
- package/dist/src/templates/mcp-server.template.snippets.js.map +0 -1
- package/dist/src/templates/mcp-template-handlers.d.ts +0 -33
- package/dist/src/templates/mcp-template-handlers.d.ts.map +0 -1
- package/dist/src/templates/mcp-template-handlers.js +0 -106
- package/dist/src/templates/mcp-template-handlers.js.map +0 -1
- package/dist/src/templates/mcp-template-types.d.ts +0 -48
- package/dist/src/templates/mcp-template-types.d.ts.map +0 -1
- package/dist/src/templates/mcp-template-types.js +0 -18
- package/dist/src/templates/mcp-template-types.js.map +0 -1
- package/dist/src/templates/readme.md.template.d.ts +0 -8
- package/dist/src/templates/readme.md.template.d.ts.map +0 -1
- package/dist/src/templates/readme.md.template.js +0 -86
- package/dist/src/templates/readme.md.template.js.map +0 -1
- package/dist/src/templates/skill.md.template.d.ts +0 -8
- package/dist/src/templates/skill.md.template.d.ts.map +0 -1
- package/dist/src/templates/skill.md.template.js +0 -97
- package/dist/src/templates/skill.md.template.js.map +0 -1
- package/dist/src/templates/subagent.md.template.d.ts +0 -38
- package/dist/src/templates/subagent.md.template.d.ts.map +0 -1
- package/dist/src/templates/subagent.md.template.js +0 -128
- package/dist/src/templates/subagent.md.template.js.map +0 -1
- package/dist/src/utils/errors.d.ts +0 -52
- package/dist/src/utils/errors.d.ts.map +0 -1
- package/dist/src/utils/errors.js +0 -58
- package/dist/src/utils/errors.js.map +0 -1
- package/dist/src/utils/formatters.d.ts +0 -39
- package/dist/src/utils/formatters.d.ts.map +0 -1
- package/dist/src/utils/formatters.js +0 -69
- package/dist/src/utils/formatters.js.map +0 -1
- package/dist/src/utils/license-types.d.ts +0 -88
- package/dist/src/utils/license-types.d.ts.map +0 -1
- package/dist/src/utils/license-types.js +0 -60
- package/dist/src/utils/license-types.js.map +0 -1
- package/dist/src/utils/license-validation.d.ts +0 -61
- package/dist/src/utils/license-validation.d.ts.map +0 -1
- package/dist/src/utils/license-validation.js +0 -198
- package/dist/src/utils/license-validation.js.map +0 -1
- package/dist/src/utils/license.d.ts +0 -56
- package/dist/src/utils/license.d.ts.map +0 -1
- package/dist/src/utils/license.js +0 -163
- package/dist/src/utils/license.js.map +0 -1
- package/dist/src/utils/license.test.d.ts +0 -7
- package/dist/src/utils/license.test.d.ts.map +0 -1
- package/dist/src/utils/license.test.js +0 -308
- package/dist/src/utils/license.test.js.map +0 -1
- package/dist/src/utils/manifest.d.ts +0 -121
- package/dist/src/utils/manifest.d.ts.map +0 -1
- package/dist/src/utils/manifest.js +0 -133
- package/dist/src/utils/manifest.js.map +0 -1
- package/dist/src/utils/manifest.test.d.ts +0 -20
- package/dist/src/utils/manifest.test.d.ts.map +0 -1
- package/dist/src/utils/manifest.test.js +0 -344
- package/dist/src/utils/manifest.test.js.map +0 -1
- package/dist/src/utils/node-version.d.ts +0 -41
- package/dist/src/utils/node-version.d.ts.map +0 -1
- package/dist/src/utils/node-version.js +0 -123
- package/dist/src/utils/node-version.js.map +0 -1
- package/dist/src/utils/open-database.d.ts +0 -35
- package/dist/src/utils/open-database.d.ts.map +0 -1
- package/dist/src/utils/open-database.js +0 -73
- package/dist/src/utils/open-database.js.map +0 -1
- package/dist/src/utils/require-tier.d.ts +0 -38
- package/dist/src/utils/require-tier.d.ts.map +0 -1
- package/dist/src/utils/require-tier.js +0 -74
- package/dist/src/utils/require-tier.js.map +0 -1
- package/dist/src/utils/sanitize.d.ts +0 -30
- package/dist/src/utils/sanitize.d.ts.map +0 -1
- package/dist/src/utils/sanitize.js +0 -45
- package/dist/src/utils/sanitize.js.map +0 -1
- package/dist/src/utils/skill-name.d.ts +0 -19
- package/dist/src/utils/skill-name.d.ts.map +0 -1
- package/dist/src/utils/skill-name.js +0 -26
- package/dist/src/utils/skill-name.js.map +0 -1
- package/dist/src/utils/skills-directory.d.ts +0 -95
- package/dist/src/utils/skills-directory.d.ts.map +0 -1
- package/dist/src/utils/skills-directory.js +0 -283
- package/dist/src/utils/skills-directory.js.map +0 -1
- package/dist/src/utils/startup-header-gate.d.ts +0 -29
- package/dist/src/utils/startup-header-gate.d.ts.map +0 -1
- package/dist/src/utils/startup-header-gate.js +0 -44
- package/dist/src/utils/startup-header-gate.js.map +0 -1
- package/dist/src/utils/startup-header-gate.test.d.ts +0 -2
- package/dist/src/utils/startup-header-gate.test.d.ts.map +0 -1
- package/dist/src/utils/startup-header-gate.test.js +0 -46
- package/dist/src/utils/startup-header-gate.test.js.map +0 -1
- package/dist/src/utils/tool-analyzer.d.ts +0 -54
- package/dist/src/utils/tool-analyzer.d.ts.map +0 -1
- package/dist/src/utils/tool-analyzer.js +0 -156
- package/dist/src/utils/tool-analyzer.js.map +0 -1
- package/dist/src/version.d.ts +0 -2
- package/dist/src/version.d.ts.map +0 -1
- package/dist/src/version.js +0 -24
- package/dist/src/version.js.map +0 -1
- package/dist/tests/audit-collisions.test.d.ts +0 -42
- package/dist/tests/audit-collisions.test.d.ts.map +0 -1
- package/dist/tests/audit-collisions.test.js +0 -370
- package/dist/tests/audit-collisions.test.js.map +0 -1
- package/dist/tests/audit-restructure.test.d.ts +0 -15
- package/dist/tests/audit-restructure.test.d.ts.map +0 -1
- package/dist/tests/audit-restructure.test.js +0 -151
- package/dist/tests/audit-restructure.test.js.map +0 -1
- package/dist/tests/author.test.d.ts +0 -5
- package/dist/tests/author.test.d.ts.map +0 -1
- package/dist/tests/author.test.js +0 -653
- package/dist/tests/author.test.js.map +0 -1
- package/dist/tests/config.test.d.ts +0 -33
- package/dist/tests/config.test.d.ts.map +0 -1
- package/dist/tests/config.test.js +0 -240
- package/dist/tests/config.test.js.map +0 -1
- package/dist/tests/create.test.d.ts +0 -5
- package/dist/tests/create.test.d.ts.map +0 -1
- package/dist/tests/create.test.js +0 -449
- package/dist/tests/create.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-affix.test.d.ts +0 -11
- package/dist/tests/e2e/audit-sources-affix.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-affix.test.js +0 -121
- package/dist/tests/e2e/audit-sources-affix.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-apply.test.d.ts +0 -13
- package/dist/tests/e2e/audit-sources-apply.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-apply.test.js +0 -166
- package/dist/tests/e2e/audit-sources-apply.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-recovery.test.d.ts +0 -15
- package/dist/tests/e2e/audit-sources-recovery.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-recovery.test.js +0 -179
- package/dist/tests/e2e/audit-sources-recovery.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts +0 -23
- package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-roundtrip.test.js +0 -139
- package/dist/tests/e2e/audit-sources-roundtrip.test.js.map +0 -1
- package/dist/tests/e2e/author.e2e.test.d.ts +0 -9
- package/dist/tests/e2e/author.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/author.e2e.test.js +0 -666
- package/dist/tests/e2e/author.e2e.test.js.map +0 -1
- package/dist/tests/e2e/import.e2e.test.d.ts +0 -10
- package/dist/tests/e2e/import.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/import.e2e.test.js +0 -213
- package/dist/tests/e2e/import.e2e.test.js.map +0 -1
- package/dist/tests/e2e/manage.e2e.test.d.ts +0 -9
- package/dist/tests/e2e/manage.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/manage.e2e.test.js +0 -277
- package/dist/tests/e2e/manage.e2e.test.js.map +0 -1
- package/dist/tests/e2e/search.e2e.test.d.ts +0 -10
- package/dist/tests/e2e/search.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/search.e2e.test.js +0 -324
- package/dist/tests/e2e/search.e2e.test.js.map +0 -1
- package/dist/tests/e2e/test-config.d.ts +0 -39
- package/dist/tests/e2e/test-config.d.ts.map +0 -1
- package/dist/tests/e2e/test-config.js +0 -44
- package/dist/tests/e2e/test-config.js.map +0 -1
- package/dist/tests/e2e/utils/baseline-collector.d.ts +0 -107
- package/dist/tests/e2e/utils/baseline-collector.d.ts.map +0 -1
- package/dist/tests/e2e/utils/baseline-collector.js +0 -211
- package/dist/tests/e2e/utils/baseline-collector.js.map +0 -1
- package/dist/tests/e2e/utils/hardcoded-detector.d.ts +0 -46
- package/dist/tests/e2e/utils/hardcoded-detector.d.ts.map +0 -1
- package/dist/tests/e2e/utils/hardcoded-detector.js +0 -238
- package/dist/tests/e2e/utils/hardcoded-detector.js.map +0 -1
- package/dist/tests/e2e/utils/index.d.ts +0 -12
- package/dist/tests/e2e/utils/index.d.ts.map +0 -1
- package/dist/tests/e2e/utils/index.js +0 -12
- package/dist/tests/e2e/utils/index.js.map +0 -1
- package/dist/tests/e2e/utils/linear-reporter.d.ts +0 -60
- package/dist/tests/e2e/utils/linear-reporter.d.ts.map +0 -1
- package/dist/tests/e2e/utils/linear-reporter.js +0 -223
- package/dist/tests/e2e/utils/linear-reporter.js.map +0 -1
- package/dist/tests/e2e/utils/mock-github.d.ts +0 -23
- package/dist/tests/e2e/utils/mock-github.d.ts.map +0 -1
- package/dist/tests/e2e/utils/mock-github.js +0 -60
- package/dist/tests/e2e/utils/mock-github.js.map +0 -1
- package/dist/tests/e2e/utils/mock-prompts.d.ts +0 -19
- package/dist/tests/e2e/utils/mock-prompts.d.ts.map +0 -1
- package/dist/tests/e2e/utils/mock-prompts.js +0 -48
- package/dist/tests/e2e/utils/mock-prompts.js.map +0 -1
- package/dist/tests/e2e/utils/source-recovery-fixture.d.ts +0 -49
- package/dist/tests/e2e/utils/source-recovery-fixture.d.ts.map +0 -1
- package/dist/tests/e2e/utils/source-recovery-fixture.js +0 -106
- package/dist/tests/e2e/utils/source-recovery-fixture.js.map +0 -1
- package/dist/tests/embedding-probe-stdio.test.d.ts +0 -11
- package/dist/tests/embedding-probe-stdio.test.d.ts.map +0 -1
- package/dist/tests/embedding-probe-stdio.test.js +0 -58
- package/dist/tests/embedding-probe-stdio.test.js.map +0 -1
- package/dist/tests/import.test.d.ts +0 -5
- package/dist/tests/import.test.d.ts.map +0 -1
- package/dist/tests/import.test.js +0 -11
- package/dist/tests/import.test.js.map +0 -1
- package/dist/tests/init.test.d.ts +0 -30
- package/dist/tests/init.test.d.ts.map +0 -1
- package/dist/tests/init.test.js +0 -357
- package/dist/tests/init.test.js.map +0 -1
- package/dist/tests/install-multi-client.test.d.ts +0 -2
- package/dist/tests/install-multi-client.test.d.ts.map +0 -1
- package/dist/tests/install-multi-client.test.js +0 -202
- package/dist/tests/install-multi-client.test.js.map +0 -1
- package/dist/tests/install-quarantine.test.d.ts +0 -10
- package/dist/tests/install-quarantine.test.d.ts.map +0 -1
- package/dist/tests/install-quarantine.test.js +0 -86
- package/dist/tests/install-quarantine.test.js.map +0 -1
- package/dist/tests/install-skill.test.d.ts +0 -8
- package/dist/tests/install-skill.test.d.ts.map +0 -1
- package/dist/tests/install-skill.test.js +0 -414
- package/dist/tests/install-skill.test.js.map +0 -1
- package/dist/tests/integration/import-local.test.d.ts +0 -2
- package/dist/tests/integration/import-local.test.d.ts.map +0 -1
- package/dist/tests/integration/import-local.test.js +0 -158
- package/dist/tests/integration/import-local.test.js.map +0 -1
- package/dist/tests/license-validation.test.d.ts +0 -8
- package/dist/tests/license-validation.test.d.ts.map +0 -1
- package/dist/tests/license-validation.test.js +0 -186
- package/dist/tests/license-validation.test.js.map +0 -1
- package/dist/tests/manage.test.d.ts +0 -5
- package/dist/tests/manage.test.d.ts.map +0 -1
- package/dist/tests/manage.test.js +0 -495
- package/dist/tests/manage.test.js.map +0 -1
- package/dist/tests/mcp-server-template.test.d.ts +0 -7
- package/dist/tests/mcp-server-template.test.d.ts.map +0 -1
- package/dist/tests/mcp-server-template.test.js +0 -372
- package/dist/tests/mcp-server-template.test.js.map +0 -1
- package/dist/tests/node-version.test.d.ts +0 -8
- package/dist/tests/node-version.test.d.ts.map +0 -1
- package/dist/tests/node-version.test.js +0 -200
- package/dist/tests/node-version.test.js.map +0 -1
- package/dist/tests/open-database.test.d.ts +0 -2
- package/dist/tests/open-database.test.d.ts.map +0 -1
- package/dist/tests/open-database.test.js +0 -77
- package/dist/tests/open-database.test.js.map +0 -1
- package/dist/tests/recommend-helpers.test.d.ts +0 -9
- package/dist/tests/recommend-helpers.test.d.ts.map +0 -1
- package/dist/tests/recommend-helpers.test.js +0 -308
- package/dist/tests/recommend-helpers.test.js.map +0 -1
- package/dist/tests/recommend-scoring.test.d.ts +0 -8
- package/dist/tests/recommend-scoring.test.d.ts.map +0 -1
- package/dist/tests/recommend-scoring.test.js +0 -184
- package/dist/tests/recommend-scoring.test.js.map +0 -1
- package/dist/tests/recommend.errors.test.d.ts +0 -8
- package/dist/tests/recommend.errors.test.d.ts.map +0 -1
- package/dist/tests/recommend.errors.test.js +0 -232
- package/dist/tests/recommend.errors.test.js.map +0 -1
- package/dist/tests/recommend.filters.test.d.ts +0 -9
- package/dist/tests/recommend.filters.test.d.ts.map +0 -1
- package/dist/tests/recommend.filters.test.js +0 -235
- package/dist/tests/recommend.filters.test.js.map +0 -1
- package/dist/tests/recommend.test-helpers.d.ts +0 -66
- package/dist/tests/recommend.test-helpers.d.ts.map +0 -1
- package/dist/tests/recommend.test-helpers.js +0 -79
- package/dist/tests/recommend.test-helpers.js.map +0 -1
- package/dist/tests/recommend.test.d.ts +0 -11
- package/dist/tests/recommend.test.d.ts.map +0 -1
- package/dist/tests/recommend.test.js +0 -320
- package/dist/tests/recommend.test.js.map +0 -1
- package/dist/tests/search-helpers.test.d.ts +0 -2
- package/dist/tests/search-helpers.test.d.ts.map +0 -1
- package/dist/tests/search-helpers.test.js +0 -110
- package/dist/tests/search-helpers.test.js.map +0 -1
- package/dist/tests/search.test.d.ts +0 -5
- package/dist/tests/search.test.d.ts.map +0 -1
- package/dist/tests/search.test.js +0 -91
- package/dist/tests/search.test.js.map +0 -1
- package/dist/tests/skills-directory-per-harness.test.d.ts +0 -2
- package/dist/tests/skills-directory-per-harness.test.d.ts.map +0 -1
- package/dist/tests/skills-directory-per-harness.test.js +0 -116
- package/dist/tests/skills-directory-per-harness.test.js.map +0 -1
- package/dist/tests/skills-directory.test.d.ts +0 -2
- package/dist/tests/skills-directory.test.d.ts.map +0 -1
- package/dist/tests/skills-directory.test.js +0 -97
- package/dist/tests/skills-directory.test.js.map +0 -1
- package/dist/tests/sync.auth-ux.test.d.ts +0 -14
- package/dist/tests/sync.auth-ux.test.d.ts.map +0 -1
- package/dist/tests/sync.auth-ux.test.js +0 -148
- package/dist/tests/sync.auth-ux.test.js.map +0 -1
- package/dist/tests/tool-analyzer.test.d.ts +0 -8
- package/dist/tests/tool-analyzer.test.d.ts.map +0 -1
- package/dist/tests/tool-analyzer.test.js +0 -149
- package/dist/tests/tool-analyzer.test.js.map +0 -1
- package/dist/tests/unit/commands/install.test.d.ts +0 -7
- package/dist/tests/unit/commands/install.test.d.ts.map +0 -1
- package/dist/tests/unit/commands/install.test.js +0 -482
- package/dist/tests/unit/commands/install.test.js.map +0 -1
- package/dist/tests/unit/import-local.helpers.test.d.ts +0 -2
- package/dist/tests/unit/import-local.helpers.test.d.ts.map +0 -1
- package/dist/tests/unit/import-local.helpers.test.js +0 -96
- package/dist/tests/unit/import-local.helpers.test.js.map +0 -1
|
@@ -1,309 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview `sklx audit collisions` — interactive consumer-namespace audit.
|
|
3
|
-
* @module @skillsmith/cli/commands/audit-collisions
|
|
4
|
-
* @see SMI-4590 Wave 4 PR 5/6 §4 + §9
|
|
5
|
-
*
|
|
6
|
-
* Sibling of `sklx audit advisories` (Step 0a). Wraps the shared
|
|
7
|
-
* `runInventoryAudit` helper from `@skillsmith/mcp-server/audit` (PR 4) so
|
|
8
|
-
* composition logic lives in one place.
|
|
9
|
-
*
|
|
10
|
-
* Flags:
|
|
11
|
-
* --deep Opt into the semantic-overlap detector pass.
|
|
12
|
-
* --json Emit `RunInventoryAuditResult` as JSON to stdout.
|
|
13
|
-
* Bypasses prompts; no file mutation.
|
|
14
|
-
* --apply-all Accept every suggestion. Typed-confirmation gate:
|
|
15
|
-
* user must type the literal phrase `APPLY ALL`.
|
|
16
|
-
* --report-only Write the audit report; no prompts, no apply.
|
|
17
|
-
* --reset-ledger Clear `~/.skillsmith/namespace-overrides.json`. Backs
|
|
18
|
-
* up to `~/.skillsmith/backups/ledger-<ts>.json` first.
|
|
19
|
-
* Typed-confirmation gate: literal phrase `RESET LEDGER`.
|
|
20
|
-
*
|
|
21
|
-
* Typed-confirmation gates are load-bearing UX (plan §235-239). Prompts use
|
|
22
|
-
* `@inquirer/prompts` `input` with strict literal-phrase verification —
|
|
23
|
-
* ANY input other than the exact phrase rejects with a non-zero exit.
|
|
24
|
-
* No fuzzy match, no normalization, no validate-and-retry loop.
|
|
25
|
-
*
|
|
26
|
-
* Default-entry tiebreak: `runInventoryAudit` already picks the most-recently-
|
|
27
|
-
* installed entry (mtime descending) per `buildRenameSuggestions`. The CLI
|
|
28
|
-
* surfaces that target in the prompt copy and lets the user `s`kip to flip
|
|
29
|
-
* to the other entry.
|
|
30
|
-
*/
|
|
31
|
-
import * as crypto from 'node:crypto';
|
|
32
|
-
import * as fs from 'node:fs';
|
|
33
|
-
import { homedir } from 'node:os';
|
|
34
|
-
import { join } from 'node:path';
|
|
35
|
-
import { Command } from 'commander';
|
|
36
|
-
import chalk from 'chalk';
|
|
37
|
-
import { withTelemetry } from '@skillsmith/core/telemetry';
|
|
38
|
-
import { input, select } from '@inquirer/prompts';
|
|
39
|
-
import { applyRename, readLedger, runInventoryAudit, writeLedger, NAMESPACE_OVERRIDES_CURRENT_VERSION, } from '@skillsmith/mcp-server/audit';
|
|
40
|
-
import { sanitizeError } from '../utils/sanitize.js';
|
|
41
|
-
import { getLicenseStatus } from '../utils/license.js';
|
|
42
|
-
// ---------------------------------------------------------------------------
|
|
43
|
-
// Constants
|
|
44
|
-
// ---------------------------------------------------------------------------
|
|
45
|
-
const APPLY_ALL_PHRASE = 'APPLY ALL';
|
|
46
|
-
const RESET_LEDGER_PHRASE = 'RESET LEDGER';
|
|
47
|
-
const CONFIRMATION_REJECTED_MESSAGE = 'Confirmation phrase mismatch — operation aborted. The phrase must match exactly (case-sensitive, including spaces).';
|
|
48
|
-
// ---------------------------------------------------------------------------
|
|
49
|
-
// Typed-confirmation gate
|
|
50
|
-
// ---------------------------------------------------------------------------
|
|
51
|
-
/**
|
|
52
|
-
* Read a single line from stdin and require an exact literal match for
|
|
53
|
-
* `expected`. Used for the load-bearing `APPLY ALL` and `RESET LEDGER`
|
|
54
|
-
* gates per plan §235-239.
|
|
55
|
-
*
|
|
56
|
-
* Strict equality only — no fuzzy match, no normalization. Lowercase,
|
|
57
|
-
* abbreviated, or whitespace-stripped input REJECTS with exit non-zero.
|
|
58
|
-
* Tested on both interactive (TTY) and piped-stdin paths.
|
|
59
|
-
*/
|
|
60
|
-
async function requireConfirmationPhrase(expected, prompt) {
|
|
61
|
-
const answer = await input({ message: prompt });
|
|
62
|
-
// Strict equality: NO trimming, NO case folding, NO normalization.
|
|
63
|
-
// Two reasons:
|
|
64
|
-
// 1. Plan §237 mandates it ("any other input — including `Y`, `yes`,
|
|
65
|
-
// `apply all` (lowercase), `APPLYALL` (no space) — rejects").
|
|
66
|
-
// 2. `@inquirer/prompts` `input` does NOT trim by default — verified.
|
|
67
|
-
if (answer !== expected) {
|
|
68
|
-
throw new Error(CONFIRMATION_REJECTED_MESSAGE);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
// ---------------------------------------------------------------------------
|
|
72
|
-
// Ledger reset helpers
|
|
73
|
-
// ---------------------------------------------------------------------------
|
|
74
|
-
function ledgerPath() {
|
|
75
|
-
return join(homedir(), '.skillsmith', 'namespace-overrides.json');
|
|
76
|
-
}
|
|
77
|
-
function backupsDir() {
|
|
78
|
-
return join(homedir(), '.skillsmith', 'backups');
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Backup the ledger file to `~/.skillsmith/backups/ledger-<ts>-<rand>.json`
|
|
82
|
-
* before the reset clears it. The random suffix prevents two concurrent
|
|
83
|
-
* resets from clobbering each other's backup file.
|
|
84
|
-
*/
|
|
85
|
-
function backupLedgerForReset() {
|
|
86
|
-
const src = ledgerPath();
|
|
87
|
-
if (!fs.existsSync(src))
|
|
88
|
-
return null;
|
|
89
|
-
const dir = backupsDir();
|
|
90
|
-
fs.mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
91
|
-
const ts = new Date().toISOString().replace(/[:.]/g, '-');
|
|
92
|
-
const suffix = crypto.randomBytes(4).toString('hex');
|
|
93
|
-
const backupFile = join(dir, `ledger-${ts}-${suffix}.json`);
|
|
94
|
-
fs.copyFileSync(src, backupFile);
|
|
95
|
-
return backupFile;
|
|
96
|
-
}
|
|
97
|
-
async function runResetLedger() {
|
|
98
|
-
await requireConfirmationPhrase(RESET_LEDGER_PHRASE, `Type ${chalk.bold(RESET_LEDGER_PHRASE)} to confirm clearing the namespace-overrides ledger`);
|
|
99
|
-
const backupFile = backupLedgerForReset();
|
|
100
|
-
await writeLedger({ version: NAMESPACE_OVERRIDES_CURRENT_VERSION, overrides: [] });
|
|
101
|
-
if (backupFile) {
|
|
102
|
-
console.log(`${chalk.green('OK')} Ledger cleared. Backup: ${backupFile}`);
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
console.log(`${chalk.green('OK')} Ledger cleared (no prior ledger to back up).`);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
async function applyOneSuggestion(suggestion, auditId, customName) {
|
|
109
|
-
try {
|
|
110
|
-
const result = await applyRename({
|
|
111
|
-
suggestion,
|
|
112
|
-
request: customName ? { action: 'apply', auditId, customName } : { action: 'apply', auditId },
|
|
113
|
-
});
|
|
114
|
-
if (result.success) {
|
|
115
|
-
return {
|
|
116
|
-
collisionId: suggestion.collisionId,
|
|
117
|
-
status: 'applied',
|
|
118
|
-
message: result.summary,
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
return {
|
|
122
|
-
collisionId: suggestion.collisionId,
|
|
123
|
-
status: 'failed',
|
|
124
|
-
message: result.error?.message ?? 'rename failed',
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
catch (error) {
|
|
128
|
-
return {
|
|
129
|
-
collisionId: suggestion.collisionId,
|
|
130
|
-
status: 'failed',
|
|
131
|
-
message: sanitizeError(error),
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
async function runApplyAll(audit) {
|
|
136
|
-
await requireConfirmationPhrase(APPLY_ALL_PHRASE, `Type ${chalk.bold(APPLY_ALL_PHRASE)} to confirm applying every suggestion (${audit.renameSuggestions.length})`);
|
|
137
|
-
const outcomes = [];
|
|
138
|
-
for (const suggestion of audit.renameSuggestions) {
|
|
139
|
-
outcomes.push(await applyOneSuggestion(suggestion, audit.auditId));
|
|
140
|
-
}
|
|
141
|
-
printApplySummary(outcomes);
|
|
142
|
-
}
|
|
143
|
-
// ---------------------------------------------------------------------------
|
|
144
|
-
// Interactive prompt loop
|
|
145
|
-
// ---------------------------------------------------------------------------
|
|
146
|
-
async function runInteractiveLoop(audit) {
|
|
147
|
-
if (audit.renameSuggestions.length === 0) {
|
|
148
|
-
console.log(chalk.dim('No collisions found.'));
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
console.log(chalk.bold.blue(`\n=== Skillsmith — Namespace audit ===`));
|
|
152
|
-
console.log(chalk.dim(`Audit ID: ${audit.auditId}`));
|
|
153
|
-
console.log(chalk.dim(`Report: ${audit.reportPath}`));
|
|
154
|
-
console.log(`Found ${audit.renameSuggestions.length} collision(s).\n`);
|
|
155
|
-
const outcomes = [];
|
|
156
|
-
let index = 1;
|
|
157
|
-
const total = audit.renameSuggestions.length;
|
|
158
|
-
for (const suggestion of audit.renameSuggestions) {
|
|
159
|
-
console.log(chalk.bold(`[${index}/${total}] ${suggestion.reason}`));
|
|
160
|
-
console.log(` Current: ${suggestion.currentName}`);
|
|
161
|
-
console.log(` Suggested: ${chalk.cyan(suggestion.suggested)}`);
|
|
162
|
-
console.log(chalk.dim(` (default target = most-recently-installed entry, mtime desc)`));
|
|
163
|
-
// Default = `skip` (defensive). Plan §235-239 mandates a typed-
|
|
164
|
-
// confirmation gate for batch apply (`APPLY ALL`); per-item interactive
|
|
165
|
-
// apply MUST mirror that posture so an inattentive Enter-press cannot
|
|
166
|
-
// mutate user state. The user explicitly arrows down + Enter to apply.
|
|
167
|
-
const choice = (await select({
|
|
168
|
-
message: 'Action?',
|
|
169
|
-
choices: [
|
|
170
|
-
{ name: 'Skip — leave this collision unchanged (default, safe)', value: 'skip' },
|
|
171
|
-
{ name: 'Apply — accept the suggested rename', value: 'apply' },
|
|
172
|
-
{ name: 'Edit — provide a custom name', value: 'edit' },
|
|
173
|
-
{ name: 'Quit — abort the loop', value: 'quit' },
|
|
174
|
-
],
|
|
175
|
-
default: 'skip',
|
|
176
|
-
}));
|
|
177
|
-
if (choice === 'quit') {
|
|
178
|
-
console.log(chalk.yellow('Aborted by user.'));
|
|
179
|
-
break;
|
|
180
|
-
}
|
|
181
|
-
if (choice === 'skip') {
|
|
182
|
-
outcomes.push({
|
|
183
|
-
collisionId: suggestion.collisionId,
|
|
184
|
-
status: 'skipped',
|
|
185
|
-
message: 'skipped by user',
|
|
186
|
-
});
|
|
187
|
-
index += 1;
|
|
188
|
-
continue;
|
|
189
|
-
}
|
|
190
|
-
if (choice === 'edit') {
|
|
191
|
-
const customName = await input({
|
|
192
|
-
message: 'Enter custom name:',
|
|
193
|
-
validate: (v) => v.trim().length > 0 || 'Name cannot be empty',
|
|
194
|
-
});
|
|
195
|
-
outcomes.push(await applyOneSuggestion(suggestion, audit.auditId, customName.trim()));
|
|
196
|
-
index += 1;
|
|
197
|
-
continue;
|
|
198
|
-
}
|
|
199
|
-
// choice === 'apply'
|
|
200
|
-
outcomes.push(await applyOneSuggestion(suggestion, audit.auditId));
|
|
201
|
-
index += 1;
|
|
202
|
-
}
|
|
203
|
-
printApplySummary(outcomes);
|
|
204
|
-
}
|
|
205
|
-
// ---------------------------------------------------------------------------
|
|
206
|
-
// Output
|
|
207
|
-
// ---------------------------------------------------------------------------
|
|
208
|
-
function printApplySummary(outcomes) {
|
|
209
|
-
const applied = outcomes.filter((o) => o.status === 'applied').length;
|
|
210
|
-
const skipped = outcomes.filter((o) => o.status === 'skipped').length;
|
|
211
|
-
const failed = outcomes.filter((o) => o.status === 'failed').length;
|
|
212
|
-
console.log(chalk.bold('\nSummary:'));
|
|
213
|
-
console.log(` ${chalk.green('Applied')}: ${applied}`);
|
|
214
|
-
console.log(` ${chalk.yellow('Skipped')}: ${skipped}`);
|
|
215
|
-
console.log(` ${chalk.red('Failed')}: ${failed}`);
|
|
216
|
-
for (const outcome of outcomes) {
|
|
217
|
-
const tag = outcome.status === 'applied'
|
|
218
|
-
? chalk.green('OK')
|
|
219
|
-
: outcome.status === 'skipped'
|
|
220
|
-
? chalk.yellow('SKIP')
|
|
221
|
-
: chalk.red('FAIL');
|
|
222
|
-
console.log(` ${tag} ${outcome.collisionId} — ${outcome.message}`);
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
// ---------------------------------------------------------------------------
|
|
226
|
-
// Main entry
|
|
227
|
-
// ---------------------------------------------------------------------------
|
|
228
|
-
async function runAuditCollisions(options) {
|
|
229
|
-
// --reset-ledger short-circuits before any audit run.
|
|
230
|
-
if (options.resetLedger) {
|
|
231
|
-
// Touch readLedger to surface higher-version errors before clearing.
|
|
232
|
-
// (readLedger throws on namespace.ledger.version_unsupported.)
|
|
233
|
-
await readLedger();
|
|
234
|
-
await runResetLedger();
|
|
235
|
-
return;
|
|
236
|
-
}
|
|
237
|
-
// Resolve tier from license status — the detector gates the semantic
|
|
238
|
-
// pass on `audit_mode`, which is tier-defaulted via runInventoryAudit's
|
|
239
|
-
// resolver. We pass the resolved tier through so a Team user gets
|
|
240
|
-
// `power_user` (semantic) by default.
|
|
241
|
-
const status = await getLicenseStatus();
|
|
242
|
-
const tier = status.tier ?? 'community';
|
|
243
|
-
const audit = await runInventoryAudit({ deep: options.deep, tier });
|
|
244
|
-
if (options.json) {
|
|
245
|
-
console.log(JSON.stringify(audit, null, 2));
|
|
246
|
-
return;
|
|
247
|
-
}
|
|
248
|
-
if (options.reportOnly) {
|
|
249
|
-
console.log(`${chalk.green('OK')} Audit report written to ${audit.reportPath}`);
|
|
250
|
-
return;
|
|
251
|
-
}
|
|
252
|
-
if (options.applyAll) {
|
|
253
|
-
await runApplyAll(audit);
|
|
254
|
-
return;
|
|
255
|
-
}
|
|
256
|
-
await runInteractiveLoop(audit);
|
|
257
|
-
}
|
|
258
|
-
// ---------------------------------------------------------------------------
|
|
259
|
-
// Command factory
|
|
260
|
-
// ---------------------------------------------------------------------------
|
|
261
|
-
/**
|
|
262
|
-
* Build the `audit collisions` subcommand. Registered as a sibling of
|
|
263
|
-
* `audit advisories` in `audit.ts` (Step 0a).
|
|
264
|
-
*/
|
|
265
|
-
// SMI-5128: extracted from inline .action() closure so withTelemetry can wrap
|
|
266
|
-
// it at the export boundary (SMI-5040 coverage gate).
|
|
267
|
-
async function collisionsActionImpl(opts) {
|
|
268
|
-
try {
|
|
269
|
-
await runAuditCollisions({
|
|
270
|
-
deep: opts['deep'] === true,
|
|
271
|
-
json: opts['json'] === true,
|
|
272
|
-
applyAll: opts['applyAll'] === true,
|
|
273
|
-
reportOnly: opts['reportOnly'] === true,
|
|
274
|
-
resetLedger: opts['resetLedger'] === true,
|
|
275
|
-
});
|
|
276
|
-
}
|
|
277
|
-
catch (error) {
|
|
278
|
-
const message = error instanceof Error ? error.message : sanitizeError(error);
|
|
279
|
-
// Confirmation rejection is not a stack-trace-worthy failure —
|
|
280
|
-
// print the canonical message and exit non-zero.
|
|
281
|
-
if (message === CONFIRMATION_REJECTED_MESSAGE) {
|
|
282
|
-
console.error(chalk.yellow(message));
|
|
283
|
-
}
|
|
284
|
-
else {
|
|
285
|
-
console.error(chalk.red('Error:'), message);
|
|
286
|
-
}
|
|
287
|
-
process.exit(1);
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
export const collisionsAction = withTelemetry(collisionsActionImpl, {
|
|
291
|
-
source: 'cli',
|
|
292
|
-
extractSkillId: () => 'collisions',
|
|
293
|
-
extractFramework: () => 'cli',
|
|
294
|
-
});
|
|
295
|
-
export function createAuditCollisionsSubcommand() {
|
|
296
|
-
return new Command('collisions')
|
|
297
|
-
.description('Detect and resolve consumer-namespace collisions in ~/.claude/ ' +
|
|
298
|
-
'(Default: most-recently-installed entry, mtime descending)')
|
|
299
|
-
.option('--deep', 'Opt into the semantic-overlap detector pass', false)
|
|
300
|
-
.option('--json', 'Emit JSON to stdout; no prompts; no file mutation', false)
|
|
301
|
-
.option('--apply-all', 'Accept every suggestion (typed-confirmation gate: literal phrase `APPLY ALL`)', false)
|
|
302
|
-
.option('--report-only', 'Write the audit report; no prompts; no apply', false)
|
|
303
|
-
.option('--reset-ledger', 'Clear ~/.skillsmith/namespace-overrides.json (typed-confirmation gate: literal phrase `RESET LEDGER`)', false)
|
|
304
|
-
.action(collisionsAction);
|
|
305
|
-
}
|
|
306
|
-
// Internal exports for tests.
|
|
307
|
-
export { runAuditCollisions, runResetLedger, runApplyAll, runInteractiveLoop, requireConfirmationPhrase, applyOneSuggestion, APPLY_ALL_PHRASE, RESET_LEDGER_PHRASE, CONFIRMATION_REJECTED_MESSAGE, };
|
|
308
|
-
export default createAuditCollisionsSubcommand;
|
|
309
|
-
//# sourceMappingURL=audit-collisions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"audit-collisions.js","sourceRoot":"","sources":["../../../src/commands/audit-collisions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview Action implementation for `sklx audit sources`.
|
|
3
|
-
* @module @skillsmith/cli/commands/audit-sources.action
|
|
4
|
-
* @see SMI-5407
|
|
5
|
-
*
|
|
6
|
-
* Wires SourceRecoveryService (with real findCandidatesByName over the CLI DB)
|
|
7
|
-
* and backfillManifest. Applies an already_tracked overlay after recovery (the
|
|
8
|
-
* core service cannot know the current manifest state).
|
|
9
|
-
*
|
|
10
|
-
* Safety:
|
|
11
|
-
* - Dry-run unless --apply.
|
|
12
|
-
* - --apply requires typed phrase `BACKFILL SOURCES` (waived by --yes).
|
|
13
|
-
* - --write-frontmatter requires --force-write-frontmatter and prints a bold
|
|
14
|
-
* stderr WARNING before proceeding.
|
|
15
|
-
*
|
|
16
|
-
* Output:
|
|
17
|
-
* Human: === Skillsmith — Source Recovery === + table + footer summary.
|
|
18
|
-
* --json: { skills, summary } to stdout, no prompts, no file mutation.
|
|
19
|
-
*/
|
|
20
|
-
declare const BACKFILL_PHRASE = "BACKFILL SOURCES";
|
|
21
|
-
export interface AuditSourcesOptions {
|
|
22
|
-
skillsRoot: string | undefined;
|
|
23
|
-
apply: boolean;
|
|
24
|
-
yes: boolean;
|
|
25
|
-
set: string[] | undefined;
|
|
26
|
-
minConfidence: string;
|
|
27
|
-
json: boolean;
|
|
28
|
-
embedding: boolean;
|
|
29
|
-
catalogHint: boolean;
|
|
30
|
-
writeFrontmatter: boolean;
|
|
31
|
-
forceWriteFrontmatter: boolean;
|
|
32
|
-
db: string;
|
|
33
|
-
}
|
|
34
|
-
export declare function runAuditSources(options: AuditSourcesOptions): Promise<void>;
|
|
35
|
-
export declare const auditSourcesAction: (skillsRoot: string | undefined, opts: Record<string, unknown>) => Promise<void>;
|
|
36
|
-
export { BACKFILL_PHRASE };
|
|
37
|
-
//# sourceMappingURL=audit-sources.action.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"audit-sources.action.d.ts","sourceRoot":"","sources":["../../../src/commands/audit-sources.action.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA4BH,QAAA,MAAM,eAAe,qBAAqB,CAAA;AA8K1C,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,KAAK,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,OAAO,CAAA;IACZ,GAAG,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,SAAS,EAAE,OAAO,CAAA;IAClB,WAAW,EAAE,OAAO,CAAA;IACpB,gBAAgB,EAAE,OAAO,CAAA;IACzB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,EAAE,EAAE,MAAM,CAAA;CACX;AAMD,wBAAsB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwIjF;AAmCD,eAAO,MAAM,kBAAkB,kFAI7B,CAAA;AAEF,OAAO,EAAE,eAAe,EAAE,CAAA"}
|