@agentxm/client-core 0.2.0 → 0.3.2
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/dist/src/unstable/commands/operations/disable.d.ts +2 -2
- package/dist/src/unstable/commands/operations/disable.d.ts.map +1 -1
- package/dist/src/unstable/commands/operations/enable.d.ts +2 -2
- package/dist/src/unstable/commands/operations/enable.d.ts.map +1 -1
- package/dist/src/unstable/commands/operations/install.d.ts +1 -1
- package/dist/src/unstable/commands/operations/install.d.ts.map +1 -1
- package/dist/src/unstable/commands/operations/new-command.d.ts +2 -2
- package/dist/src/unstable/commands/operations/new-command.d.ts.map +1 -1
- package/dist/src/unstable/commands/operations/publish.d.ts +1 -1
- package/dist/src/unstable/commands/operations/publish.d.ts.map +1 -1
- package/dist/src/unstable/commands/operations/uninstall.d.ts +1 -1
- package/dist/src/unstable/commands/operations/uninstall.d.ts.map +1 -1
- package/dist/src/unstable/extensions/operations.d.ts +1 -1
- package/dist/src/unstable/extensions/operations.d.ts.map +1 -1
- package/dist/src/unstable/lint/catalog/index.d.ts +39 -0
- package/dist/src/unstable/lint/catalog/index.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/index.js +49 -0
- package/dist/src/unstable/lint/catalog/index.js.map +1 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.d.ts +31 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.js +41 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.js.map +1 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-present.d.ts +18 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-present.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-present.js +41 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-present.js.map +1 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.d.ts +26 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.js +34 -0
- package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.js.map +1 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/contexts.d.ts +61 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/contexts.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/contexts.js +46 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/contexts.js.map +1 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/platform.d.ts +53 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/platform.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/platform.js +90 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/platform.js.map +1 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/vft.d.ts +60 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/vft.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/vft.js +85 -0
- package/dist/src/unstable/lint/catalog/pack-accessor/vft.js.map +1 -0
- package/dist/src/unstable/lint/catalog/pack.d.ts +37 -0
- package/dist/src/unstable/lint/catalog/pack.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/pack.js +47 -0
- package/dist/src/unstable/lint/catalog/pack.js.map +1 -0
- package/dist/src/unstable/lint/catalog/shared/schema-rule.d.ts +59 -0
- package/dist/src/unstable/lint/catalog/shared/schema-rule.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/shared/schema-rule.js +99 -0
- package/dist/src/unstable/lint/catalog/shared/schema-rule.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.d.ts +31 -0
- package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.js +151 -0
- package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.d.ts +26 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.js +41 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-present.d.ts +18 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-present.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-present.js +46 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-present.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.d.ts +22 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.js +37 -0
- package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/skill-md-present.d.ts +17 -0
- package/dist/src/unstable/lint/catalog/skill/skill-md-present.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill/skill-md-present.js +38 -0
- package/dist/src/unstable/lint/catalog/skill/skill-md-present.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.d.ts +65 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.js +50 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/platform.d.ts +52 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/platform.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/platform.js +89 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/platform.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.d.ts +58 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.js +83 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.js.map +1 -0
- package/dist/src/unstable/lint/catalog/skill.d.ts +38 -0
- package/dist/src/unstable/lint/catalog/skill.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/skill.js +52 -0
- package/dist/src/unstable/lint/catalog/skill.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.d.ts +23 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.js +75 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-recognized.d.ts +23 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-recognized.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-recognized.js +76 -0
- package/dist/src/unstable/lint/catalog/workspace/agents-recognized.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/empty.d.ts +18 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/empty.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/empty.js +16 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/empty.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.d.ts +133 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.js +149 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.d.ts +25 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.js +30 -0
- package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/initialized.d.ts +22 -0
- package/dist/src/unstable/lint/catalog/workspace/initialized.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/initialized.js +55 -0
- package/dist/src/unstable/lint/catalog/workspace/initialized.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.d.ts +33 -0
- package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.js +125 -0
- package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.d.ts +19 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.js +145 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.d.ts +17 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.js +107 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.d.ts +22 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.js +163 -0
- package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.d.ts +28 -0
- package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.js +67 -0
- package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.d.ts +30 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.js +232 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.d.ts +26 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.js +129 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.d.ts +26 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.js +151 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.d.ts +29 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.js +149 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.d.ts +29 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.js +242 -0
- package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.d.ts +141 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.js +123 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.d.ts +38 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.js +311 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/platform.d.ts +60 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/platform.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/platform.js +201 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/platform.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.d.ts +65 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.js +95 -0
- package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.js.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace.d.ts +47 -0
- package/dist/src/unstable/lint/catalog/workspace.d.ts.map +1 -0
- package/dist/src/unstable/lint/catalog/workspace.js +80 -0
- package/dist/src/unstable/lint/catalog/workspace.js.map +1 -0
- package/dist/src/unstable/lint/cli.d.ts +297 -0
- package/dist/src/unstable/lint/cli.d.ts.map +1 -0
- package/dist/src/unstable/lint/cli.js +388 -0
- package/dist/src/unstable/lint/cli.js.map +1 -0
- package/dist/src/unstable/lint/compose-path.d.ts +27 -0
- package/dist/src/unstable/lint/compose-path.d.ts.map +1 -0
- package/dist/src/unstable/lint/compose-path.js +61 -0
- package/dist/src/unstable/lint/compose-path.js.map +1 -0
- package/dist/src/unstable/lint/config.d.ts +103 -0
- package/dist/src/unstable/lint/config.d.ts.map +1 -0
- package/dist/src/unstable/lint/config.js +137 -0
- package/dist/src/unstable/lint/config.js.map +1 -0
- package/dist/src/unstable/lint/context.d.ts +265 -0
- package/dist/src/unstable/lint/context.d.ts.map +1 -0
- package/dist/src/unstable/lint/context.js +21 -0
- package/dist/src/unstable/lint/context.js.map +1 -0
- package/dist/src/unstable/lint/evaluate.d.ts +68 -0
- package/dist/src/unstable/lint/evaluate.d.ts.map +1 -0
- package/dist/src/unstable/lint/evaluate.js +147 -0
- package/dist/src/unstable/lint/evaluate.js.map +1 -0
- package/dist/src/unstable/lint/index.d.ts +28 -0
- package/dist/src/unstable/lint/index.d.ts.map +1 -0
- package/dist/src/unstable/lint/index.js +35 -0
- package/dist/src/unstable/lint/index.js.map +1 -0
- package/dist/src/unstable/lint/issues-to-findings.d.ts +35 -0
- package/dist/src/unstable/lint/issues-to-findings.d.ts.map +1 -0
- package/dist/src/unstable/lint/issues-to-findings.js +97 -0
- package/dist/src/unstable/lint/issues-to-findings.js.map +1 -0
- package/dist/src/unstable/lint/rule.d.ts +139 -0
- package/dist/src/unstable/lint/rule.d.ts.map +1 -0
- package/dist/src/unstable/lint/rule.js +25 -0
- package/dist/src/unstable/lint/rule.js.map +1 -0
- package/dist/src/unstable/mcp-servers/operations/install.d.ts +1 -1
- package/dist/src/unstable/mcp-servers/operations/install.d.ts.map +1 -1
- package/dist/src/unstable/mcp-servers/operations/publish.d.ts +1 -1
- package/dist/src/unstable/mcp-servers/operations/publish.d.ts.map +1 -1
- package/dist/src/unstable/mcp-servers/operations/uninstall.d.ts +1 -1
- package/dist/src/unstable/mcp-servers/operations/uninstall.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/add-to-pack.d.ts +2 -2
- package/dist/src/unstable/packs/operations/add-to-pack.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/install.d.ts +2 -2
- package/dist/src/unstable/packs/operations/install.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/new-pack.d.ts +2 -2
- package/dist/src/unstable/packs/operations/new-pack.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/publish.d.ts +2 -2
- package/dist/src/unstable/packs/operations/publish.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/remove-from-pack.d.ts +2 -2
- package/dist/src/unstable/packs/operations/remove-from-pack.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/uninstall.d.ts +2 -2
- package/dist/src/unstable/packs/operations/uninstall.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/unpack.d.ts +2 -2
- package/dist/src/unstable/packs/operations/unpack.d.ts.map +1 -1
- package/dist/src/unstable/{workspace → plan}/apply-plan.d.ts +9 -0
- package/dist/src/unstable/plan/apply-plan.d.ts.map +1 -0
- package/dist/src/unstable/{workspace → plan}/apply-plan.js +10 -1
- package/dist/src/unstable/plan/apply-plan.js.map +1 -0
- package/dist/src/unstable/plan/index.d.ts +24 -0
- package/dist/src/unstable/plan/index.d.ts.map +1 -0
- package/dist/src/unstable/plan/index.js +28 -0
- package/dist/src/unstable/plan/index.js.map +1 -0
- package/dist/src/unstable/{workspace → plan}/plan.d.ts +6 -0
- package/dist/src/unstable/plan/plan.d.ts.map +1 -0
- package/dist/src/unstable/{workspace → plan}/plan.js +6 -0
- package/dist/src/unstable/plan/plan.js.map +1 -0
- package/dist/src/unstable/{workspace → plan}/resolve-plan.d.ts +30 -2
- package/dist/src/unstable/plan/resolve-plan.d.ts.map +1 -0
- package/dist/src/unstable/{workspace → plan}/resolve-plan.js +37 -6
- package/dist/src/unstable/plan/resolve-plan.js.map +1 -0
- package/dist/src/unstable/publish/manifest-policy.d.ts +8 -8
- package/dist/src/unstable/settings/index.d.ts +2 -0
- package/dist/src/unstable/settings/index.d.ts.map +1 -1
- package/dist/src/unstable/settings/index.js +1 -0
- package/dist/src/unstable/settings/index.js.map +1 -1
- package/dist/src/unstable/settings/schema.d.ts +3 -0
- package/dist/src/unstable/settings/schema.d.ts.map +1 -1
- package/dist/src/unstable/settings/schema.js +3 -0
- package/dist/src/unstable/settings/schema.js.map +1 -1
- package/dist/src/unstable/settings/settings.d.ts +10 -0
- package/dist/src/unstable/settings/settings.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/copy.d.ts +2 -2
- package/dist/src/unstable/skills/operations/copy.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/disable.d.ts +2 -2
- package/dist/src/unstable/skills/operations/disable.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/enable.d.ts +2 -2
- package/dist/src/unstable/skills/operations/enable.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/install.d.ts +2 -2
- package/dist/src/unstable/skills/operations/install.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/new-skill.d.ts +2 -2
- package/dist/src/unstable/skills/operations/new-skill.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/publish.d.ts +2 -2
- package/dist/src/unstable/skills/operations/publish.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/rename.d.ts +2 -2
- package/dist/src/unstable/skills/operations/rename.d.ts.map +1 -1
- package/dist/src/unstable/skills/operations/uninstall.d.ts +2 -2
- package/dist/src/unstable/skills/operations/uninstall.d.ts.map +1 -1
- package/dist/src/unstable/subagents/operations/disable.d.ts +2 -2
- package/dist/src/unstable/subagents/operations/disable.d.ts.map +1 -1
- package/dist/src/unstable/subagents/operations/enable.d.ts +2 -2
- package/dist/src/unstable/subagents/operations/enable.d.ts.map +1 -1
- package/dist/src/unstable/subagents/operations/publish.d.ts +2 -2
- package/dist/src/unstable/subagents/operations/publish.d.ts.map +1 -1
- package/dist/src/unstable/workflows/install-command/workflow.d.ts +1 -1
- package/dist/src/unstable/workflows/install-command/workflow.d.ts.map +1 -1
- package/dist/src/unstable/workflows/install-command/workflow.js +1 -1
- package/dist/src/unstable/workflows/install-command/workflow.js.map +1 -1
- package/dist/src/unstable/workflows/uninstall-command/workflow.d.ts +1 -1
- package/dist/src/unstable/workflows/uninstall-command/workflow.d.ts.map +1 -1
- package/dist/src/unstable/workflows/uninstall-command/workflow.js +1 -1
- package/dist/src/unstable/workflows/uninstall-command/workflow.js.map +1 -1
- package/dist/src/unstable/workspace/augment-plan.d.ts +1 -1
- package/dist/src/unstable/workspace/augment-plan.d.ts.map +1 -1
- package/dist/src/unstable/workspace/display-plan.d.ts +1 -1
- package/dist/src/unstable/workspace/display-plan.d.ts.map +1 -1
- package/dist/src/unstable/workspace/display-plan.js.map +1 -1
- package/dist/src/unstable/workspace/index.d.ts +0 -5
- package/dist/src/unstable/workspace/index.d.ts.map +1 -1
- package/dist/src/unstable/workspace/index.js +3 -7
- package/dist/src/unstable/workspace/index.js.map +1 -1
- package/dist/src/unstable/workspace/initialization.d.ts +15 -0
- package/dist/src/unstable/workspace/initialization.d.ts.map +1 -1
- package/dist/src/unstable/workspace/paths.d.ts +0 -18
- package/dist/src/unstable/workspace/paths.d.ts.map +1 -1
- package/dist/src/unstable/workspace/paths.js +12 -2
- package/dist/src/unstable/workspace/paths.js.map +1 -1
- package/dist/src/unstable/workspace/reconciliation.d.ts +1 -1
- package/dist/src/unstable/workspace/reconciliation.d.ts.map +1 -1
- package/dist/src/unstable/workspace/scan-plan-readiness.d.ts +1 -1
- package/dist/src/unstable/workspace/scan-plan-readiness.d.ts.map +1 -1
- package/dist/src/unstable/workspace/settings-validation/types.d.ts +11 -1
- package/dist/src/unstable/workspace/settings-validation/types.d.ts.map +1 -1
- package/package.json +10 -2
- package/site-content/__generated__/schemas/axm-lock.schema.json +727 -1124
- package/site-content/__generated__/schemas/axm-package-meta.schema.json +3 -16
- package/site-content/__generated__/schemas/command.schema.json +29 -130
- package/site-content/__generated__/schemas/extension-pack.schema.json +36 -154
- package/site-content/__generated__/schemas/mcp-server.schema.json +21 -134
- package/site-content/__generated__/schemas/settings.schema.json +111 -291
- package/site-content/__generated__/schemas/skill.schema.json +23 -143
- package/dist/src/unstable/workspace/apply-plan.d.ts.map +0 -1
- package/dist/src/unstable/workspace/apply-plan.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/check-def.d.ts +0 -29
- package/dist/src/unstable/workspace/doctor/check-def.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/check-def.js +0 -17
- package/dist/src/unstable/workspace/doctor/check-def.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/agents-configured.d.ts +0 -5
- package/dist/src/unstable/workspace/doctor/checks/agents-configured.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/agents-configured.js +0 -170
- package/dist/src/unstable/workspace/doctor/checks/agents-configured.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/extensions-active.d.ts +0 -4
- package/dist/src/unstable/workspace/doctor/checks/extensions-active.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/extensions-active.js +0 -238
- package/dist/src/unstable/workspace/doctor/checks/extensions-active.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/extensions-current.d.ts +0 -18
- package/dist/src/unstable/workspace/doctor/checks/extensions-current.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/extensions-current.js +0 -92
- package/dist/src/unstable/workspace/doctor/checks/extensions-current.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/extensions-installed.d.ts +0 -5
- package/dist/src/unstable/workspace/doctor/checks/extensions-installed.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/extensions-installed.js +0 -472
- package/dist/src/unstable/workspace/doctor/checks/extensions-installed.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/workspace-ready.d.ts +0 -5
- package/dist/src/unstable/workspace/doctor/checks/workspace-ready.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/checks/workspace-ready.js +0 -201
- package/dist/src/unstable/workspace/doctor/checks/workspace-ready.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/diagnose.d.ts +0 -49
- package/dist/src/unstable/workspace/doctor/diagnose.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/diagnose.js +0 -78
- package/dist/src/unstable/workspace/doctor/diagnose.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/index.d.ts +0 -8
- package/dist/src/unstable/workspace/doctor/index.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/index.js +0 -6
- package/dist/src/unstable/workspace/doctor/index.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/rollup.d.ts +0 -4
- package/dist/src/unstable/workspace/doctor/rollup.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/rollup.js +0 -28
- package/dist/src/unstable/workspace/doctor/rollup.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/runner.d.ts +0 -6
- package/dist/src/unstable/workspace/doctor/runner.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/runner.js +0 -179
- package/dist/src/unstable/workspace/doctor/runner.js.map +0 -1
- package/dist/src/unstable/workspace/doctor/types.d.ts +0 -127
- package/dist/src/unstable/workspace/doctor/types.d.ts.map +0 -1
- package/dist/src/unstable/workspace/doctor/types.js +0 -60
- package/dist/src/unstable/workspace/doctor/types.js.map +0 -1
- package/dist/src/unstable/workspace/plan.d.ts.map +0 -1
- package/dist/src/unstable/workspace/plan.js.map +0 -1
- package/dist/src/unstable/workspace/resolve-plan.d.ts.map +0 -1
- package/dist/src/unstable/workspace/resolve-plan.js.map +0 -1
- package/dist/src/unstable/workspace/sync.d.ts +0 -17
- package/dist/src/unstable/workspace/sync.d.ts.map +0 -1
- package/dist/src/unstable/workspace/sync.js +0 -142
- package/dist/src/unstable/workspace/sync.js.map +0 -1
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import * as FileSystem from "effect/FileSystem";
|
|
3
|
-
import * as Path from "effect/Path";
|
|
4
|
-
import { readAndValidateJsonFile } from "../../../schema/index.js";
|
|
5
|
-
import { SETTINGS_FILENAME, SettingsSchema } from "../../../settings/index.js";
|
|
6
|
-
import { defineCheck } from "../check-def.js";
|
|
7
|
-
import { CHECK_IDS } from "../types.js";
|
|
8
|
-
const MAX_SCHEMA_ISSUES = 3;
|
|
9
|
-
const INIT_WORKSPACE_ACTION = {
|
|
10
|
-
label: "Initialize workspace",
|
|
11
|
-
description: "Create .axm/ and settings.json",
|
|
12
|
-
command: "axm init",
|
|
13
|
-
};
|
|
14
|
-
const EDIT_SETTINGS_ACTION = {
|
|
15
|
-
label: "Edit settings.json",
|
|
16
|
-
description: "Fix settings.json and rerun doctor",
|
|
17
|
-
};
|
|
18
|
-
const FIX_PERMISSIONS_ACTION = {
|
|
19
|
-
label: "Fix filesystem permissions",
|
|
20
|
-
description: "Grant axm access to this workspace",
|
|
21
|
-
};
|
|
22
|
-
const CHECK_FILESYSTEM_ACCESS_ACTION = {
|
|
23
|
-
label: "Check filesystem access",
|
|
24
|
-
description: "Resolve the settings.json read failure and rerun doctor",
|
|
25
|
-
};
|
|
26
|
-
const canAccess = (filePath, options) => Effect.gen(function* () {
|
|
27
|
-
const fs = yield* FileSystem.FileSystem;
|
|
28
|
-
return yield* Effect.match(fs.access(filePath, options), {
|
|
29
|
-
onFailure: () => false,
|
|
30
|
-
onSuccess: () => true,
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
const prepareContext = (workspace) => Effect.gen(function* () {
|
|
34
|
-
const fs = yield* FileSystem.FileSystem;
|
|
35
|
-
const path = yield* Path.Path;
|
|
36
|
-
const axmDirExists = yield* Effect.match(fs.exists(workspace.path), {
|
|
37
|
-
onFailure: () => false,
|
|
38
|
-
onSuccess: (value) => value,
|
|
39
|
-
});
|
|
40
|
-
const settingsPath = path.join(workspace.path, SETTINGS_FILENAME);
|
|
41
|
-
if (!axmDirExists) {
|
|
42
|
-
return {
|
|
43
|
-
axmDir: workspace.path,
|
|
44
|
-
axmDirExists,
|
|
45
|
-
axmDirWritable: false,
|
|
46
|
-
settingsPath,
|
|
47
|
-
settingsReadable: false,
|
|
48
|
-
settingsReadResult: { _tag: "missing" },
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
const axmDirWritable = yield* canAccess(workspace.path, { writable: true });
|
|
52
|
-
const settingsReadable = yield* canAccess(settingsPath, { readable: true });
|
|
53
|
-
const settingsReadResult = yield* readAndValidateJsonFile(settingsPath, SettingsSchema, {
|
|
54
|
-
maxSchemaIssues: MAX_SCHEMA_ISSUES,
|
|
55
|
-
});
|
|
56
|
-
return {
|
|
57
|
-
axmDir: workspace.path,
|
|
58
|
-
axmDirExists,
|
|
59
|
-
axmDirWritable,
|
|
60
|
-
settingsPath,
|
|
61
|
-
settingsReadable,
|
|
62
|
-
settingsReadResult,
|
|
63
|
-
};
|
|
64
|
-
});
|
|
65
|
-
const directoryMissingDiagnostic = {
|
|
66
|
-
id: "workspace-ready.directory-missing",
|
|
67
|
-
run: (ctx) => {
|
|
68
|
-
if (ctx.axmDirExists) {
|
|
69
|
-
return Effect.succeed([]);
|
|
70
|
-
}
|
|
71
|
-
const finding = {
|
|
72
|
-
id: "workspace-ready.directory-missing",
|
|
73
|
-
severity: "error",
|
|
74
|
-
message: ".axm directory not found",
|
|
75
|
-
subject: { kind: "workspace", ref: ctx.axmDir },
|
|
76
|
-
action: INIT_WORKSPACE_ACTION,
|
|
77
|
-
};
|
|
78
|
-
return Effect.succeed([finding]);
|
|
79
|
-
},
|
|
80
|
-
};
|
|
81
|
-
const settingsMissingDiagnostic = {
|
|
82
|
-
id: "workspace-ready.settings-missing",
|
|
83
|
-
run: (ctx) => {
|
|
84
|
-
if (!ctx.axmDirExists || ctx.settingsReadResult._tag !== "missing") {
|
|
85
|
-
return Effect.succeed([]);
|
|
86
|
-
}
|
|
87
|
-
const finding = {
|
|
88
|
-
id: "workspace-ready.settings-missing",
|
|
89
|
-
severity: "error",
|
|
90
|
-
message: `${SETTINGS_FILENAME} not found at ${ctx.settingsPath}`,
|
|
91
|
-
subject: { kind: "file", ref: ctx.settingsPath },
|
|
92
|
-
action: INIT_WORKSPACE_ACTION,
|
|
93
|
-
};
|
|
94
|
-
return Effect.succeed([finding]);
|
|
95
|
-
},
|
|
96
|
-
};
|
|
97
|
-
const notWritableDiagnostic = {
|
|
98
|
-
id: "workspace-ready.not-writable",
|
|
99
|
-
run: (ctx) => {
|
|
100
|
-
if (!ctx.axmDirExists) {
|
|
101
|
-
return Effect.succeed([]);
|
|
102
|
-
}
|
|
103
|
-
if (!ctx.axmDirWritable) {
|
|
104
|
-
return Effect.succeed([
|
|
105
|
-
{
|
|
106
|
-
id: "workspace-ready.not-writable",
|
|
107
|
-
severity: "error",
|
|
108
|
-
message: ".axm directory is not writable",
|
|
109
|
-
subject: { kind: "workspace", ref: ctx.axmDir },
|
|
110
|
-
action: FIX_PERMISSIONS_ACTION,
|
|
111
|
-
},
|
|
112
|
-
]);
|
|
113
|
-
}
|
|
114
|
-
if (ctx.settingsReadResult._tag === "missing" || ctx.settingsReadable) {
|
|
115
|
-
return Effect.succeed([]);
|
|
116
|
-
}
|
|
117
|
-
return Effect.succeed([
|
|
118
|
-
{
|
|
119
|
-
id: "workspace-ready.not-writable",
|
|
120
|
-
severity: "error",
|
|
121
|
-
message: `${SETTINGS_FILENAME} cannot be accessed with the current file permissions`,
|
|
122
|
-
subject: { kind: "file", ref: ctx.settingsPath },
|
|
123
|
-
action: FIX_PERMISSIONS_ACTION,
|
|
124
|
-
},
|
|
125
|
-
]);
|
|
126
|
-
},
|
|
127
|
-
};
|
|
128
|
-
const settingsUnparseableDiagnostic = {
|
|
129
|
-
id: "workspace-ready.settings-unparseable",
|
|
130
|
-
run: (ctx) => {
|
|
131
|
-
const result = ctx.settingsReadResult;
|
|
132
|
-
if (result._tag !== "unparseable") {
|
|
133
|
-
return Effect.succeed([]);
|
|
134
|
-
}
|
|
135
|
-
const detailLines = [result.error];
|
|
136
|
-
if (result.location !== undefined) {
|
|
137
|
-
detailLines.push(result.location);
|
|
138
|
-
}
|
|
139
|
-
const finding = {
|
|
140
|
-
id: "workspace-ready.settings-unparseable",
|
|
141
|
-
severity: "error",
|
|
142
|
-
message: `${SETTINGS_FILENAME} is not valid JSON`,
|
|
143
|
-
subject: { kind: "file", ref: ctx.settingsPath },
|
|
144
|
-
details: detailLines.join("\n"),
|
|
145
|
-
action: EDIT_SETTINGS_ACTION,
|
|
146
|
-
};
|
|
147
|
-
return Effect.succeed([finding]);
|
|
148
|
-
},
|
|
149
|
-
};
|
|
150
|
-
const settingsSchemaInvalidDiagnostic = {
|
|
151
|
-
id: "workspace-ready.settings-schema-invalid",
|
|
152
|
-
run: (ctx) => {
|
|
153
|
-
const result = ctx.settingsReadResult;
|
|
154
|
-
if (result._tag !== "schema-invalid") {
|
|
155
|
-
return Effect.succeed([]);
|
|
156
|
-
}
|
|
157
|
-
const finding = {
|
|
158
|
-
id: "workspace-ready.settings-schema-invalid",
|
|
159
|
-
severity: "error",
|
|
160
|
-
message: `${SETTINGS_FILENAME} does not match the expected schema`,
|
|
161
|
-
subject: { kind: "file", ref: ctx.settingsPath },
|
|
162
|
-
details: result.issues.join("\n"),
|
|
163
|
-
action: EDIT_SETTINGS_ACTION,
|
|
164
|
-
};
|
|
165
|
-
return Effect.succeed([finding]);
|
|
166
|
-
},
|
|
167
|
-
};
|
|
168
|
-
const settingsReadFailureDiagnostic = {
|
|
169
|
-
id: "workspace-ready.settings-read-failure",
|
|
170
|
-
run: (ctx) => {
|
|
171
|
-
const result = ctx.settingsReadResult;
|
|
172
|
-
if (result._tag !== "read-failure" || !ctx.settingsReadable) {
|
|
173
|
-
return Effect.succeed([]);
|
|
174
|
-
}
|
|
175
|
-
const finding = {
|
|
176
|
-
id: "workspace-ready.settings-read-failure",
|
|
177
|
-
severity: "error",
|
|
178
|
-
message: `${SETTINGS_FILENAME} could not be read`,
|
|
179
|
-
subject: { kind: "file", ref: ctx.settingsPath },
|
|
180
|
-
details: result.error,
|
|
181
|
-
action: CHECK_FILESYSTEM_ACCESS_ACTION,
|
|
182
|
-
};
|
|
183
|
-
return Effect.succeed([finding]);
|
|
184
|
-
},
|
|
185
|
-
};
|
|
186
|
-
export const makeWorkspaceReadyCheck = (workspace) => defineCheck({
|
|
187
|
-
id: CHECK_IDS.workspaceReady,
|
|
188
|
-
title: "Workspace is ready",
|
|
189
|
-
description: "Verifies .axm exists and settings.json is readable, parseable JSON, and matches the schema.",
|
|
190
|
-
dependsOn: [],
|
|
191
|
-
prepareContext: prepareContext(workspace),
|
|
192
|
-
diagnostics: [
|
|
193
|
-
directoryMissingDiagnostic,
|
|
194
|
-
notWritableDiagnostic,
|
|
195
|
-
settingsMissingDiagnostic,
|
|
196
|
-
settingsReadFailureDiagnostic,
|
|
197
|
-
settingsUnparseableDiagnostic,
|
|
198
|
-
settingsSchemaInvalidDiagnostic,
|
|
199
|
-
],
|
|
200
|
-
});
|
|
201
|
-
//# sourceMappingURL=workspace-ready.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-ready.js","sourceRoot":"","sources":["../../../../../../src/unstable/workspace/doctor/checks/workspace-ready.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import type * as FileSystem from "effect/FileSystem";
|
|
3
|
-
import type * as Path from "effect/Path";
|
|
4
|
-
import type * as Scope from "effect/Scope";
|
|
5
|
-
import type { WorkspaceContextOptions } from "../service-interface.js";
|
|
6
|
-
export declare const diagnoseWorkspaceDoctor: (options: Pick<WorkspaceContextOptions, "scope" | "projectRoot" | "builtInSources">) => Effect.Effect<{
|
|
7
|
-
readonly scope: "project" | "user";
|
|
8
|
-
readonly checks: readonly {
|
|
9
|
-
readonly title: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly status: "warn" | "pass" | "fail" | "skip";
|
|
12
|
-
readonly id: string;
|
|
13
|
-
readonly dependsOn: readonly string[];
|
|
14
|
-
readonly findings: readonly {
|
|
15
|
-
readonly message: string;
|
|
16
|
-
readonly id: string;
|
|
17
|
-
readonly severity: "error" | "warn" | "info";
|
|
18
|
-
readonly details?: string | undefined;
|
|
19
|
-
readonly subject?: {
|
|
20
|
-
readonly ref: string;
|
|
21
|
-
readonly kind: "file" | "agent" | "workspace" | "extension";
|
|
22
|
-
} | undefined;
|
|
23
|
-
readonly action?: {
|
|
24
|
-
readonly description: string;
|
|
25
|
-
readonly label: string;
|
|
26
|
-
readonly command?: string | undefined;
|
|
27
|
-
readonly docs?: string | undefined;
|
|
28
|
-
} | undefined;
|
|
29
|
-
}[];
|
|
30
|
-
readonly skipReason?: string | undefined;
|
|
31
|
-
}[];
|
|
32
|
-
readonly workspacePath: string;
|
|
33
|
-
readonly healthy: boolean;
|
|
34
|
-
readonly summary: {
|
|
35
|
-
readonly checks: {
|
|
36
|
-
readonly skipped: number;
|
|
37
|
-
readonly failed: number;
|
|
38
|
-
readonly info: number;
|
|
39
|
-
readonly passed: number;
|
|
40
|
-
readonly warned: number;
|
|
41
|
-
};
|
|
42
|
-
readonly findings: {
|
|
43
|
-
readonly errors: number;
|
|
44
|
-
readonly warnings: number;
|
|
45
|
-
readonly info: number;
|
|
46
|
-
};
|
|
47
|
-
};
|
|
48
|
-
}, import("../../app-error/app-error.ts").AppError, FileSystem.FileSystem | Path.Path | Scope.Scope>;
|
|
49
|
-
//# sourceMappingURL=diagnose.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"diagnose.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/diagnose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,KAAK,IAAI,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAO3C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAoCvE,eAAO,MAAM,uBAAuB,GAClC,SAAS,IAAI,CAAC,uBAAuB,EAAE,OAAO,GAAG,aAAa,GAAG,gBAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oGA2DhF,CAAC"}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import * as Layer from "effect/Layer";
|
|
3
|
-
import * as Option from "effect/Option";
|
|
4
|
-
import { CodingAgentRepository, CodingAgentRepositoryLive } from "../../agents/index.js";
|
|
5
|
-
import { createRegistryClient } from "../../registry/index.js";
|
|
6
|
-
import { SourceHostProviders, SourceHostProvidersLive } from "../../source-resolution/index.js";
|
|
7
|
-
import { locateWorkspace } from "../paths.js";
|
|
8
|
-
import { Workspace } from "../service-interface.js";
|
|
9
|
-
import { loadWorkspace } from "../service.js";
|
|
10
|
-
import { agentsConfiguredCheck } from "./checks/agents-configured.js";
|
|
11
|
-
import { extensionsActiveCheck } from "./checks/extensions-active.js";
|
|
12
|
-
import { makeExtensionsCurrentCheck } from "./checks/extensions-current.js";
|
|
13
|
-
import { extensionsInstalledCheck } from "./checks/extensions-installed.js";
|
|
14
|
-
import { makeWorkspaceReadyCheck } from "./checks/workspace-ready.js";
|
|
15
|
-
import { summarize } from "./rollup.js";
|
|
16
|
-
import { runCheckGraph } from "./runner.js";
|
|
17
|
-
const staticDependentChecks = [
|
|
18
|
-
agentsConfiguredCheck,
|
|
19
|
-
extensionsInstalledCheck,
|
|
20
|
-
extensionsActiveCheck,
|
|
21
|
-
];
|
|
22
|
-
const skipCheck = (check, failedTitle) => ({
|
|
23
|
-
id: check.id,
|
|
24
|
-
title: check.title,
|
|
25
|
-
description: check.description,
|
|
26
|
-
dependsOn: check.dependsOn,
|
|
27
|
-
status: "skip",
|
|
28
|
-
skipReason: `Depends on "${failedTitle}", which failed.`,
|
|
29
|
-
findings: [],
|
|
30
|
-
});
|
|
31
|
-
export const diagnoseWorkspaceDoctor = (options) => Effect.gen(function* () {
|
|
32
|
-
const workspace = yield* locateWorkspace(options.scope, options.projectRoot);
|
|
33
|
-
const workspaceReadyCheck = makeWorkspaceReadyCheck(workspace);
|
|
34
|
-
const rootReport = yield* runCheckGraph([workspaceReadyCheck], workspace);
|
|
35
|
-
const rootCheck = rootReport.checks[0];
|
|
36
|
-
if (rootCheck !== undefined && rootCheck.status === "fail") {
|
|
37
|
-
const checks = [
|
|
38
|
-
rootCheck,
|
|
39
|
-
...staticDependentChecks.map((check) => skipCheck(check, rootCheck.title)),
|
|
40
|
-
];
|
|
41
|
-
const summary = summarize(checks);
|
|
42
|
-
return {
|
|
43
|
-
scope: workspace.scope,
|
|
44
|
-
workspacePath: workspace.path,
|
|
45
|
-
healthy: summary.findings.errors === 0,
|
|
46
|
-
summary,
|
|
47
|
-
checks,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
const workspaceService = yield* loadWorkspace(options);
|
|
51
|
-
const workspaceLayer = Workspace.layer(workspaceService);
|
|
52
|
-
const sourceProviders = yield* Effect.serviceOption(SourceHostProviders);
|
|
53
|
-
const codingAgentRepository = yield* Effect.serviceOption(CodingAgentRepository);
|
|
54
|
-
const sourceProvidersLayer = Option.match(sourceProviders, {
|
|
55
|
-
onNone: () => Layer.provide(SourceHostProvidersLive, workspaceLayer),
|
|
56
|
-
onSome: (service) => Layer.succeed(SourceHostProviders, service),
|
|
57
|
-
});
|
|
58
|
-
const codingAgentRepositoryLayer = Option.match(codingAgentRepository, {
|
|
59
|
-
onNone: () => CodingAgentRepositoryLive,
|
|
60
|
-
onSome: (service) => Layer.succeed(CodingAgentRepository, service),
|
|
61
|
-
});
|
|
62
|
-
const registrySources = yield* workspaceService
|
|
63
|
-
.getRegistrySourceHosts()
|
|
64
|
-
.pipe(Effect.orElseSucceed(() => []));
|
|
65
|
-
const firstSource = registrySources[0];
|
|
66
|
-
const dynamicChecks = firstSource === undefined
|
|
67
|
-
? []
|
|
68
|
-
: [makeExtensionsCurrentCheck(yield* createRegistryClient(firstSource.location.href))];
|
|
69
|
-
const checks = [
|
|
70
|
-
workspaceReadyCheck,
|
|
71
|
-
agentsConfiguredCheck,
|
|
72
|
-
extensionsInstalledCheck,
|
|
73
|
-
extensionsActiveCheck,
|
|
74
|
-
...dynamicChecks,
|
|
75
|
-
];
|
|
76
|
-
return yield* runCheckGraph(checks, workspace).pipe(Effect.provide(Layer.mergeAll(workspaceLayer, sourceProvidersLayer, codingAgentRepositoryLayer)));
|
|
77
|
-
});
|
|
78
|
-
//# sourceMappingURL=diagnose.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"diagnose.js","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/diagnose.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export type { Action, Check, CheckStatus, Finding, FindingSeverity, FindingSubject, ReportSummary, WorkspaceDoctorReport, } from "./types.js";
|
|
2
|
-
export { ActionSchema, CheckSchema, CheckStatusSchema, FindingSchema, FindingSeveritySchema, FindingSubjectSchema, ReportSummarySchema, WorkspaceDoctorReportSchema, } from "./types.js";
|
|
3
|
-
export { runCheckGraph } from "./runner.js";
|
|
4
|
-
export { rollupFindings, summarize } from "./rollup.js";
|
|
5
|
-
export type { CheckDef, CheckDefInput, DiagnosticDef, DiagnosticResult } from "./check-def.js";
|
|
6
|
-
export { defineCheck } from "./check-def.js";
|
|
7
|
-
export { diagnoseWorkspaceDoctor } from "./diagnose.js";
|
|
8
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,MAAM,EACN,KAAK,EACL,WAAW,EACX,OAAO,EACP,eAAe,EACf,cAAc,EACd,aAAa,EACb,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExD,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { ActionSchema, CheckSchema, CheckStatusSchema, FindingSchema, FindingSeveritySchema, FindingSubjectSchema, ReportSummarySchema, WorkspaceDoctorReportSchema, } from "./types.js";
|
|
2
|
-
export { runCheckGraph } from "./runner.js";
|
|
3
|
-
export { rollupFindings, summarize } from "./rollup.js";
|
|
4
|
-
export { defineCheck } from "./check-def.js";
|
|
5
|
-
export { diagnoseWorkspaceDoctor } from "./diagnose.js";
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/index.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { Check, CheckStatus, Finding, ReportSummary } from "./types.js";
|
|
2
|
-
export declare const rollupFindings: (findings: ReadonlyArray<Finding>) => Exclude<CheckStatus, "skip">;
|
|
3
|
-
export declare const summarize: (checks: ReadonlyArray<Check>) => ReportSummary;
|
|
4
|
-
//# sourceMappingURL=rollup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/rollup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE7E,eAAO,MAAM,cAAc,GAAI,UAAU,aAAa,CAAC,OAAO,CAAC,KAAG,OAAO,CAAC,WAAW,EAAE,MAAM,CAQ5F,CAAC;AAKF,eAAO,MAAM,SAAS,GAAI,QAAQ,aAAa,CAAC,KAAK,CAAC,KAAG,aAoBxD,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export const rollupFindings = (findings) => {
|
|
2
|
-
if (findings.some((f) => f.severity === "error")) {
|
|
3
|
-
return "fail";
|
|
4
|
-
}
|
|
5
|
-
if (findings.some((f) => f.severity === "warn")) {
|
|
6
|
-
return "warn";
|
|
7
|
-
}
|
|
8
|
-
return "pass";
|
|
9
|
-
};
|
|
10
|
-
const countBy = (items, predicate) => items.reduce((n, item) => (predicate(item) ? n + 1 : n), 0);
|
|
11
|
-
export const summarize = (checks) => {
|
|
12
|
-
const findings = checks.flatMap((c) => c.findings);
|
|
13
|
-
return {
|
|
14
|
-
checks: {
|
|
15
|
-
passed: countBy(checks, (c) => c.status === "pass"),
|
|
16
|
-
warned: countBy(checks, (c) => c.status === "warn"),
|
|
17
|
-
failed: countBy(checks, (c) => c.status === "fail"),
|
|
18
|
-
skipped: countBy(checks, (c) => c.status === "skip"),
|
|
19
|
-
info: countBy(checks, (c) => c.status === "pass" && c.findings.some((f) => f.severity === "info")),
|
|
20
|
-
},
|
|
21
|
-
findings: {
|
|
22
|
-
errors: countBy(findings, (f) => f.severity === "error"),
|
|
23
|
-
warnings: countBy(findings, (f) => f.severity === "warn"),
|
|
24
|
-
info: countBy(findings, (f) => f.severity === "info"),
|
|
25
|
-
},
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
//# sourceMappingURL=rollup.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rollup.js","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/rollup.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAgC,EAAgC,EAAE;IAC/F,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;QACjD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAI,KAAuB,EAAE,SAA+B,EAAU,EAAE,CACtF,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAE9D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAA4B,EAAiB,EAAE;IACvE,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEnD,OAAO;QACL,MAAM,EAAE;YACN,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;YACnD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;YACnD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;YACnD,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;YACpD,IAAI,EAAE,OAAO,CACX,MAAM,EACN,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAC5E;SACF;QACD,QAAQ,EAAE;YACR,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC;YACxD,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC;YACzD,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC;SACtD;KACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import type { WorkspaceLocation } from "../paths.js";
|
|
3
|
-
import { type CheckDef } from "./check-def.js";
|
|
4
|
-
import type { WorkspaceDoctorReport } from "./types.js";
|
|
5
|
-
export declare const runCheckGraph: <Deps>(checks: ReadonlyArray<CheckDef<Deps>>, workspace: WorkspaceLocation) => Effect.Effect<WorkspaceDoctorReport, never, Deps>;
|
|
6
|
-
//# sourceMappingURL=runner.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAA4C,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEzF,OAAO,KAAK,EAAkB,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAuNxE,eAAO,MAAM,aAAa,GAAI,IAAI,EAChC,QAAQ,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EACrC,WAAW,iBAAiB,KAC3B,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,KAAK,EAAE,IAAI,CAyC/C,CAAC"}
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { FINDING_ID_PATTERN, matchesCheckIdPrefix } from "./check-def.js";
|
|
3
|
-
import { rollupFindings, summarize } from "./rollup.js";
|
|
4
|
-
const validateGraph = (checks) => {
|
|
5
|
-
const ids = new Set(checks.map((c) => c.id));
|
|
6
|
-
for (const check of checks) {
|
|
7
|
-
for (const depId of check.dependsOn) {
|
|
8
|
-
if (!ids.has(depId)) {
|
|
9
|
-
return { kind: "missing", checkId: check.id, missingId: depId };
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
const WHITE = 0;
|
|
14
|
-
const GRAY = 1;
|
|
15
|
-
const BLACK = 2;
|
|
16
|
-
const color = new Map();
|
|
17
|
-
const depsOf = new Map();
|
|
18
|
-
for (const c of checks) {
|
|
19
|
-
color.set(c.id, WHITE);
|
|
20
|
-
depsOf.set(c.id, c.dependsOn);
|
|
21
|
-
}
|
|
22
|
-
const hasCycleFrom = (id) => {
|
|
23
|
-
color.set(id, GRAY);
|
|
24
|
-
for (const depId of depsOf.get(id) ?? []) {
|
|
25
|
-
const depColor = color.get(depId) ?? BLACK;
|
|
26
|
-
if (depColor === GRAY)
|
|
27
|
-
return true;
|
|
28
|
-
if (depColor === WHITE && hasCycleFrom(depId))
|
|
29
|
-
return true;
|
|
30
|
-
}
|
|
31
|
-
color.set(id, BLACK);
|
|
32
|
-
return false;
|
|
33
|
-
};
|
|
34
|
-
for (const check of checks) {
|
|
35
|
-
if (color.get(check.id) === WHITE && hasCycleFrom(check.id)) {
|
|
36
|
-
const remaining = [...color.entries()].filter(([, c]) => c !== BLACK).map(([id]) => id);
|
|
37
|
-
return { kind: "cycle", remaining };
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
return undefined;
|
|
41
|
-
};
|
|
42
|
-
// ---------------------------------------------------------------------------
|
|
43
|
-
// Level computation (groups of independent checks for concurrent execution)
|
|
44
|
-
// ---------------------------------------------------------------------------
|
|
45
|
-
const computeLevels = (checks) => {
|
|
46
|
-
const byId = new Map();
|
|
47
|
-
const registrationIndex = new Map();
|
|
48
|
-
for (const [i, check] of checks.entries()) {
|
|
49
|
-
byId.set(check.id, check);
|
|
50
|
-
registrationIndex.set(check.id, i);
|
|
51
|
-
}
|
|
52
|
-
const inDegree = new Map();
|
|
53
|
-
const dependents = new Map();
|
|
54
|
-
for (const check of checks) {
|
|
55
|
-
inDegree.set(check.id, check.dependsOn.length);
|
|
56
|
-
for (const depId of check.dependsOn) {
|
|
57
|
-
const list = dependents.get(depId);
|
|
58
|
-
if (list === undefined) {
|
|
59
|
-
dependents.set(depId, [check.id]);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
list.push(check.id);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
let ready = checks.filter((c) => (inDegree.get(c.id) ?? 0) === 0).map((c) => c.id);
|
|
67
|
-
const levels = [];
|
|
68
|
-
while (ready.length > 0) {
|
|
69
|
-
const sorted = [...ready].sort((a, b) => (registrationIndex.get(a) ?? 0) - (registrationIndex.get(b) ?? 0));
|
|
70
|
-
levels.push(sorted.map((id) => byId.get(id)).filter((c) => c !== undefined));
|
|
71
|
-
const nextReady = [];
|
|
72
|
-
for (const id of sorted) {
|
|
73
|
-
for (const dependentId of dependents.get(id) ?? []) {
|
|
74
|
-
const updated = (inDegree.get(dependentId) ?? 0) - 1;
|
|
75
|
-
inDegree.set(dependentId, updated);
|
|
76
|
-
if (updated === 0) {
|
|
77
|
-
nextReady.push(dependentId);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
ready = nextReady;
|
|
82
|
-
}
|
|
83
|
-
return levels;
|
|
84
|
-
};
|
|
85
|
-
// ---------------------------------------------------------------------------
|
|
86
|
-
// Finding sanitization
|
|
87
|
-
// ---------------------------------------------------------------------------
|
|
88
|
-
const sanitizeFindings = (checkId, findings) => findings.map((finding) => {
|
|
89
|
-
const idIsValid = FINDING_ID_PATTERN.test(finding.id) && matchesCheckIdPrefix(finding.id, checkId);
|
|
90
|
-
if (idIsValid) {
|
|
91
|
-
return finding;
|
|
92
|
-
}
|
|
93
|
-
return {
|
|
94
|
-
id: `${checkId}.invalid-finding-id`,
|
|
95
|
-
severity: "error",
|
|
96
|
-
message: `Diagnostic emitted a finding with an invalid id: "${finding.id}". Finding ids must match the pattern "<check-id>.<kebab-suffix>".`,
|
|
97
|
-
};
|
|
98
|
-
});
|
|
99
|
-
// ---------------------------------------------------------------------------
|
|
100
|
-
// Single check execution
|
|
101
|
-
// ---------------------------------------------------------------------------
|
|
102
|
-
const runOneCheck = (check, rootFailureTitles) => Effect.gen(function* () {
|
|
103
|
-
for (const depId of check.dependsOn) {
|
|
104
|
-
const rootTitle = rootFailureTitles.get(depId);
|
|
105
|
-
if (rootTitle !== undefined) {
|
|
106
|
-
return {
|
|
107
|
-
id: check.id,
|
|
108
|
-
title: check.title,
|
|
109
|
-
description: check.description,
|
|
110
|
-
dependsOn: check.dependsOn,
|
|
111
|
-
status: "skip",
|
|
112
|
-
skipReason: `Depends on "${rootTitle}", which failed.`,
|
|
113
|
-
findings: [],
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
const diagnosticResults = yield* check.runDiagnostics;
|
|
118
|
-
const findings = sanitizeFindings(check.id, diagnosticResults.flatMap((r) => r.findings));
|
|
119
|
-
const status = rollupFindings(findings);
|
|
120
|
-
return {
|
|
121
|
-
id: check.id,
|
|
122
|
-
title: check.title,
|
|
123
|
-
description: check.description,
|
|
124
|
-
dependsOn: check.dependsOn,
|
|
125
|
-
status,
|
|
126
|
-
findings,
|
|
127
|
-
};
|
|
128
|
-
});
|
|
129
|
-
const processLevel = (level, state) => Effect.map(Effect.all(level.map((check) => Effect.map(runOneCheck(check, state.rootFailureTitles), (result) => ({ check, result }))), { concurrency: "unbounded" }), (pairs) => {
|
|
130
|
-
const nextResults = new Map(state.results);
|
|
131
|
-
const nextRootFailureTitles = new Map(state.rootFailureTitles);
|
|
132
|
-
for (const { check, result } of pairs) {
|
|
133
|
-
nextResults.set(check.id, result);
|
|
134
|
-
if (result.status === "fail") {
|
|
135
|
-
nextRootFailureTitles.set(check.id, check.title);
|
|
136
|
-
}
|
|
137
|
-
else if (result.status === "skip") {
|
|
138
|
-
for (const depId of check.dependsOn) {
|
|
139
|
-
const inherited = nextRootFailureTitles.get(depId);
|
|
140
|
-
if (inherited !== undefined) {
|
|
141
|
-
nextRootFailureTitles.set(check.id, inherited);
|
|
142
|
-
break;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
return { results: nextResults, rootFailureTitles: nextRootFailureTitles };
|
|
148
|
-
});
|
|
149
|
-
export const runCheckGraph = (checks, workspace) => Effect.gen(function* () {
|
|
150
|
-
const error = validateGraph(checks);
|
|
151
|
-
if (error?.kind === "missing") {
|
|
152
|
-
return yield* Effect.die(new Error(`doctor check "${error.checkId}" declares missing dependency "${error.missingId}"`));
|
|
153
|
-
}
|
|
154
|
-
if (error?.kind === "cycle") {
|
|
155
|
-
return yield* Effect.die(new Error(`doctor check graph contains a cycle among: ${error.remaining.join(", ")}`));
|
|
156
|
-
}
|
|
157
|
-
const levels = computeLevels(checks);
|
|
158
|
-
// Levels are dependent (each depends on prior results), so sequential iteration is correct.
|
|
159
|
-
// Within each level, checks run concurrently via Effect.all.
|
|
160
|
-
let state = {
|
|
161
|
-
results: new Map(),
|
|
162
|
-
rootFailureTitles: new Map(),
|
|
163
|
-
};
|
|
164
|
-
for (const level of levels) {
|
|
165
|
-
state = yield* processLevel(level, state);
|
|
166
|
-
}
|
|
167
|
-
const orderedChecks = checks
|
|
168
|
-
.map((check) => state.results.get(check.id))
|
|
169
|
-
.filter((result) => result !== undefined);
|
|
170
|
-
const summary = summarize(orderedChecks);
|
|
171
|
-
return {
|
|
172
|
-
scope: workspace.scope,
|
|
173
|
-
workspacePath: workspace.path,
|
|
174
|
-
healthy: summary.findings.errors === 0,
|
|
175
|
-
summary,
|
|
176
|
-
checks: orderedChecks,
|
|
177
|
-
};
|
|
178
|
-
});
|
|
179
|
-
//# sourceMappingURL=runner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../../src/unstable/workspace/doctor/runner.ts"],"names":[],"mappings":"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"}
|