@canonical/pragma-cli 0.30.0 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/pragma +0 -0
- package/package.json +27 -40
- package/src/bin.ts +292 -11
- package/src/capabilities/block/blockList.verb.ts +150 -0
- package/src/capabilities/block/index.ts +25 -0
- package/src/capabilities/block/pack.ts +155 -0
- package/src/capabilities/block/parity.test.ts +180 -0
- package/src/capabilities/block/tierChain.ts +78 -0
- package/src/capabilities/capabilities/capabilities.render.ts +89 -0
- package/src/capabilities/capabilities/capabilities.test.ts +131 -0
- package/src/capabilities/capabilities/capabilities.verb.ts +48 -0
- package/src/capabilities/capabilities/catalog.ts +144 -0
- package/src/capabilities/capabilities/hints.ts +221 -0
- package/src/capabilities/capabilities/index.ts +13 -0
- package/src/capabilities/capabilities/types.ts +58 -0
- package/src/capabilities/colophon/collectColophon.ts +68 -0
- package/src/capabilities/colophon/colophon.render.test.ts +87 -0
- package/src/capabilities/colophon/colophon.render.ts +38 -0
- package/src/capabilities/colophon/colophon.test.ts +241 -0
- package/src/capabilities/colophon/colophon.verb.ts +41 -0
- package/src/capabilities/colophon/index.ts +6 -0
- package/src/capabilities/colophon/markdownTerminal.test.ts +50 -0
- package/src/capabilities/colophon/markdownTerminal.ts +85 -0
- package/src/capabilities/colophon/pragmaColophon.ts +66 -0
- package/src/capabilities/colophon/types.ts +29 -0
- package/src/capabilities/config/collectConfigShow.ts +32 -0
- package/src/capabilities/config/field.render.ts +28 -0
- package/src/capabilities/config/field.test.ts +188 -0
- package/src/capabilities/config/fields.ts +152 -0
- package/src/capabilities/config/index.ts +6 -0
- package/src/capabilities/config/runField.ts +59 -0
- package/src/capabilities/config/runSet.ts +38 -0
- package/src/capabilities/config/set.test.ts +207 -0
- package/src/capabilities/config/set.verb.ts +70 -0
- package/src/capabilities/config/show.render.ts +61 -0
- package/src/capabilities/config/show.verb.ts +45 -0
- package/src/capabilities/config/types.ts +27 -0
- package/src/capabilities/create/byteEquality.subprocess.test.ts +88 -0
- package/src/capabilities/create/byteEquality.test.ts +222 -0
- package/src/capabilities/create/compiledCreate.subprocess.test.ts +152 -0
- package/src/capabilities/create/create.mcp.test.ts +139 -0
- package/src/capabilities/create/create.render.ts +50 -0
- package/src/capabilities/create/create.test.ts +403 -0
- package/src/capabilities/create/create.verb.ts +435 -0
- package/src/capabilities/create/cwdJail.test.ts +129 -0
- package/src/capabilities/create/generatorToVerbSpec.ts +111 -0
- package/src/capabilities/create/index.ts +25 -0
- package/src/capabilities/create/pathJail.ts +73 -0
- package/src/capabilities/create/pickGenerator.ts +63 -0
- package/src/capabilities/create/templates.embedded.generated.ts +53 -0
- package/src/capabilities/create/types.ts +8 -0
- package/src/capabilities/doctor/checks/checkConfigFile.ts +41 -0
- package/src/capabilities/doctor/checks/checkKeStore.ts +39 -0
- package/src/capabilities/doctor/checks/checkMcpCommands.ts +108 -0
- package/src/capabilities/doctor/checks/checkMcpConfigured.ts +61 -0
- package/src/capabilities/doctor/checks/checkNodeVersion.ts +25 -0
- package/src/capabilities/doctor/checks/checkPackageRefs.ts +73 -0
- package/src/capabilities/doctor/checks/checkPragmaVersion.ts +22 -0
- package/src/capabilities/doctor/checks/checkShellCompletions.test.ts +111 -0
- package/src/capabilities/doctor/checks/checkShellCompletions.ts +131 -0
- package/src/capabilities/doctor/checks/checkSkillsSymlinked.ts +60 -0
- package/src/capabilities/doctor/doctor.render.ts +116 -0
- package/src/capabilities/doctor/doctor.test.ts +179 -0
- package/src/capabilities/doctor/doctor.verb.ts +46 -0
- package/src/capabilities/doctor/index.ts +6 -0
- package/src/capabilities/doctor/runChecks.ts +76 -0
- package/src/capabilities/doctor/types.ts +41 -0
- package/src/capabilities/emptyRecovery.test.ts +112 -0
- package/src/capabilities/graph/index.ts +21 -0
- package/src/capabilities/graph/inspect.render.ts +38 -0
- package/src/capabilities/graph/inspect.test.ts +80 -0
- package/src/capabilities/graph/inspect.verb.ts +51 -0
- package/src/capabilities/graph/query.render.ts +77 -0
- package/src/capabilities/graph/query.test.ts +156 -0
- package/src/capabilities/graph/query.verb.ts +58 -0
- package/src/capabilities/graph/runQuery.ts +49 -0
- package/src/capabilities/index.ts +54 -0
- package/src/capabilities/info/collectInfo.ts +76 -0
- package/src/capabilities/info/index.ts +6 -0
- package/src/capabilities/info/info.render.ts +72 -0
- package/src/capabilities/info/info.test.ts +127 -0
- package/src/capabilities/info/info.verb.ts +46 -0
- package/src/capabilities/info/types.ts +42 -0
- package/src/capabilities/lazy.test.ts +89 -0
- package/src/capabilities/meta/complete.verb.ts +52 -0
- package/src/capabilities/meta/index.ts +15 -0
- package/src/capabilities/meta/mcp.verb.ts +35 -0
- package/src/capabilities/modifier/index.ts +15 -0
- package/src/capabilities/modifier/pack.ts +64 -0
- package/src/capabilities/ontology/index.ts +12 -0
- package/src/capabilities/ontology/ontology.test.ts +94 -0
- package/src/capabilities/ontology/queries.ts +197 -0
- package/src/capabilities/ontology/render.ts +87 -0
- package/src/capabilities/ontology/verbs.ts +170 -0
- package/src/capabilities/prompt/index.ts +18 -0
- package/src/capabilities/prompt/prompt.render.ts +70 -0
- package/src/capabilities/prompt/prompt.test.ts +119 -0
- package/src/capabilities/prompt/types.ts +30 -0
- package/src/capabilities/prompt/verbs.ts +93 -0
- package/src/capabilities/resources/index.ts +15 -0
- package/src/capabilities/resources/provider.ts +231 -0
- package/src/capabilities/resources/resources.test.ts +114 -0
- package/src/capabilities/roundtrip.test.ts +107 -0
- package/src/capabilities/setup/index.ts +6 -0
- package/src/capabilities/setup/operations/setupCompletions.ts +108 -0
- package/src/capabilities/setup/operations/setupGenerator.ts +307 -0
- package/src/capabilities/setup/operations/setupLsp.ts +61 -0
- package/src/capabilities/setup/operations/setupMcp.ts +85 -0
- package/src/capabilities/setup/operations/setupSkills.ts +199 -0
- package/src/capabilities/setup/setup.render.ts +49 -0
- package/src/capabilities/setup/setup.test.ts +351 -0
- package/src/capabilities/setup/setup.verb.ts +209 -0
- package/src/capabilities/setup/shell.ts +85 -0
- package/src/capabilities/setup/types.ts +42 -0
- package/src/capabilities/shared/assertExecOk.ts +106 -0
- package/src/capabilities/shared/packageManager.ts +62 -0
- package/src/capabilities/shared/registry.ts +70 -0
- package/src/capabilities/skill/discover.ts +178 -0
- package/src/capabilities/skill/index.ts +12 -0
- package/src/capabilities/skill/render.ts +60 -0
- package/src/capabilities/skill/skill.test.ts +142 -0
- package/src/capabilities/skill/verbs.ts +100 -0
- package/src/capabilities/sources/collectStatus.ts +87 -0
- package/src/capabilities/sources/index.ts +15 -0
- package/src/capabilities/sources/installSkills.ts +124 -0
- package/src/capabilities/sources/runUpdate.ts +407 -0
- package/src/capabilities/sources/sources.test.ts +642 -0
- package/src/capabilities/sources/status.render.ts +56 -0
- package/src/capabilities/sources/status.verb.ts +42 -0
- package/src/capabilities/sources/types.ts +51 -0
- package/src/capabilities/sources/update.render.ts +35 -0
- package/src/capabilities/sources/update.verb.ts +76 -0
- package/src/capabilities/standard/index.ts +18 -0
- package/src/capabilities/standard/pack.ts +128 -0
- package/src/capabilities/standard/parity.test.ts +208 -0
- package/src/capabilities/surface.test.ts +208 -0
- package/src/capabilities/tier/index.ts +19 -0
- package/src/capabilities/tier/lookup.render.ts +34 -0
- package/src/capabilities/tier/lookup.test.ts +68 -0
- package/src/capabilities/tier/lookup.verb.ts +44 -0
- package/src/capabilities/tier/pack.ts +28 -0
- package/src/capabilities/tier/runLookup.ts +59 -0
- package/src/capabilities/token/addConfig.render.ts +27 -0
- package/src/capabilities/token/addConfig.test.ts +62 -0
- package/src/capabilities/token/addConfig.verb.ts +40 -0
- package/src/capabilities/token/index.ts +19 -0
- package/src/capabilities/token/pack.ts +58 -0
- package/src/capabilities/token/runAddConfig.ts +95 -0
- package/src/capabilities/upgrade/index.ts +6 -0
- package/src/capabilities/upgrade/runUpgrade.ts +119 -0
- package/src/capabilities/upgrade/types.ts +21 -0
- package/src/capabilities/upgrade/upgrade.render.ts +55 -0
- package/src/capabilities/upgrade/upgrade.test.ts +372 -0
- package/src/capabilities/upgrade/upgrade.verb.ts +56 -0
- package/src/constants.test.ts +33 -0
- package/src/constants.ts +38 -68
- package/src/index.ts +27 -134
- package/src/kernel/completion/__snapshots__/emitScripts.test.ts.snap +340 -0
- package/src/kernel/completion/bashDrive.test.ts +73 -0
- package/src/kernel/completion/complete.test.ts +101 -0
- package/src/kernel/completion/complete.ts +77 -0
- package/src/kernel/completion/emitScripts.test.ts +173 -0
- package/src/kernel/completion/emitScripts.ts +122 -0
- package/src/kernel/completion/entitySource.test.ts +198 -0
- package/src/kernel/completion/entitySource.ts +269 -0
- package/src/kernel/completion/index.ts +42 -0
- package/src/kernel/completion/model.test.ts +405 -0
- package/src/kernel/completion/model.ts +259 -0
- package/src/kernel/completion/parse.test.ts +338 -0
- package/src/kernel/completion/parse.ts +294 -0
- package/src/kernel/completion/rank.test.ts +100 -0
- package/src/kernel/completion/rank.ts +118 -0
- package/src/kernel/completion/resolve.test.ts +204 -0
- package/src/kernel/completion/resolve.ts +133 -0
- package/src/kernel/completion/safety.test.ts +374 -0
- package/src/kernel/completion/templates/bash.ts +249 -0
- package/src/kernel/completion/templates/fish.ts +245 -0
- package/src/kernel/completion/templates/shared.ts +134 -0
- package/src/kernel/completion/templates/zsh.ts +246 -0
- package/src/kernel/completion/types.ts +153 -0
- package/src/kernel/config/__snapshots__/firstRun.test.ts.snap +11 -0
- package/src/kernel/config/defaults.ts +28 -0
- package/src/kernel/config/evaluateProjectConfig.ts +119 -0
- package/src/kernel/config/findProjectConfig.ts +45 -0
- package/src/kernel/config/firstRun.test.ts +60 -0
- package/src/kernel/config/firstRun.ts +91 -0
- package/src/kernel/config/globalConfig.ts +94 -0
- package/src/kernel/config/index.ts +35 -0
- package/src/kernel/config/paths.ts +39 -0
- package/src/kernel/config/readConfig.test.ts +245 -0
- package/src/kernel/config/readConfig.ts +94 -0
- package/src/kernel/config/schema.ts +56 -0
- package/src/kernel/config/types.ts +106 -0
- package/src/kernel/config/writeConfigField.ts +82 -0
- package/src/kernel/error/PragmaError.test.ts +119 -0
- package/src/kernel/error/PragmaError.ts +182 -0
- package/src/kernel/error/constants.ts +38 -0
- package/src/kernel/error/fromTaskError.test.ts +83 -0
- package/src/kernel/error/fromTaskError.ts +80 -0
- package/src/kernel/error/index.ts +23 -0
- package/src/kernel/error/recovery.test.ts +60 -0
- package/src/kernel/error/recovery.ts +49 -0
- package/src/kernel/error/renderError.ts +101 -0
- package/src/kernel/error/serialize.ts +28 -0
- package/src/kernel/error/types.ts +62 -0
- package/src/kernel/packs/collect.test.ts +138 -0
- package/src/kernel/packs/collect.ts +108 -0
- package/src/kernel/packs/compile.test.ts +229 -0
- package/src/kernel/packs/compile.ts +315 -0
- package/src/kernel/packs/disclosure.test.ts +200 -0
- package/src/kernel/packs/disclosure.ts +98 -0
- package/src/kernel/packs/glob.ts +39 -0
- package/src/kernel/packs/graphql/buildLookupDocument.ts +397 -0
- package/src/kernel/packs/graphql/fetchGraphqlLookup.ts +217 -0
- package/src/kernel/packs/graphql/nameMap.ts +67 -0
- package/src/kernel/packs/graphqlSource.test.ts +383 -0
- package/src/kernel/packs/iri.ts +78 -0
- package/src/kernel/packs/renderPack.ts +196 -0
- package/src/kernel/packs/resolveEntity.ts +232 -0
- package/src/kernel/packs/runBodies.ts +157 -0
- package/src/kernel/packs/sample.ts +60 -0
- package/src/kernel/packs/schema.ts +328 -0
- package/src/kernel/packs/sparql/applyFilters.ts +83 -0
- package/src/kernel/packs/sparql/applySearch.ts +33 -0
- package/src/kernel/packs/sparql/buildLookupQuery.ts +180 -0
- package/src/kernel/packs/sparql/escape.ts +22 -0
- package/src/kernel/packs/sparql/runSelect.test.ts +80 -0
- package/src/kernel/packs/sparql/runSelect.ts +84 -0
- package/src/kernel/packs/toolDescription.test.ts +81 -0
- package/src/kernel/packs/types.ts +337 -0
- package/src/kernel/packs/uniqueness.ts +35 -0
- package/src/kernel/project/cli/buildProgram.test.ts +387 -0
- package/src/kernel/project/cli/buildProgram.ts +280 -0
- package/src/kernel/project/cli/dispatch.test.ts +288 -0
- package/src/kernel/project/cli/dispatch.ts +334 -0
- package/src/kernel/project/cli/exitCodes.test.ts +59 -0
- package/src/kernel/project/cli/exitCodes.ts +68 -0
- package/src/kernel/project/cli/globalFlags.test.ts +99 -0
- package/src/kernel/project/cli/globalFlags.ts +149 -0
- package/src/kernel/project/cli/helpFormat.ts +58 -0
- package/src/kernel/project/cli/index.ts +21 -0
- package/src/kernel/project/cli/interactionSeam.test.ts +99 -0
- package/src/kernel/project/cli/rootHelp.ts +218 -0
- package/src/kernel/project/cli/suggest.test.ts +54 -0
- package/src/kernel/project/cli/suggest.ts +67 -0
- package/src/kernel/project/cli/suggestNames.ts +122 -0
- package/src/kernel/project/cli/verbHelp.test.ts +138 -0
- package/src/kernel/project/cli/verbHelp.ts +144 -0
- package/src/kernel/project/mcp/buildServer.ts +70 -0
- package/src/kernel/project/mcp/envelope.ts +44 -0
- package/src/kernel/project/mcp/index.ts +8 -0
- package/src/kernel/project/mcp/instructions.ts +48 -0
- package/src/kernel/project/mcp/parity.test.ts +72 -0
- package/src/kernel/project/mcp/prompts/prompts.test.ts +96 -0
- package/src/kernel/project/mcp/prompts/provider.ts +74 -0
- package/src/kernel/project/mcp/prompts/source.ts +194 -0
- package/src/kernel/project/mcp/registerVerb.test.ts +238 -0
- package/src/kernel/project/mcp/registerVerb.ts +296 -0
- package/src/kernel/project/mcp/serve.ts +34 -0
- package/src/kernel/project/mcp/toolDescriptions.test.ts +80 -0
- package/src/kernel/render/__snapshots__/renderers.test.ts.snap +127 -0
- package/src/kernel/render/compactUri.ts +25 -0
- package/src/kernel/render/contracts.ts +72 -0
- package/src/kernel/render/disclosure.ts +44 -0
- package/src/kernel/render/envelope.ts +50 -0
- package/src/kernel/render/formatters.ts +30 -0
- package/src/kernel/render/index.ts +30 -0
- package/src/kernel/render/prefixes.ts +21 -0
- package/src/kernel/render/renderers.test.ts +171 -0
- package/src/kernel/render/renderers.ts +429 -0
- package/src/kernel/render/writeStdout.test.ts +43 -0
- package/src/kernel/render/writeStdout.ts +49 -0
- package/src/kernel/runtime/boot.test.ts +69 -0
- package/src/kernel/runtime/boot.ts +59 -0
- package/src/kernel/runtime/facade.test.ts +125 -0
- package/src/kernel/runtime/facade.ts +47 -0
- package/src/kernel/runtime/graphpack/build.ts +148 -0
- package/src/kernel/runtime/graphpack/buildIndex.ts +229 -0
- package/src/kernel/runtime/graphpack/embedded/pack.generated.ts +8 -0
- package/src/kernel/runtime/graphpack/embedded/pack.index.generated.ts +4 -0
- package/src/kernel/runtime/graphpack/embedded/sample.ttl +39 -0
- package/src/kernel/runtime/graphpack/embedded.ts +70 -0
- package/src/kernel/runtime/graphpack/graphpack.test.ts +153 -0
- package/src/kernel/runtime/graphpack/hash.ts +46 -0
- package/src/kernel/runtime/graphpack/index.ts +21 -0
- package/src/kernel/runtime/graphpack/manifest.ts +55 -0
- package/src/kernel/runtime/graphpack/read.ts +102 -0
- package/src/kernel/runtime/graphpack/types.ts +111 -0
- package/src/kernel/runtime/index.ts +15 -0
- package/src/kernel/runtime/loadSession.ts +56 -0
- package/src/kernel/runtime/lock.ts +90 -0
- package/src/kernel/runtime/paths.ts +37 -0
- package/src/kernel/runtime/probe.test.ts +16 -0
- package/src/kernel/runtime/probe.ts +39 -0
- package/src/kernel/runtime/readEntity.ts +83 -0
- package/src/kernel/runtime/refs/gitOps.ts +88 -0
- package/src/kernel/runtime/refs/parseRef.test.ts +34 -0
- package/src/kernel/runtime/refs/parseRef.ts +103 -0
- package/src/kernel/runtime/refs/resolve.ts +320 -0
- package/src/kernel/runtime/resolveSources.test.ts +154 -0
- package/src/kernel/runtime/resolveSources.ts +66 -0
- package/src/kernel/runtime/store.test.ts +94 -0
- package/src/kernel/runtime/store.ts +90 -0
- package/src/kernel/runtime/storeless.test.ts +86 -0
- package/src/kernel/runtime/types.ts +210 -0
- package/src/kernel/runtime/wasmEmbed.test.ts +142 -0
- package/src/kernel/spec/asVerb.ts +23 -0
- package/src/kernel/spec/emitSurface.test.ts +65 -0
- package/src/kernel/spec/emitSurface.ts +223 -0
- package/src/kernel/spec/index.ts +34 -0
- package/src/kernel/spec/surfaceConformance.test.ts +94 -0
- package/src/kernel/spec/surfaceConformance.ts +135 -0
- package/src/kernel/spec/types.ts +233 -0
- package/src/kernel/spec/validate.test.ts +81 -0
- package/src/kernel/spec/validate.ts +125 -0
- package/src/testing/PARITY_GAPS.test.ts +32 -0
- package/src/testing/PARITY_GAPS.ts +179 -0
- package/src/testing/behavioral/README.md +164 -0
- package/src/testing/behavioral/agentSession.mcp.test.ts +160 -0
- package/src/testing/behavioral/autoLlm.e2e.test.ts +44 -0
- package/src/testing/behavioral/completion.test.ts +132 -0
- package/src/testing/behavioral/disclosure.test.ts +103 -0
- package/src/testing/behavioral/errorMatrix.mcp.test.ts +120 -0
- package/src/testing/behavioral/errorMatrix.storeless.test.ts +123 -0
- package/src/testing/behavioral/exitCodes.e2e.test.ts +53 -0
- package/src/testing/behavioral/firstRun.e2e.test.ts +40 -0
- package/src/testing/behavioral/harness.foundation.test.ts +136 -0
- package/src/testing/behavioral/journeys.cli.test.ts +129 -0
- package/src/testing/behavioral/liveReadSurface.ts +80 -0
- package/src/testing/behavioral/mcpServe.e2e.test.ts +21 -0
- package/src/testing/behavioral/mcpSurface.test.ts +139 -0
- package/src/testing/behavioral/parity.test.ts +224 -0
- package/src/testing/behavioral/rootCli.e2e.test.ts +62 -0
- package/src/testing/eval/__snapshots__/eval.test.ts.snap +201 -0
- package/src/testing/eval/cases/assembly.ts +195 -0
- package/src/testing/eval/cases/effectful.ts +245 -0
- package/src/testing/eval/cases/readNouns.ts +232 -0
- package/src/testing/eval/cases/stable.ts +163 -0
- package/src/testing/eval/eval.test.ts +74 -0
- package/src/testing/eval/harness.ts +91 -0
- package/src/testing/eval/report.ts +58 -0
- package/src/testing/fixtures/blockGraph.ts +112 -0
- package/src/testing/fixtures/completionFixture.ts +239 -0
- package/src/testing/fixtures/fixtureCapability.ts +175 -0
- package/src/testing/fixtures/graph/canonical.ts +184 -0
- package/src/testing/fixtures/packs/recipe.ts +78 -0
- package/src/testing/helpers/fixtureGraph.ts +148 -0
- package/src/testing/helpers/golden.ts +45 -0
- package/src/testing/helpers/packRuntime.ts +118 -0
- package/src/testing/helpers/parity.ts +86 -0
- package/src/testing/helpers/projectCli.ts +35 -0
- package/src/testing/helpers/projectMcp.ts +145 -0
- package/src/testing/helpers/runCli.ts +128 -0
- package/src/testing/perf/budgets.test.ts +164 -0
- package/src/testing/perf/budgets.ts +37 -0
- package/src/testing/perf/globalSetup.ts +30 -0
- package/src/testing/perf/measure.ts +97 -0
- package/src/testing/setupXdgIsolation.ts +17 -5
- package/src/types.ts +42 -0
- package/README.md +0 -429
- package/src/bin.test.ts +0 -54
- package/src/compile-validation.runner.ts +0 -137
- package/src/compile-validation.ts +0 -191
- package/src/completions/computeSocketPath.test.ts +0 -26
- package/src/completions/computeSocketPath.ts +0 -16
- package/src/completions/constants.ts +0 -18
- package/src/completions/handleQuery.test.ts +0 -93
- package/src/completions/handleQuery.ts +0 -30
- package/src/completions/index.ts +0 -14
- package/src/completions/queryCompletions.test.ts +0 -100
- package/src/completions/queryCompletions.ts +0 -61
- package/src/completions/querySocket.test.ts +0 -70
- package/src/completions/querySocket.ts +0 -44
- package/src/completions/startCompletionsServer.test.ts +0 -74
- package/src/completions/startCompletionsServer.ts +0 -75
- package/src/completions/startCompletionsServer.unit.test.ts +0 -131
- package/src/completions/waitForSocket.test.ts +0 -27
- package/src/completions/waitForSocket.ts +0 -27
- package/src/config/configExists.ts +0 -14
- package/src/config/defaultConfig.test.ts +0 -33
- package/src/config/defaultConfig.ts +0 -59
- package/src/config/defaults.json +0 -17
- package/src/config/findProjectConfigPath.test.ts +0 -53
- package/src/config/findProjectConfigPath.ts +0 -36
- package/src/config/index.ts +0 -21
- package/src/config/mergeConfigFileUpdate.ts +0 -58
- package/src/config/parseConfigValues.ts +0 -215
- package/src/config/readConfig.test.ts +0 -395
- package/src/config/readConfig.ts +0 -21
- package/src/config/readConfigLayers.test.ts +0 -107
- package/src/config/readConfigLayers.ts +0 -115
- package/src/config/resolveConfigPath.test.ts +0 -20
- package/src/config/resolveConfigPath.ts +0 -11
- package/src/config/resolveGlobalConfigPath.ts +0 -13
- package/src/config/resolveWriteConfigPath.test.ts +0 -53
- package/src/config/resolveWriteConfigPath.ts +0 -31
- package/src/config/types.ts +0 -121
- package/src/config/writeConfig.ts +0 -37
- package/src/domains/block/blockConfig.ts +0 -97
- package/src/domains/block/commands/index.ts +0 -5
- package/src/domains/block/commands/list.test.ts +0 -111
- package/src/domains/block/commands/list.ts +0 -11
- package/src/domains/block/commands/lookup.test.ts +0 -187
- package/src/domains/block/commands/lookup.ts +0 -14
- package/src/domains/block/commands/sample.ts +0 -55
- package/src/domains/block/formatters/index.ts +0 -5
- package/src/domains/block/formatters/list.test.ts +0 -107
- package/src/domains/block/formatters/list.ts +0 -50
- package/src/domains/block/formatters/lookup.test.ts +0 -318
- package/src/domains/block/formatters/lookup.ts +0 -149
- package/src/domains/block/formatters/sample.ts +0 -21
- package/src/domains/block/formatters/types.ts +0 -16
- package/src/domains/block/helpers/index.ts +0 -4
- package/src/domains/block/helpers/resolveAspects.test.ts +0 -64
- package/src/domains/block/helpers/resolveAspects.ts +0 -35
- package/src/domains/block/index.ts +0 -25
- package/src/domains/block/mcp/index.ts +0 -2
- package/src/domains/block/mcp/specs.ts +0 -67
- package/src/domains/block/operations/index.ts +0 -5
- package/src/domains/block/operations/list.test.ts +0 -80
- package/src/domains/block/operations/list.ts +0 -72
- package/src/domains/block/operations/lookup.test.ts +0 -129
- package/src/domains/block/operations/lookup.ts +0 -446
- package/src/domains/block/operations/sample.ts +0 -41
- package/src/domains/block/orchestration/blockEmptyError.test.ts +0 -26
- package/src/domains/block/orchestration/blockEmptyError.ts +0 -19
- package/src/domains/block/orchestration/buildBlockFilters.ts +0 -12
- package/src/domains/block/orchestration/enrichBlocks.ts +0 -41
- package/src/domains/block/orchestration/index.ts +0 -5
- package/src/domains/block/orchestration/resolveBlockList.ts +0 -39
- package/src/domains/block/orchestration/resolveBlockLookup.ts +0 -35
- package/src/domains/block/stories.test.ts +0 -28
- package/src/domains/block/stories.ts +0 -254
- package/src/domains/block/types.ts +0 -30
- package/src/domains/config/commands/channel.test.ts +0 -112
- package/src/domains/config/commands/channel.ts +0 -86
- package/src/domains/config/commands/configScope.ts +0 -46
- package/src/domains/config/commands/framework.test.ts +0 -105
- package/src/domains/config/commands/framework.ts +0 -91
- package/src/domains/config/commands/index.ts +0 -6
- package/src/domains/config/commands/show.test.ts +0 -61
- package/src/domains/config/commands/show.ts +0 -11
- package/src/domains/config/commands/tier.test.ts +0 -95
- package/src/domains/config/commands/tier.ts +0 -84
- package/src/domains/config/commands/trace.test.ts +0 -165
- package/src/domains/config/commands/trace.ts +0 -83
- package/src/domains/config/formatters/channel.test.ts +0 -70
- package/src/domains/config/formatters/channel.ts +0 -37
- package/src/domains/config/formatters/framework.ts +0 -37
- package/src/domains/config/formatters/index.ts +0 -6
- package/src/domains/config/formatters/show.test.ts +0 -153
- package/src/domains/config/formatters/show.ts +0 -89
- package/src/domains/config/formatters/tier.test.ts +0 -86
- package/src/domains/config/formatters/tier.ts +0 -48
- package/src/domains/config/formatters/trace.ts +0 -28
- package/src/domains/config/index.ts +0 -36
- package/src/domains/config/mcp/index.ts +0 -2
- package/src/domains/config/mcp/specs.ts +0 -100
- package/src/domains/config/operations/index.ts +0 -6
- package/src/domains/config/operations/show.test.ts +0 -78
- package/src/domains/config/operations/show.ts +0 -48
- package/src/domains/config/operations/types.ts +0 -20
- package/src/domains/config/operations/validateChannel.test.ts +0 -36
- package/src/domains/config/operations/validateChannel.ts +0 -24
- package/src/domains/config/operations/validateFramework.ts +0 -24
- package/src/domains/config/operations/validateTier.test.ts +0 -56
- package/src/domains/config/operations/validateTier.ts +0 -35
- package/src/domains/config/stories.ts +0 -42
- package/src/domains/config/tasks/index.ts +0 -6
- package/src/domains/config/tasks/setChannel.ts +0 -21
- package/src/domains/config/tasks/setFramework.ts +0 -21
- package/src/domains/config/tasks/setTier.ts +0 -20
- package/src/domains/config/tasks/setTrace.ts +0 -20
- package/src/domains/config/tasks/writeConfigField.ts +0 -41
- package/src/domains/create/commands/component.test.ts +0 -166
- package/src/domains/create/commands/component.ts +0 -123
- package/src/domains/create/commands/index.ts +0 -3
- package/src/domains/create/commands/package.test.ts +0 -35
- package/src/domains/create/commands/package.ts +0 -21
- package/src/domains/create/generators.ts +0 -8
- package/src/domains/create/index.ts +0 -15
- package/src/domains/create/mcp/index.ts +0 -2
- package/src/domains/create/mcp/specs.ts +0 -168
- package/src/domains/doctor/commands/doctor.test.ts +0 -75
- package/src/domains/doctor/commands/doctor.ts +0 -43
- package/src/domains/doctor/commands/index.ts +0 -2
- package/src/domains/doctor/formatters/doctor.test.ts +0 -117
- package/src/domains/doctor/formatters/doctor.ts +0 -84
- package/src/domains/doctor/formatters/index.ts +0 -2
- package/src/domains/doctor/index.ts +0 -9
- package/src/domains/doctor/mcp/index.ts +0 -2
- package/src/domains/doctor/mcp/specs.ts +0 -41
- package/src/domains/doctor/operations/checks/checkConfigFile.ts +0 -42
- package/src/domains/doctor/operations/checks/checkKeStore.ts +0 -38
- package/src/domains/doctor/operations/checks/checkMcpCommands.ts +0 -130
- package/src/domains/doctor/operations/checks/checkMcpConfigured.ts +0 -65
- package/src/domains/doctor/operations/checks/checkNodeVersion.ts +0 -25
- package/src/domains/doctor/operations/checks/checkPackageRefs.ts +0 -58
- package/src/domains/doctor/operations/checks/checkPragmaVersion.ts +0 -20
- package/src/domains/doctor/operations/checks/checkShellCompletions.ts +0 -42
- package/src/domains/doctor/operations/checks/checkSkillsSymlinked.ts +0 -64
- package/src/domains/doctor/operations/checks/index.ts +0 -10
- package/src/domains/doctor/operations/checks.test.ts +0 -305
- package/src/domains/doctor/operations/index.ts +0 -3
- package/src/domains/doctor/operations/runChecks.test.ts +0 -176
- package/src/domains/doctor/operations/runChecks.ts +0 -78
- package/src/domains/doctor/operations/types.ts +0 -20
- package/src/domains/graph/commands/index.ts +0 -4
- package/src/domains/graph/commands/inspect.test.ts +0 -94
- package/src/domains/graph/commands/inspect.ts +0 -63
- package/src/domains/graph/commands/query.test.ts +0 -92
- package/src/domains/graph/commands/query.ts +0 -60
- package/src/domains/graph/formatters/index.ts +0 -4
- package/src/domains/graph/formatters/inspect.ts +0 -50
- package/src/domains/graph/formatters/query.ts +0 -37
- package/src/domains/graph/helpers/index.ts +0 -3
- package/src/domains/graph/helpers/resolveUri.test.ts +0 -50
- package/src/domains/graph/helpers/resolveUri.ts +0 -77
- package/src/domains/graph/index.ts +0 -22
- package/src/domains/graph/mcp/index.ts +0 -2
- package/src/domains/graph/mcp/specs.ts +0 -82
- package/src/domains/graph/operations/executeQuery.test.ts +0 -68
- package/src/domains/graph/operations/executeQuery.ts +0 -32
- package/src/domains/graph/operations/index.ts +0 -4
- package/src/domains/graph/operations/inspectUri.test.ts +0 -101
- package/src/domains/graph/operations/inspectUri.ts +0 -64
- package/src/domains/graphql/commands/build.test.ts +0 -196
- package/src/domains/graphql/commands/build.ts +0 -117
- package/src/domains/graphql/commands/check.test.ts +0 -141
- package/src/domains/graphql/commands/check.ts +0 -81
- package/src/domains/graphql/commands/index.ts +0 -5
- package/src/domains/graphql/commands/serve.test.ts +0 -40
- package/src/domains/graphql/commands/serve.ts +0 -131
- package/src/domains/graphql/constants.ts +0 -10
- package/src/domains/graphql/formatters/index.ts +0 -3
- package/src/domains/graphql/formatters/report.ts +0 -78
- package/src/domains/graphql/helpers/gatherSources.test.ts +0 -92
- package/src/domains/graphql/helpers/gatherSources.ts +0 -58
- package/src/domains/graphql/helpers/index.ts +0 -6
- package/src/domains/graphql/helpers/parsePrefixes.test.ts +0 -44
- package/src/domains/graphql/helpers/parsePrefixes.ts +0 -38
- package/src/domains/graphql/helpers/resolveSourceFiles.test.ts +0 -56
- package/src/domains/graphql/helpers/resolveSourceFiles.ts +0 -45
- package/src/domains/graphql/helpers/routeGraphql.test.ts +0 -43
- package/src/domains/graphql/helpers/routeGraphql.ts +0 -28
- package/src/domains/graphql/index.ts +0 -24
- package/src/domains/graphql/operations/compileSchema.test.ts +0 -95
- package/src/domains/graphql/operations/compileSchema.ts +0 -107
- package/src/domains/graphql/operations/createSchemaServer.test.ts +0 -50
- package/src/domains/graphql/operations/createSchemaServer.ts +0 -75
- package/src/domains/graphql/operations/index.ts +0 -12
- package/src/domains/graphql/types.ts +0 -29
- package/src/domains/info/commands/index.ts +0 -4
- package/src/domains/info/commands/info.test.ts +0 -88
- package/src/domains/info/commands/info.ts +0 -47
- package/src/domains/info/commands/upgrade.test.ts +0 -183
- package/src/domains/info/commands/upgrade.ts +0 -153
- package/src/domains/info/constants.test.ts +0 -22
- package/src/domains/info/constants.ts +0 -15
- package/src/domains/info/formatters/index.ts +0 -8
- package/src/domains/info/formatters/info.test.ts +0 -207
- package/src/domains/info/formatters/info.ts +0 -131
- package/src/domains/info/formatters/upgrade.test.ts +0 -133
- package/src/domains/info/formatters/upgrade.ts +0 -68
- package/src/domains/info/index.ts +0 -9
- package/src/domains/info/mcp/index.ts +0 -2
- package/src/domains/info/mcp/specs.ts +0 -65
- package/src/domains/info/operations/checkRegistryVersion.test.ts +0 -124
- package/src/domains/info/operations/checkRegistryVersion.ts +0 -45
- package/src/domains/info/operations/collectInfo.test.ts +0 -122
- package/src/domains/info/operations/collectInfo.ts +0 -94
- package/src/domains/info/operations/collectStoreSummary.test.ts +0 -61
- package/src/domains/info/operations/collectStoreSummary.ts +0 -42
- package/src/domains/info/operations/index.ts +0 -5
- package/src/domains/info/types.test-d.ts +0 -35
- package/src/domains/info/types.ts +0 -54
- package/src/domains/llm/capabilities.test.ts +0 -91
- package/src/domains/llm/commands/capabilities.ts +0 -28
- package/src/domains/llm/commands/index.ts +0 -4
- package/src/domains/llm/commands/llm.ts +0 -37
- package/src/domains/llm/data/commandReference.ts +0 -97
- package/src/domains/llm/data/decisionTrees.ts +0 -50
- package/src/domains/llm/data/index.ts +0 -6
- package/src/domains/llm/data/toolCatalog.ts +0 -190
- package/src/domains/llm/formatters/capabilities.ts +0 -50
- package/src/domains/llm/formatters/index.ts +0 -4
- package/src/domains/llm/formatters/orientation.ts +0 -53
- package/src/domains/llm/index.ts +0 -9
- package/src/domains/llm/llmCommand.test.ts +0 -93
- package/src/domains/llm/mcp/index.ts +0 -2
- package/src/domains/llm/mcp/specs.ts +0 -94
- package/src/domains/llm/operations/collectContext.ts +0 -47
- package/src/domains/llm/operations/index.ts +0 -3
- package/src/domains/llm/types.ts +0 -72
- package/src/domains/modifier/commands/index.ts +0 -5
- package/src/domains/modifier/commands/list.test.ts +0 -57
- package/src/domains/modifier/commands/list.ts +0 -9
- package/src/domains/modifier/commands/lookup.test.ts +0 -91
- package/src/domains/modifier/commands/lookup.ts +0 -14
- package/src/domains/modifier/commands/sample.ts +0 -53
- package/src/domains/modifier/formatters/index.ts +0 -8
- package/src/domains/modifier/formatters/list.test.ts +0 -38
- package/src/domains/modifier/formatters/list.ts +0 -22
- package/src/domains/modifier/formatters/lookup.test.ts +0 -33
- package/src/domains/modifier/formatters/lookup.ts +0 -50
- package/src/domains/modifier/formatters/sample.ts +0 -15
- package/src/domains/modifier/index.ts +0 -27
- package/src/domains/modifier/mcp/index.ts +0 -2
- package/src/domains/modifier/mcp/specs.ts +0 -65
- package/src/domains/modifier/modifierConfig.ts +0 -36
- package/src/domains/modifier/operations/index.ts +0 -5
- package/src/domains/modifier/operations/list.test.ts +0 -39
- package/src/domains/modifier/operations/list.ts +0 -41
- package/src/domains/modifier/operations/lookup.test.ts +0 -37
- package/src/domains/modifier/operations/lookup.ts +0 -67
- package/src/domains/modifier/operations/sample.ts +0 -32
- package/src/domains/modifier/orchestration/index.ts +0 -3
- package/src/domains/modifier/orchestration/modifierEmptyError.test.ts +0 -26
- package/src/domains/modifier/orchestration/modifierEmptyError.ts +0 -15
- package/src/domains/modifier/orchestration/resolveModifierList.ts +0 -16
- package/src/domains/modifier/orchestration/resolveModifierLookup.ts +0 -33
- package/src/domains/modifier/stories.test.ts +0 -20
- package/src/domains/modifier/stories.ts +0 -77
- package/src/domains/modifier/types.ts +0 -5
- package/src/domains/ontology/commands/index.ts +0 -4
- package/src/domains/ontology/commands/list.test.ts +0 -82
- package/src/domains/ontology/commands/list.ts +0 -11
- package/src/domains/ontology/commands/show.test.ts +0 -103
- package/src/domains/ontology/commands/show.ts +0 -14
- package/src/domains/ontology/formatters/index.ts +0 -4
- package/src/domains/ontology/formatters/list.ts +0 -39
- package/src/domains/ontology/formatters/show.ts +0 -105
- package/src/domains/ontology/helpers/findNamespace.ts +0 -23
- package/src/domains/ontology/helpers/index.ts +0 -7
- package/src/domains/ontology/helpers/queryClasses.ts +0 -50
- package/src/domains/ontology/helpers/queryProperties.ts +0 -57
- package/src/domains/ontology/helpers/resolvePrefix.ts +0 -45
- package/src/domains/ontology/index.ts +0 -26
- package/src/domains/ontology/mcp/index.ts +0 -2
- package/src/domains/ontology/mcp/specs.ts +0 -16
- package/src/domains/ontology/operations/index.ts +0 -5
- package/src/domains/ontology/operations/listOntologies.test.ts +0 -45
- package/src/domains/ontology/operations/listOntologies.ts +0 -101
- package/src/domains/ontology/operations/showOntology.test.ts +0 -65
- package/src/domains/ontology/operations/showOntology.ts +0 -41
- package/src/domains/ontology/operations/showOntologyRaw.test.ts +0 -39
- package/src/domains/ontology/operations/showOntologyRaw.ts +0 -50
- package/src/domains/ontology/stories.test.ts +0 -36
- package/src/domains/ontology/stories.ts +0 -108
- package/src/domains/refs/commands/updateRefs.ts +0 -52
- package/src/domains/refs/formatters/updateRefs.ts +0 -27
- package/src/domains/refs/index.ts +0 -27
- package/src/domains/refs/operations/gitOps.test.ts +0 -155
- package/src/domains/refs/operations/gitOps.ts +0 -92
- package/src/domains/refs/operations/index.ts +0 -10
- package/src/domains/refs/operations/parseRef.test.ts +0 -157
- package/src/domains/refs/operations/parseRef.ts +0 -114
- package/src/domains/refs/operations/paths.test.ts +0 -98
- package/src/domains/refs/operations/paths.ts +0 -91
- package/src/domains/refs/operations/readGlobalRefs.test.ts +0 -63
- package/src/domains/refs/operations/readGlobalRefs.ts +0 -37
- package/src/domains/refs/operations/updateRefs.test.ts +0 -167
- package/src/domains/refs/operations/updateRefs.ts +0 -181
- package/src/domains/setup/commands/all.ts +0 -58
- package/src/domains/setup/commands/completions.ts +0 -85
- package/src/domains/setup/commands/entrypoints.test.ts +0 -170
- package/src/domains/setup/commands/index.ts +0 -6
- package/src/domains/setup/commands/lsp.ts +0 -49
- package/src/domains/setup/commands/mcp.ts +0 -119
- package/src/domains/setup/commands/skills.test.ts +0 -68
- package/src/domains/setup/commands/skills.ts +0 -110
- package/src/domains/setup/formatters/index.ts +0 -2
- package/src/domains/setup/formatters/skills.test.ts +0 -103
- package/src/domains/setup/formatters/skills.ts +0 -112
- package/src/domains/setup/formatters/types.ts +0 -7
- package/src/domains/setup/helpers/completionScripts.test.ts +0 -58
- package/src/domains/setup/helpers/completionScripts.ts +0 -92
- package/src/domains/setup/helpers/constants.ts +0 -2
- package/src/domains/setup/helpers/detectShell.test.ts +0 -48
- package/src/domains/setup/helpers/detectShell.ts +0 -20
- package/src/domains/setup/helpers/index.ts +0 -12
- package/src/domains/setup/helpers/runSetupTask.test.ts +0 -277
- package/src/domains/setup/helpers/runSetupTask.ts +0 -221
- package/src/domains/setup/index.ts +0 -33
- package/src/domains/setup/operations/index.ts +0 -6
- package/src/domains/setup/operations/setupAll.test.ts +0 -48
- package/src/domains/setup/operations/setupAll.ts +0 -41
- package/src/domains/setup/operations/setupCompletions.test.ts +0 -94
- package/src/domains/setup/operations/setupCompletions.ts +0 -54
- package/src/domains/setup/operations/setupLsp.test.ts +0 -29
- package/src/domains/setup/operations/setupLsp.ts +0 -17
- package/src/domains/setup/operations/setupMcp.test.ts +0 -120
- package/src/domains/setup/operations/setupMcp.ts +0 -108
- package/src/domains/setup/operations/setupSkills.test.ts +0 -191
- package/src/domains/setup/operations/setupSkills.ts +0 -160
- package/src/domains/setup/types.ts +0 -18
- package/src/domains/shared/ToolSpec.ts +0 -49
- package/src/domains/shared/bootStore.ts +0 -135
- package/src/domains/shared/buildQuery.ts +0 -18
- package/src/domains/shared/compactUri.test.ts +0 -32
- package/src/domains/shared/compactUri.ts +0 -21
- package/src/domains/shared/context.ts +0 -16
- package/src/domains/shared/contracts.ts +0 -164
- package/src/domains/shared/createInteractivePromptSession.test.ts +0 -439
- package/src/domains/shared/createInteractivePromptSession.ts +0 -236
- package/src/domains/shared/emptyErrorRecovery.test.ts +0 -109
- package/src/domains/shared/extractLocalName.test.ts +0 -21
- package/src/domains/shared/extractLocalName.ts +0 -14
- package/src/domains/shared/filters/buildChannelFilter.test.ts +0 -52
- package/src/domains/shared/filters/buildChannelFilter.ts +0 -41
- package/src/domains/shared/filters/buildFilterConfig.ts +0 -15
- package/src/domains/shared/filters/buildFilters.test.ts +0 -33
- package/src/domains/shared/filters/buildFilters.ts +0 -30
- package/src/domains/shared/filters/buildTierFilter.test.ts +0 -78
- package/src/domains/shared/filters/buildTierFilter.ts +0 -69
- package/src/domains/shared/filters/describeFilters.ts +0 -14
- package/src/domains/shared/filters/index.ts +0 -10
- package/src/domains/shared/formatters.ts +0 -82
- package/src/domains/shared/loaders/bundledLoader.test.ts +0 -248
- package/src/domains/shared/loaders/bundledLoader.ts +0 -206
- package/src/domains/shared/loaders/gitLoader.ts +0 -31
- package/src/domains/shared/loaders/index.ts +0 -9
- package/src/domains/shared/loaders/localLoader.ts +0 -87
- package/src/domains/shared/loaders/readPackageDir.ts +0 -147
- package/src/domains/shared/loaders/storyAssetsPlugin.test.ts +0 -84
- package/src/domains/shared/loaders/storyAssetsPlugin.ts +0 -46
- package/src/domains/shared/lookupMany.test.ts +0 -120
- package/src/domains/shared/lookupMany.ts +0 -85
- package/src/domains/shared/mergeAndParseRefs.test.ts +0 -89
- package/src/domains/shared/mergeAndParseRefs.ts +0 -44
- package/src/domains/shared/namespaces.ts +0 -18
- package/src/domains/shared/packages.ts +0 -20
- package/src/domains/shared/pickRandom.ts +0 -22
- package/src/domains/shared/prefixes.ts +0 -37
- package/src/domains/shared/renderers.ts +0 -410
- package/src/domains/shared/resolveConfiguredGraphs.test.ts +0 -27
- package/src/domains/shared/resolveConfiguredGraphs.ts +0 -41
- package/src/domains/shared/runtime.ts +0 -61
- package/src/domains/shared/sampleFormatters.ts +0 -47
- package/src/domains/shared/semanticPackage.ts +0 -112
- package/src/domains/shared/stories/compileLookupCommand.test.ts +0 -145
- package/src/domains/shared/stories/compileLookupCommand.ts +0 -100
- package/src/domains/shared/stories/compileLookupTool.test.ts +0 -105
- package/src/domains/shared/stories/compileLookupTool.ts +0 -96
- package/src/domains/shared/stories/compileReadCommand.test.ts +0 -121
- package/src/domains/shared/stories/compileReadCommand.ts +0 -48
- package/src/domains/shared/stories/compileReadTool.test.ts +0 -64
- package/src/domains/shared/stories/compileReadTool.ts +0 -38
- package/src/domains/shared/stories/condense.test.ts +0 -18
- package/src/domains/shared/stories/condense.ts +0 -15
- package/src/domains/shared/stories/index.ts +0 -20
- package/src/domains/shared/stories/normalizeNames.test.ts +0 -20
- package/src/domains/shared/stories/normalizeNames.ts +0 -22
- package/src/domains/shared/stories/pack/applyPackFilters.test.ts +0 -102
- package/src/domains/shared/stories/pack/applyPackFilters.ts +0 -76
- package/src/domains/shared/stories/pack/buildLookupQuery.test.ts +0 -51
- package/src/domains/shared/stories/pack/buildLookupQuery.ts +0 -80
- package/src/domains/shared/stories/pack/collectPackStories.test.ts +0 -108
- package/src/domains/shared/stories/pack/collectPackStories.ts +0 -76
- package/src/domains/shared/stories/pack/compilePackCommands.ts +0 -40
- package/src/domains/shared/stories/pack/compilePackStories.test.ts +0 -146
- package/src/domains/shared/stories/pack/compilePackStories.ts +0 -253
- package/src/domains/shared/stories/pack/compilePackToolSpecs.ts +0 -43
- package/src/domains/shared/stories/pack/index.ts +0 -28
- package/src/domains/shared/stories/pack/runSelectQuery.ts +0 -31
- package/src/domains/shared/stories/pack/standardParity.test.ts +0 -308
- package/src/domains/shared/stories/pack/types.ts +0 -104
- package/src/domains/shared/stories/pack/validateStoryPackDefinition.test.ts +0 -240
- package/src/domains/shared/stories/pack/validateStoryPackDefinition.ts +0 -408
- package/src/domains/shared/stories/projectCliParameters.test.ts +0 -59
- package/src/domains/shared/stories/projectCliParameters.ts +0 -57
- package/src/domains/shared/stories/projectToolParams.test.ts +0 -50
- package/src/domains/shared/stories/projectToolParams.ts +0 -32
- package/src/domains/shared/stories/requirePragmaContext.test.ts +0 -23
- package/src/domains/shared/stories/requirePragmaContext.ts +0 -23
- package/src/domains/shared/stories/resolveLookupDetailed.test.ts +0 -57
- package/src/domains/shared/stories/resolveLookupDetailed.ts +0 -27
- package/src/domains/shared/stories/types.ts +0 -171
- package/src/domains/shared/suggestions/detectCrossDomain.test.ts +0 -43
- package/src/domains/shared/suggestions/detectCrossDomain.ts +0 -116
- package/src/domains/shared/suggestions/expandGlob.test.ts +0 -92
- package/src/domains/shared/suggestions/expandGlob.ts +0 -52
- package/src/domains/shared/suggestions/expandLookupQueries.ts +0 -57
- package/src/domains/shared/suggestions/index.ts +0 -7
- package/src/domains/shared/suggestions/listDomainNames.ts +0 -61
- package/src/domains/shared/suggestions/suggestNames.test.ts +0 -70
- package/src/domains/shared/suggestions/suggestNames.ts +0 -130
- package/src/domains/shared/types/block.ts +0 -107
- package/src/domains/shared/types/common.ts +0 -33
- package/src/domains/shared/types/graph.ts +0 -17
- package/src/domains/shared/types/index.ts +0 -50
- package/src/domains/shared/types/modifier.ts +0 -22
- package/src/domains/shared/types/ontology.ts +0 -50
- package/src/domains/shared/types/runtime.ts +0 -24
- package/src/domains/shared/types/sample.ts +0 -17
- package/src/domains/shared/types/standard.ts +0 -64
- package/src/domains/shared/types/tier.ts +0 -15
- package/src/domains/shared/types/token.ts +0 -30
- package/src/domains/skill/commands/index.ts +0 -4
- package/src/domains/skill/commands/list.test.ts +0 -115
- package/src/domains/skill/commands/list.ts +0 -11
- package/src/domains/skill/commands/lookup.test.ts +0 -118
- package/src/domains/skill/commands/lookup.ts +0 -14
- package/src/domains/skill/formatters/index.ts +0 -3
- package/src/domains/skill/formatters/list.test.ts +0 -140
- package/src/domains/skill/formatters/list.ts +0 -119
- package/src/domains/skill/formatters/lookup.test.ts +0 -46
- package/src/domains/skill/formatters/lookup.ts +0 -57
- package/src/domains/skill/formatters/types.ts +0 -8
- package/src/domains/skill/helpers/index.ts +0 -6
- package/src/domains/skill/helpers/parseFrontmatter.test.ts +0 -122
- package/src/domains/skill/helpers/parseFrontmatter.ts +0 -112
- package/src/domains/skill/helpers/resolveSkillSources.ts +0 -70
- package/src/domains/skill/index.ts +0 -23
- package/src/domains/skill/mcp/index.ts +0 -2
- package/src/domains/skill/mcp/specs.ts +0 -19
- package/src/domains/skill/operations/discover.test.ts +0 -176
- package/src/domains/skill/operations/discover.ts +0 -59
- package/src/domains/skill/operations/index.ts +0 -5
- package/src/domains/skill/operations/list.test.ts +0 -76
- package/src/domains/skill/operations/list.ts +0 -47
- package/src/domains/skill/operations/lookup.test.ts +0 -91
- package/src/domains/skill/operations/lookup.ts +0 -70
- package/src/domains/skill/stories.test.ts +0 -43
- package/src/domains/skill/stories.ts +0 -103
- package/src/domains/skill/types.ts +0 -33
- package/src/domains/standard/commands/categories.test.ts +0 -70
- package/src/domains/standard/commands/categories.ts +0 -48
- package/src/domains/standard/commands/index.ts +0 -6
- package/src/domains/standard/commands/list.test.ts +0 -105
- package/src/domains/standard/commands/list.ts +0 -11
- package/src/domains/standard/commands/lookup.test.ts +0 -135
- package/src/domains/standard/commands/lookup.ts +0 -14
- package/src/domains/standard/commands/sample.ts +0 -57
- package/src/domains/standard/formatters/categories.test.ts +0 -44
- package/src/domains/standard/formatters/categories.ts +0 -38
- package/src/domains/standard/formatters/index.ts +0 -10
- package/src/domains/standard/formatters/list.test.ts +0 -169
- package/src/domains/standard/formatters/list.ts +0 -184
- package/src/domains/standard/formatters/lookup.test.ts +0 -95
- package/src/domains/standard/formatters/lookup.ts +0 -101
- package/src/domains/standard/formatters/sample.ts +0 -15
- package/src/domains/standard/formatters/types.ts +0 -31
- package/src/domains/standard/index.ts +0 -40
- package/src/domains/standard/mcp/index.ts +0 -2
- package/src/domains/standard/mcp/specs.ts +0 -89
- package/src/domains/standard/operations/categories.test.ts +0 -61
- package/src/domains/standard/operations/categories.ts +0 -38
- package/src/domains/standard/operations/index.ts +0 -6
- package/src/domains/standard/operations/list.test.ts +0 -75
- package/src/domains/standard/operations/list.ts +0 -64
- package/src/domains/standard/operations/lookup.test.ts +0 -58
- package/src/domains/standard/operations/lookup.ts +0 -151
- package/src/domains/standard/operations/sample.ts +0 -35
- package/src/domains/standard/orchestration/buildStandardFilters.ts +0 -11
- package/src/domains/standard/orchestration/index.ts +0 -4
- package/src/domains/standard/orchestration/resolveStandardList.ts +0 -45
- package/src/domains/standard/orchestration/resolveStandardLookup.ts +0 -33
- package/src/domains/standard/orchestration/standardEmptyError.test.ts +0 -33
- package/src/domains/standard/orchestration/standardEmptyError.ts +0 -29
- package/src/domains/standard/standardConfig.ts +0 -42
- package/src/domains/standard/stories.test.ts +0 -24
- package/src/domains/standard/stories.ts +0 -151
- package/src/domains/standard/types.ts +0 -15
- package/src/domains/tier/commands/index.ts +0 -3
- package/src/domains/tier/commands/list.test.ts +0 -67
- package/src/domains/tier/commands/list.ts +0 -9
- package/src/domains/tier/formatters/index.ts +0 -3
- package/src/domains/tier/formatters/list.test.ts +0 -33
- package/src/domains/tier/formatters/list.ts +0 -45
- package/src/domains/tier/index.ts +0 -17
- package/src/domains/tier/mcp/index.ts +0 -2
- package/src/domains/tier/mcp/specs.ts +0 -12
- package/src/domains/tier/operations/index.ts +0 -3
- package/src/domains/tier/operations/list.test.ts +0 -32
- package/src/domains/tier/operations/list.ts +0 -33
- package/src/domains/tier/stories.test.ts +0 -22
- package/src/domains/tier/stories.ts +0 -52
- package/src/domains/token/commands/add-config.test.ts +0 -68
- package/src/domains/token/commands/add-config.ts +0 -62
- package/src/domains/token/commands/index.ts +0 -6
- package/src/domains/token/commands/list.test.ts +0 -82
- package/src/domains/token/commands/list.ts +0 -54
- package/src/domains/token/commands/lookup.test.ts +0 -125
- package/src/domains/token/commands/lookup.ts +0 -95
- package/src/domains/token/commands/sample.ts +0 -53
- package/src/domains/token/formatters/index.ts +0 -8
- package/src/domains/token/formatters/list.test.ts +0 -37
- package/src/domains/token/formatters/list.ts +0 -24
- package/src/domains/token/formatters/lookup.test.ts +0 -61
- package/src/domains/token/formatters/lookup.ts +0 -107
- package/src/domains/token/formatters/sample.ts +0 -16
- package/src/domains/token/index.ts +0 -40
- package/src/domains/token/mcp/index.ts +0 -2
- package/src/domains/token/mcp/specs.ts +0 -195
- package/src/domains/token/operations/add-config.test.ts +0 -68
- package/src/domains/token/operations/add-config.ts +0 -61
- package/src/domains/token/operations/index.ts +0 -8
- package/src/domains/token/operations/list.test.ts +0 -50
- package/src/domains/token/operations/list.ts +0 -52
- package/src/domains/token/operations/lookup.test.ts +0 -42
- package/src/domains/token/operations/lookup.ts +0 -75
- package/src/domains/token/operations/sample.ts +0 -32
- package/src/domains/token/orchestration/index.ts +0 -3
- package/src/domains/token/orchestration/resolveTokenList.ts +0 -17
- package/src/domains/token/orchestration/resolveTokenLookup.ts +0 -33
- package/src/domains/token/orchestration/tokenEmptyError.test.ts +0 -33
- package/src/domains/token/orchestration/tokenEmptyError.ts +0 -20
- package/src/domains/token/tokenConfig.ts +0 -38
- package/src/domains/token/types.ts +0 -6
- package/src/domains/trace/commands/clear.ts +0 -71
- package/src/domains/trace/commands/index.ts +0 -5
- package/src/domains/trace/commands/sessions.ts +0 -32
- package/src/domains/trace/commands/show.ts +0 -145
- package/src/domains/trace/formatters/index.ts +0 -9
- package/src/domains/trace/formatters/sessions.ts +0 -80
- package/src/domains/trace/formatters/show.ts +0 -122
- package/src/domains/trace/index.ts +0 -17
- package/src/domains/trace/operations/index.ts +0 -8
- package/src/domains/trace/operations/listSessions.test.ts +0 -55
- package/src/domains/trace/operations/listSessions.ts +0 -52
- package/src/domains/trace/operations/readTraceLog.test.ts +0 -100
- package/src/domains/trace/operations/readTraceLog.ts +0 -104
- package/src/domains/trace/tracePlugin.test.ts +0 -171
- package/src/domains/trace/tracePlugin.ts +0 -159
- package/src/domains/trace/types.ts +0 -65
- package/src/embedWasm.ts +0 -42
- package/src/error/PragmaError.test.ts +0 -121
- package/src/error/PragmaError.ts +0 -177
- package/src/error/constants.ts +0 -12
- package/src/error/index.ts +0 -4
- package/src/error/types.ts +0 -55
- package/src/mcp/createMcpServer.test.ts +0 -41
- package/src/mcp/createMcpServer.ts +0 -53
- package/src/mcp/error/buildRecovery.test.ts +0 -37
- package/src/mcp/error/buildRecovery.ts +0 -17
- package/src/mcp/error/index.ts +0 -12
- package/src/mcp/error/serializeError.test.ts +0 -121
- package/src/mcp/error/serializeError.ts +0 -31
- package/src/mcp/error/serializeErrorPayload.test.ts +0 -38
- package/src/mcp/error/serializeErrorPayload.ts +0 -34
- package/src/mcp/error/types.ts +0 -59
- package/src/mcp/index.ts +0 -15
- package/src/mcp/registerResources.test.ts +0 -566
- package/src/mcp/registerResources.ts +0 -9
- package/src/mcp/resources/buildGraphIndex.ts +0 -167
- package/src/mcp/resources/buildResourceList.test.ts +0 -97
- package/src/mcp/resources/buildResourceList.ts +0 -176
- package/src/mcp/resources/classifyEntity.test.ts +0 -40
- package/src/mcp/resources/classifyEntity.ts +0 -27
- package/src/mcp/resources/constants.ts +0 -105
- package/src/mcp/resources/displayPredicates.ts +0 -62
- package/src/mcp/resources/pickFirstValue.test.ts +0 -29
- package/src/mcp/resources/pickFirstValue.ts +0 -26
- package/src/mcp/resources/pickPrimaryType.test.ts +0 -41
- package/src/mcp/resources/pickPrimaryType.ts +0 -26
- package/src/mcp/resources/rankUriCompletions.test.ts +0 -52
- package/src/mcp/resources/rankUriCompletions.ts +0 -64
- package/src/mcp/resources/readEntity.ts +0 -169
- package/src/mcp/resources/registerResources.ts +0 -126
- package/src/mcp/resources/types.ts +0 -128
- package/src/mcp/runMcpServer.test.ts +0 -66
- package/src/mcp/runMcpServer.ts +0 -24
- package/src/mcp/tools/index.ts +0 -66
- package/src/mcp/tools/registerFromSpec.ts +0 -97
- package/src/mcp/tools/registerTools.test.ts +0 -1201
- package/src/mcp/types.ts +0 -66
- package/src/mcp/utils/estimateTokens.test.ts +0 -14
- package/src/mcp/utils/estimateTokens.ts +0 -9
- package/src/mcp/utils/index.ts +0 -11
- package/src/mcp/utils/wrapTool.test.ts +0 -109
- package/src/mcp/utils/wrapTool.ts +0 -81
- package/src/package-manager/constants.ts +0 -29
- package/src/package-manager/detectInstallSource.test.ts +0 -23
- package/src/package-manager/detectInstallSource.ts +0 -111
- package/src/package-manager/detectLocalInstall.test.ts +0 -16
- package/src/package-manager/detectLocalInstall.ts +0 -43
- package/src/package-manager/detectPackageManager.test.ts +0 -81
- package/src/package-manager/detectPackageManager.ts +0 -30
- package/src/package-manager/index.ts +0 -6
- package/src/package-manager/types.ts +0 -10
- package/src/pipeline/collectCommands.test.ts +0 -37
- package/src/pipeline/collectCommands.ts +0 -60
- package/src/pipeline/constants.ts +0 -14
- package/src/pipeline/createProgram.test.ts +0 -112
- package/src/pipeline/createProgram.ts +0 -89
- package/src/pipeline/formatTerminal.test.ts +0 -43
- package/src/pipeline/formatTerminal.ts +0 -53
- package/src/pipeline/index.ts +0 -22
- package/src/pipeline/mapExitCode.test.ts +0 -41
- package/src/pipeline/mapExitCode.ts +0 -12
- package/src/pipeline/parseGlobalFlags.test.ts +0 -92
- package/src/pipeline/parseGlobalFlags.ts +0 -46
- package/src/pipeline/renderError.test.ts +0 -151
- package/src/pipeline/renderError.ts +0 -129
- package/src/pipeline/resolveCommandKind.test.ts +0 -68
- package/src/pipeline/resolveCommandKind.ts +0 -78
- package/src/pipeline/runCli.orchestration.test.ts +0 -419
- package/src/pipeline/runCli.test.ts +0 -70
- package/src/pipeline/runCli.ts +0 -268
- package/src/pipeline/types.ts +0 -17
- package/src/testing/cli.ts +0 -43
- package/src/testing/createTestMcpClient.ts +0 -68
- package/src/testing/dsFixtures.ts +0 -506
- package/src/testing/fixtures/canonical-config.json +0 -4
- package/src/testing/fixtures/canonical.ttl +0 -437
- package/src/testing/fixtures/filtered-config.json +0 -4
- package/src/testing/fixtures.ts +0 -34
- package/src/testing/graphqlFixtures.ts +0 -72
- package/src/testing/helpers/assertParity.ts +0 -28
- package/src/testing/helpers/createTestMcpClient.ts +0 -40
- package/src/testing/helpers/createTestRuntime.ts +0 -67
- package/src/testing/index.ts +0 -25
- package/src/testing/integration/__snapshots__/executor-golden.test.ts.snap +0 -1207
- package/src/testing/integration/agent-session.test.ts +0 -148
- package/src/testing/integration/boot.test.ts +0 -105
- package/src/testing/integration/cli-user-stories.test.ts +0 -198
- package/src/testing/integration/cross-binary-byte-equality.test.ts +0 -129
- package/src/testing/integration/edge-cases.test.ts +0 -263
- package/src/testing/integration/executor-execution.test.ts +0 -101
- package/src/testing/integration/executor-golden.test.ts +0 -145
- package/src/testing/integration/mcp-surface.test.ts +0 -580
- package/src/testing/integration/parity.test.ts +0 -547
- package/src/testing/regression/0001-skill-discovery-granularity.test.ts +0 -71
- package/src/testing/standardParityFixtures.ts +0 -92
- package/src/testing/store.ts +0 -39
- package/src/testing/storyFixtures.ts +0 -63
- package/src/testing/types.ts +0 -20
- package/src/tui/components/BulletList/BulletList.tsx +0 -46
- package/src/tui/components/BulletList/index.ts +0 -2
- package/src/tui/components/BulletList/types.ts +0 -6
- package/src/tui/components/Card/Card.tsx +0 -73
- package/src/tui/components/Card/index.ts +0 -1
- package/src/tui/components/Card/types.ts +0 -12
- package/src/tui/components/CodeBlock/CodeBlock.tsx +0 -37
- package/src/tui/components/CodeBlock/index.ts +0 -2
- package/src/tui/components/CodeBlock/types.ts +0 -6
- package/src/tui/components/DataRow/DataRow.tsx +0 -80
- package/src/tui/components/DataRow/index.ts +0 -2
- package/src/tui/components/DataRow/types.ts +0 -14
- package/src/tui/components/FieldRow/FieldRow.tsx +0 -24
- package/src/tui/components/FieldRow/index.ts +0 -2
- package/src/tui/components/FieldRow/types.ts +0 -10
- package/src/tui/components/HeaderRow/HeaderRow.tsx +0 -32
- package/src/tui/components/HeaderRow/index.ts +0 -2
- package/src/tui/components/HeaderRow/types.ts +0 -8
- package/src/tui/components/MarkdownText/MarkdownText.tsx +0 -19
- package/src/tui/components/MarkdownText/index.ts +0 -2
- package/src/tui/components/MarkdownText/types.ts +0 -4
- package/src/tui/components/MiniTable/MiniTable.tsx +0 -82
- package/src/tui/components/MiniTable/index.ts +0 -2
- package/src/tui/components/MiniTable/types.ts +0 -6
- package/src/tui/components/SectionRenderer/SectionRenderer.tsx +0 -91
- package/src/tui/components/SectionRenderer/index.ts +0 -2
- package/src/tui/components/SectionRenderer/types.ts +0 -15
- package/src/tui/components/TreeView/TreeView.tsx +0 -84
- package/src/tui/components/TreeView/index.ts +0 -2
- package/src/tui/components/TreeView/types.ts +0 -6
- package/src/tui/components/index.ts +0 -19
- package/src/tui/constants.ts +0 -39
- package/src/tui/createListView.ts +0 -23
- package/src/tui/createLookupView.ts +0 -26
- package/src/tui/helpers/computeWidths.ts +0 -53
- package/src/tui/helpers/fitColumns.ts +0 -33
- package/src/tui/helpers/formatMarkdown.ts +0 -19
- package/src/tui/helpers/getTerminalSize.ts +0 -16
- package/src/tui/helpers/index.ts +0 -6
- package/src/tui/helpers/syntaxColor.ts +0 -67
- package/src/tui/helpers/truncateText.ts +0 -12
- package/src/tui/hooks/index.ts +0 -3
- package/src/tui/hooks/types.ts +0 -7
- package/src/tui/hooks/useAutoExit.ts +0 -17
- package/src/tui/hooks/useTerminalSize.ts +0 -19
- package/src/tui/index.ts +0 -15
- package/src/tui/renderInk.tsx +0 -18
- package/src/tui/types.ts +0 -12
- package/src/tui/views/ListView/ListView.tsx +0 -104
- package/src/tui/views/ListView/index.ts +0 -2
- package/src/tui/views/ListView/types.ts +0 -14
- package/src/tui/views/LookupView/LookupView.tsx +0 -244
- package/src/tui/views/LookupView/index.ts +0 -2
- package/src/tui/views/LookupView/types.ts +0 -16
- package/src/tui/views/index.ts +0 -4
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Standard-noun parity pilot fixtures.
|
|
3
|
-
*
|
|
4
|
-
* The built-in `standard` list/lookup read stories re-expressed as a v0
|
|
5
|
-
* story-pack definition, plus the honest record of what v0 cannot yet
|
|
6
|
-
* reproduce. Together they form the pilot's contract: the definition is
|
|
7
|
-
* asserted byte-compatible with the built-in output where the format
|
|
8
|
-
* reaches (`standardParity.test.ts`), and every remaining divergence
|
|
9
|
-
* must appear in {@link PARITY_GAPS} rather than being papered over.
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
import type { StoryPackDefinition } from "../domains/shared/stories/pack/types.js";
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* The built-in `standard` stories as a declarative pack definition.
|
|
16
|
-
*
|
|
17
|
-
* The list SELECT mirrors the query `listStandards` sends the store,
|
|
18
|
-
* with variables renamed to the built-in's output fields (`?standard` →
|
|
19
|
-
* `?uri`, `?categoryName` → `?category`) so pack rows carry the same
|
|
20
|
-
* keys as the built-in summary items. The lookup mirrors the built-in
|
|
21
|
-
* title and inline fields as far as v0 reaches — {@link PARITY_GAPS}
|
|
22
|
-
* lists what it cannot express.
|
|
23
|
-
*/
|
|
24
|
-
export const STANDARD_PACK_STORY: StoryPackDefinition = {
|
|
25
|
-
noun: "standard",
|
|
26
|
-
description: "List all code standards",
|
|
27
|
-
list: {
|
|
28
|
-
query: [
|
|
29
|
-
"SELECT ?uri ?name ?category ?description",
|
|
30
|
-
"WHERE {",
|
|
31
|
-
" ?uri a cs:CodeStandard ;",
|
|
32
|
-
" cs:name ?name ;",
|
|
33
|
-
" cs:description ?description .",
|
|
34
|
-
" OPTIONAL {",
|
|
35
|
-
" ?uri cs:hasCategory ?cat .",
|
|
36
|
-
" ?cat cs:slug ?category .",
|
|
37
|
-
" }",
|
|
38
|
-
"}",
|
|
39
|
-
"ORDER BY ?name",
|
|
40
|
-
].join("\n"),
|
|
41
|
-
columns: [
|
|
42
|
-
{ field: "uri", label: "IRI" },
|
|
43
|
-
{ field: "name", label: "Name" },
|
|
44
|
-
{ field: "category", label: "Category" },
|
|
45
|
-
{ field: "description", label: "Description" },
|
|
46
|
-
],
|
|
47
|
-
},
|
|
48
|
-
lookup: {
|
|
49
|
-
type: "cs:CodeStandard",
|
|
50
|
-
by: "cs:name",
|
|
51
|
-
fields: [
|
|
52
|
-
{
|
|
53
|
-
name: "category",
|
|
54
|
-
property: "cs:hasCategory/cs:slug",
|
|
55
|
-
label: "Category",
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
name: "description",
|
|
59
|
-
property: "cs:description",
|
|
60
|
-
label: "Description",
|
|
61
|
-
},
|
|
62
|
-
{ name: "extends", property: "cs:extends", label: "Extends" },
|
|
63
|
-
],
|
|
64
|
-
},
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Every place the v0 pack format cannot reproduce the built-in standard
|
|
69
|
-
* stories — the pilot's primary output. Each entry names the concrete
|
|
70
|
-
* missing pack-format capability; remove an entry only when the format
|
|
71
|
-
* gains the capability and the parity test asserts it.
|
|
72
|
-
*/
|
|
73
|
-
export const PARITY_GAPS: readonly string[] = [
|
|
74
|
-
"list params: packs declare no story parameters, so the built-in --category and --search filters (and their MCP tool arguments) cannot be expressed",
|
|
75
|
-
"list disclosure: no digest/detailed progressive-disclosure levels — the built-in --digest/--detailed flags enrich rows with extends/example/dos/donts and add disclosure meta to the MCP envelope; pack lists always render summary rows",
|
|
76
|
-
"list empty guard: the built-in raises EMPTY_RESULTS with an install-hint recovery when no standards load; the pack format has no emptyError hook, so a pack list renders nothing",
|
|
77
|
-
"list plain template: packs render the shared aligned-column table; the built-in renders stacked `name [category]` blocks with an indented description — v0 columns carry no layout or template control",
|
|
78
|
-
"list llm template: pack headings are `## <Noun> (<count>)` with `` `iri` — **name** value | value `` items; the built-in emits `## Standards` with `- **name** [category]` plus an indented description line — heading text and item template are not authorable",
|
|
79
|
-
"lookup uri field: the entity IRI cannot be declared as an inline field — v0 fields are property-derived, and a field named `uri` generates a duplicate ?uri SELECT variable the store rejects; the built-in renders `URI: cs:...` as its first lookup field",
|
|
80
|
-
"lookup property paths: `category` needs the two-hop path cs:hasCategory/cs:slug; the documented v0 `property` contract is a single predicate, and the path only passes validation because the prefixed-name pattern rejects `/` in the first character alone — multi-hop fields need first-class support",
|
|
81
|
-
"lookup data compaction: the built-in compacts `extends` in resolved data (JSON shows `cs:ComponentFolderStructure`); pack rows keep the raw IRI, so lookup JSON diverges for standards with cs:extends (plain/llm still match because renderers compact at display time)",
|
|
82
|
-
"lookup sections: dos/donts (cs:do/cs:dont → Example nodes with description/language/code) cannot be declared — v0 sections are single-valued field/code kinds, and the generated single-row lookup query cannot collect arrays of structured code blocks",
|
|
83
|
-
"lookup detailed toggle: no detailedParam — the built-in CLI adds Do/Don't sections under --detailed and MCP defaults to detailed with a summary projection (project); a pack lookup has one fixed output shape",
|
|
84
|
-
"lookup empty placeholders: the built-in renders `Category: —` for a standard without a category; pack renderers skip empty fields — no fallback/placeholder declaration (every current standard has a category, so outputs match today)",
|
|
85
|
-
"lookup glob expansion: the built-in expands glob queries (e.g. `react/*`) via expandLookupQueries before resolving; pack lookups pass names through verbatim",
|
|
86
|
-
"lookup by IRI: the built-in resolves an IRI or prefixed name (e.g. `cs:ComponentProps`) as the query; a pack lookup only matches the `by` property's string value, and only case-insensitively — exact-match semantics are not selectable",
|
|
87
|
-
"lookup recovery copy: built-in not-found errors carry cross-domain hints and the recovery message `List available standards.`; pack errors generate `List available standard entries.` — recovery copy is not authorable",
|
|
88
|
-
"lookup descriptions and examples: the pack lookup CLI description, tool description, names description, and examples are generated from the noun; the built-in curates all of them (e.g. `Look up detailed information for a standard by name or IRI`)",
|
|
89
|
-
"ink renderers: the built-in stories declare renderInk TUI views; the pack format has none",
|
|
90
|
-
"extra verbs: the standard noun also ships `categories` and `sample` commands; v0 packs compile only list and lookup",
|
|
91
|
-
"noun cutover: a pack story cannot register the noun `standard` while the built-in exists (reserved-noun guard in collectPackStories), so cutover must remove the built-in stories in the same release",
|
|
92
|
-
];
|
package/src/testing/store.ts
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test store bridge — createTestStore, PragmaTestStoreOptions.
|
|
3
|
-
*
|
|
4
|
-
* Wraps `@canonical/ke/testing` with pragma's default prefix map
|
|
5
|
-
* pre-configured so test authors do not need to repeat PREFIX_MAP.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
import type { TestStoreOptions, TestStoreResult } from "@canonical/ke/testing";
|
|
9
|
-
import { createTestStore as keCreateTestStore } from "@canonical/ke/testing";
|
|
10
|
-
import { PREFIX_MAP } from "../domains/shared/prefixes.js";
|
|
11
|
-
|
|
12
|
-
/** Options for creating a test store, with pragma prefixes pre-applied. */
|
|
13
|
-
interface PragmaTestStoreOptions extends Omit<TestStoreOptions, "prefixes"> {
|
|
14
|
-
prefixes?: TestStoreOptions["prefixes"];
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Create a test ke store with pragma's default prefix map.
|
|
19
|
-
*
|
|
20
|
-
* @param options - Optional overrides; additional prefixes are merged
|
|
21
|
-
* on top of the default PREFIX_MAP.
|
|
22
|
-
* @returns The test store result from ke/testing.
|
|
23
|
-
*
|
|
24
|
-
* @note Impure
|
|
25
|
-
*/
|
|
26
|
-
async function createTestStore(
|
|
27
|
-
options: PragmaTestStoreOptions = {},
|
|
28
|
-
): Promise<TestStoreResult> {
|
|
29
|
-
return keCreateTestStore({
|
|
30
|
-
...options,
|
|
31
|
-
prefixes: {
|
|
32
|
-
...PREFIX_MAP,
|
|
33
|
-
...options.prefixes,
|
|
34
|
-
},
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
export type { PragmaTestStoreOptions };
|
|
39
|
-
export { createTestStore };
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Story-pack test fixtures — a foreign (non-DS) recipe ontology plus a
|
|
3
|
-
* matching pack definition.
|
|
4
|
-
*
|
|
5
|
-
* The `ex:` namespace is deliberately outside PREFIX_MAP: tests register
|
|
6
|
-
* it via config `prefixes`, proving the DS-agnostic path end to end.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import type { StoryPackDefinition } from "../domains/shared/stories/pack/types.js";
|
|
10
|
-
|
|
11
|
-
/** Namespace of the foreign recipe ontology. */
|
|
12
|
-
export const RECIPE_NAMESPACE = "http://example.org/recipes/";
|
|
13
|
-
|
|
14
|
-
/** Prefix map entry tests merge into config `prefixes`. */
|
|
15
|
-
export const RECIPE_PREFIXES = { ex: RECIPE_NAMESPACE } as const;
|
|
16
|
-
|
|
17
|
-
/** A tiny foreign ontology with two recipe instances. */
|
|
18
|
-
export const RECIPE_TTL = `
|
|
19
|
-
@prefix ex: <${RECIPE_NAMESPACE}> .
|
|
20
|
-
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
21
|
-
|
|
22
|
-
ex:Recipe a rdfs:Class .
|
|
23
|
-
|
|
24
|
-
ex:pancakes a ex:Recipe ;
|
|
25
|
-
ex:name "Pancakes" ;
|
|
26
|
-
ex:category "breakfast" ;
|
|
27
|
-
ex:instructions "Mix, fry, flip." .
|
|
28
|
-
|
|
29
|
-
ex:gazpacho a ex:Recipe ;
|
|
30
|
-
ex:name "Gazpacho" ;
|
|
31
|
-
ex:category "soup" ;
|
|
32
|
-
ex:instructions "Blend everything cold." .
|
|
33
|
-
`;
|
|
34
|
-
|
|
35
|
-
/** A valid pack definition for the recipe ontology. */
|
|
36
|
-
export const RECIPE_STORY: StoryPackDefinition = {
|
|
37
|
-
noun: "recipe",
|
|
38
|
-
description: "List recipes",
|
|
39
|
-
list: {
|
|
40
|
-
query:
|
|
41
|
-
"SELECT ?uri ?name ?category WHERE { ?uri a ex:Recipe ; ex:name ?name ; ex:category ?category } ORDER BY ?name",
|
|
42
|
-
columns: [
|
|
43
|
-
{ field: "name" },
|
|
44
|
-
{ field: "category" },
|
|
45
|
-
{ field: "uri", label: "IRI" },
|
|
46
|
-
],
|
|
47
|
-
filters: [
|
|
48
|
-
{
|
|
49
|
-
param: "category",
|
|
50
|
-
variable: "category",
|
|
51
|
-
values: ["breakfast", "soup"],
|
|
52
|
-
},
|
|
53
|
-
],
|
|
54
|
-
},
|
|
55
|
-
lookup: {
|
|
56
|
-
type: "ex:Recipe",
|
|
57
|
-
by: "ex:name",
|
|
58
|
-
fields: [{ name: "category", property: "ex:category" }],
|
|
59
|
-
sections: [
|
|
60
|
-
{ name: "instructions", property: "ex:instructions", kind: "field" },
|
|
61
|
-
],
|
|
62
|
-
},
|
|
63
|
-
};
|
package/src/testing/types.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Testing type definitions.
|
|
3
|
-
*
|
|
4
|
-
* Shared types for the MCP test client and other test infrastructure.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import type { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Return value from {@link createTestMcpClient}.
|
|
11
|
-
*
|
|
12
|
-
* The caller must invoke `cleanup` when done to close
|
|
13
|
-
* both the client and server transports.
|
|
14
|
-
*/
|
|
15
|
-
export interface TestMcpClientResult {
|
|
16
|
-
/** The connected MCP client instance. */
|
|
17
|
-
client: Client;
|
|
18
|
-
/** Closes the client and server transports. */
|
|
19
|
-
cleanup: () => Promise<void>;
|
|
20
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { Box, Text } from "ink";
|
|
2
|
-
import compactUri from "../../../domains/shared/compactUri.js";
|
|
3
|
-
import { PREFIX_MAP } from "../../../domains/shared/prefixes.js";
|
|
4
|
-
import type { BulletListProps } from "./types.js";
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* A simple bulleted list with `•` prefix.
|
|
8
|
-
*
|
|
9
|
-
* Formats each item as a string, compacting URIs when detected.
|
|
10
|
-
*/
|
|
11
|
-
export default function BulletList({ items, prefixes }: BulletListProps) {
|
|
12
|
-
const prefixMap = prefixes ?? PREFIX_MAP;
|
|
13
|
-
|
|
14
|
-
return (
|
|
15
|
-
<Box flexDirection="column" paddingLeft={2}>
|
|
16
|
-
{items.map((item) => {
|
|
17
|
-
const text = formatItem(item, prefixMap);
|
|
18
|
-
return <Text key={text}>• {text}</Text>;
|
|
19
|
-
})}
|
|
20
|
-
</Box>
|
|
21
|
-
);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
function formatItem(
|
|
25
|
-
value: unknown,
|
|
26
|
-
prefixes: Readonly<Record<string, string>>,
|
|
27
|
-
): string {
|
|
28
|
-
if (value === null || value === undefined) return "";
|
|
29
|
-
if (typeof value === "string") {
|
|
30
|
-
if (
|
|
31
|
-
value.startsWith("http://") ||
|
|
32
|
-
value.startsWith("https://") ||
|
|
33
|
-
/^[a-z][a-z0-9+.-]*:/i.test(value)
|
|
34
|
-
) {
|
|
35
|
-
return compactUri(value, prefixes);
|
|
36
|
-
}
|
|
37
|
-
return value;
|
|
38
|
-
}
|
|
39
|
-
if (typeof value === "object" && !Array.isArray(value)) {
|
|
40
|
-
return Object.entries(value as Record<string, unknown>)
|
|
41
|
-
.filter(([, v]) => v !== null && v !== undefined)
|
|
42
|
-
.map(([k, v]) => `${k}: ${String(v)}`)
|
|
43
|
-
.join(" | ");
|
|
44
|
-
}
|
|
45
|
-
return String(value);
|
|
46
|
-
}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import chalk from "chalk";
|
|
2
|
-
import { BOX, DOMAIN_COLORS } from "../../constants.js";
|
|
3
|
-
import { truncateText } from "../../helpers/index.js";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Build a bordered card string for a single lookup result.
|
|
7
|
-
*
|
|
8
|
-
* Uses double-line box-drawing characters for the border. The title
|
|
9
|
-
* renders in the domain's instance color. When a badge is present
|
|
10
|
-
* (e.g., "[1 of 2]"), it appears right-aligned in the header.
|
|
11
|
-
* Every body line is wrapped with `║` side borders.
|
|
12
|
-
*
|
|
13
|
-
* @param title - Card title for the header bar.
|
|
14
|
-
* @param domain - Domain name for color lookup.
|
|
15
|
-
* @param bodyLines - Pre-formatted body lines to wrap with borders.
|
|
16
|
-
* @param termWidth - Terminal width in columns.
|
|
17
|
-
* @param badge - Optional right-aligned badge text (e.g., "[1 of 2]").
|
|
18
|
-
* @returns A fully bordered card as a single string.
|
|
19
|
-
*/
|
|
20
|
-
export default function buildCard(
|
|
21
|
-
title: string,
|
|
22
|
-
domain: string,
|
|
23
|
-
bodyLines: readonly string[],
|
|
24
|
-
termWidth: number,
|
|
25
|
-
badge?: string,
|
|
26
|
-
): string {
|
|
27
|
-
const innerWidth = Math.max(termWidth - 4, 20);
|
|
28
|
-
const colors = DOMAIN_COLORS[domain];
|
|
29
|
-
const colorFn = resolveChalkColor(colors?.instanceFg);
|
|
30
|
-
|
|
31
|
-
const badgeText = badge ? ` ${badge}` : "";
|
|
32
|
-
const maxTitleWidth = innerWidth - badgeText.length;
|
|
33
|
-
const displayTitle = truncateText(title, maxTitleWidth);
|
|
34
|
-
const titlePad = innerWidth - displayTitle.length - badgeText.length;
|
|
35
|
-
|
|
36
|
-
const topBorder = `${BOX.topLeft}${BOX.horizontal.repeat(innerWidth + 2)}${BOX.topRight}`;
|
|
37
|
-
const badgePart = badge ? chalk.dim(badgeText) : "";
|
|
38
|
-
const titleLine = `${BOX.vertical} ${chalk.bold(colorFn(displayTitle))}${" ".repeat(Math.max(titlePad, 0))}${badgePart} ${BOX.vertical}`;
|
|
39
|
-
const divider = `${BOX.dividerLeft}${BOX.dividerHorizontal.repeat(innerWidth + 2)}${BOX.dividerRight}`;
|
|
40
|
-
const bottomBorder = `${BOX.bottomLeft}${BOX.horizontal.repeat(innerWidth + 2)}${BOX.bottomRight}`;
|
|
41
|
-
|
|
42
|
-
const expandedLines = bodyLines.flatMap((line) => line.split("\n"));
|
|
43
|
-
const borderedBody = expandedLines.map((line) => {
|
|
44
|
-
const visibleWidth = stripAnsi(line).length;
|
|
45
|
-
const pad = Math.max(innerWidth - visibleWidth, 0);
|
|
46
|
-
return `${BOX.vertical} ${line}${" ".repeat(pad)} ${BOX.vertical}`;
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
return [topBorder, titleLine, divider, ...borderedBody, bottomBorder].join(
|
|
50
|
-
"\n",
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
function resolveChalkColor(
|
|
55
|
-
colorName: string | undefined,
|
|
56
|
-
): (text: string) => string {
|
|
57
|
-
if (!colorName) return (text) => text;
|
|
58
|
-
const fn = chalk[colorName as keyof typeof chalk];
|
|
59
|
-
return typeof fn === "function"
|
|
60
|
-
? (fn as (text: string) => string)
|
|
61
|
-
: (text) => text;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* Strip ANSI escape codes from a string to measure visible width.
|
|
66
|
-
*/
|
|
67
|
-
function stripAnsi(text: string): string {
|
|
68
|
-
return text.replace(
|
|
69
|
-
// biome-ignore lint/suspicious/noControlCharactersInRegex: stripping ANSI escapes
|
|
70
|
-
/\x1b\[[0-9;]*m/g,
|
|
71
|
-
"",
|
|
72
|
-
);
|
|
73
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as buildCard } from "./Card.js";
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type React from "react";
|
|
2
|
-
|
|
3
|
-
export interface CardProps {
|
|
4
|
-
/** Card title displayed in the header bar. */
|
|
5
|
-
readonly title: string;
|
|
6
|
-
/** Domain name — indexes into DOMAIN_COLORS for the title color. */
|
|
7
|
-
readonly domain: string;
|
|
8
|
-
/** Optional badge text displayed right-aligned in the header (e.g., "[1 of 2]"). */
|
|
9
|
-
readonly badge?: string;
|
|
10
|
-
/** Card body content. */
|
|
11
|
-
readonly children: React.ReactNode;
|
|
12
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Box, Text } from "ink";
|
|
2
|
-
import { BOX } from "../../constants.js";
|
|
3
|
-
import { syntaxColor } from "../../helpers/index.js";
|
|
4
|
-
import { useTerminalSize } from "../../hooks/index.js";
|
|
5
|
-
import type { CodeBlockProps } from "./types.js";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* A bordered code block with lightweight syntax coloring.
|
|
9
|
-
*
|
|
10
|
-
* Renders code inside a single-line bordered sub-box using thin
|
|
11
|
-
* box-drawing characters. Applies keyword-level colorization via
|
|
12
|
-
* the syntaxColor helper.
|
|
13
|
-
*/
|
|
14
|
-
export default function CodeBlock({ code, language }: CodeBlockProps) {
|
|
15
|
-
const { columns: termWidth } = useTerminalSize();
|
|
16
|
-
const innerWidth = Math.max(termWidth - 8, 20);
|
|
17
|
-
|
|
18
|
-
const colored = syntaxColor(code, language);
|
|
19
|
-
const lines = colored.split("\n");
|
|
20
|
-
|
|
21
|
-
const topBorder = ` ${BOX.thinVertical === "│" ? "┌" : BOX.thinVertical}${"─".repeat(innerWidth)}${"┐"}`;
|
|
22
|
-
const bottomBorder = ` ${"└"}${"─".repeat(innerWidth)}${"┘"}`;
|
|
23
|
-
|
|
24
|
-
return (
|
|
25
|
-
<Box flexDirection="column">
|
|
26
|
-
<Text dimColor>{topBorder}</Text>
|
|
27
|
-
{lines.map((line, i) => (
|
|
28
|
-
// biome-ignore lint/suspicious/noArrayIndexKey: static code lines
|
|
29
|
-
<Text key={i}>
|
|
30
|
-
{" │ "}
|
|
31
|
-
{line}
|
|
32
|
-
</Text>
|
|
33
|
-
))}
|
|
34
|
-
<Text dimColor>{bottomBorder}</Text>
|
|
35
|
-
</Box>
|
|
36
|
-
);
|
|
37
|
-
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { Text } from "ink";
|
|
2
|
-
import compactUri from "../../../domains/shared/compactUri.js";
|
|
3
|
-
import { PREFIX_MAP } from "../../../domains/shared/prefixes.js";
|
|
4
|
-
import { COL_GAP, DOMAIN_COLORS } from "../../constants.js";
|
|
5
|
-
import { truncateText } from "../../helpers/index.js";
|
|
6
|
-
import type { DataRowProps } from "./types.js";
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* A single data row in the list view table.
|
|
10
|
-
*
|
|
11
|
-
* Formats each column value, truncates to fit the computed width,
|
|
12
|
-
* and applies domain-aware coloring: IRI columns render dim,
|
|
13
|
-
* name columns render in the domain's instance color.
|
|
14
|
-
*/
|
|
15
|
-
export default function DataRow<T>({
|
|
16
|
-
item,
|
|
17
|
-
columns,
|
|
18
|
-
widths,
|
|
19
|
-
prefixes,
|
|
20
|
-
domain,
|
|
21
|
-
}: DataRowProps<T>) {
|
|
22
|
-
const prefixMap = prefixes ?? PREFIX_MAP;
|
|
23
|
-
const gap = " ".repeat(COL_GAP);
|
|
24
|
-
const colors = DOMAIN_COLORS[domain];
|
|
25
|
-
|
|
26
|
-
const cells = columns.map((col, i) => {
|
|
27
|
-
const w = widths[i] ?? 20;
|
|
28
|
-
const raw = item[col.key];
|
|
29
|
-
const formatted = formatCellValue(raw, col, prefixMap);
|
|
30
|
-
const truncated = truncateText(formatted, w).padEnd(w);
|
|
31
|
-
|
|
32
|
-
if (col.key === "uri") {
|
|
33
|
-
return (
|
|
34
|
-
<Text key={col.key} dimColor>
|
|
35
|
-
{truncated}
|
|
36
|
-
</Text>
|
|
37
|
-
);
|
|
38
|
-
}
|
|
39
|
-
if (col.key === "name" && colors) {
|
|
40
|
-
return (
|
|
41
|
-
<Text key={col.key} color={colors.instanceFg}>
|
|
42
|
-
{truncated}
|
|
43
|
-
</Text>
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
return <Text key={col.key}>{truncated}</Text>;
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
return (
|
|
50
|
-
<Text>
|
|
51
|
-
{cells.map((cell, i) => (
|
|
52
|
-
<Text key={columns[i]?.key ?? i}>
|
|
53
|
-
{i > 0 ? gap : ""}
|
|
54
|
-
{cell}
|
|
55
|
-
</Text>
|
|
56
|
-
))}
|
|
57
|
-
</Text>
|
|
58
|
-
);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
function formatCellValue(
|
|
62
|
-
raw: unknown,
|
|
63
|
-
col: { format?: (value: unknown) => string },
|
|
64
|
-
prefixes: Readonly<Record<string, string>>,
|
|
65
|
-
): string {
|
|
66
|
-
if (col.format) return col.format(raw);
|
|
67
|
-
if (raw === null || raw === undefined) return "";
|
|
68
|
-
if (typeof raw === "string" && looksLikeUri(raw))
|
|
69
|
-
return compactUri(raw, prefixes);
|
|
70
|
-
if (Array.isArray(raw)) return raw.map(String).join(", ");
|
|
71
|
-
return String(raw);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
function looksLikeUri(value: string): boolean {
|
|
75
|
-
return (
|
|
76
|
-
value.startsWith("http://") ||
|
|
77
|
-
value.startsWith("https://") ||
|
|
78
|
-
/^[a-z][a-z0-9+.-]*:/i.test(value)
|
|
79
|
-
);
|
|
80
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { ColumnDef } from "../../../domains/shared/contracts.js";
|
|
2
|
-
|
|
3
|
-
export interface DataRowProps<T> {
|
|
4
|
-
/** The data item for this row. */
|
|
5
|
-
readonly item: T;
|
|
6
|
-
/** Visible columns to render. */
|
|
7
|
-
readonly columns: readonly ColumnDef<T>[];
|
|
8
|
-
/** Computed widths for each column. */
|
|
9
|
-
readonly widths: readonly number[];
|
|
10
|
-
/** URI prefix map for compacting IRIs. */
|
|
11
|
-
readonly prefixes?: Readonly<Record<string, string>>;
|
|
12
|
-
/** Domain name — indexes into DOMAIN_COLORS for coloring. */
|
|
13
|
-
readonly domain: string;
|
|
14
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Box, Text } from "ink";
|
|
2
|
-
import type { FieldRowProps } from "./types.js";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* A label-value pair rendered as a single row in a lookup card.
|
|
6
|
-
*
|
|
7
|
-
* The label is bold and padded to a fixed width so that values
|
|
8
|
-
* align vertically across multiple field rows.
|
|
9
|
-
*/
|
|
10
|
-
export default function FieldRow({
|
|
11
|
-
label,
|
|
12
|
-
value,
|
|
13
|
-
labelWidth,
|
|
14
|
-
valueColor,
|
|
15
|
-
}: FieldRowProps) {
|
|
16
|
-
const paddedLabel = label.padEnd(labelWidth);
|
|
17
|
-
|
|
18
|
-
return (
|
|
19
|
-
<Box>
|
|
20
|
-
<Text bold>{` ${paddedLabel}`}</Text>
|
|
21
|
-
<Text color={valueColor}>{` ${value}`}</Text>
|
|
22
|
-
</Box>
|
|
23
|
-
);
|
|
24
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export interface FieldRowProps {
|
|
2
|
-
/** Field label (rendered bold, fixed-width). */
|
|
3
|
-
readonly label: string;
|
|
4
|
-
/** Field value (rendered after the label). */
|
|
5
|
-
readonly value: string;
|
|
6
|
-
/** Label column width for alignment across rows. */
|
|
7
|
-
readonly labelWidth: number;
|
|
8
|
-
/** Optional chalk color name for the value text. */
|
|
9
|
-
readonly valueColor?: string;
|
|
10
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Box, Text } from "ink";
|
|
2
|
-
import { COL_GAP } from "../../constants.js";
|
|
3
|
-
import { truncateText } from "../../helpers/index.js";
|
|
4
|
-
import type { HeaderRowProps } from "./types.js";
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Column header labels with a separator line below.
|
|
8
|
-
*
|
|
9
|
-
* Renders each column label in bold, padded to its computed width,
|
|
10
|
-
* followed by a horizontal rule of `─` characters.
|
|
11
|
-
*/
|
|
12
|
-
export default function HeaderRow<T>({ columns, widths }: HeaderRowProps<T>) {
|
|
13
|
-
const gap = " ".repeat(COL_GAP);
|
|
14
|
-
|
|
15
|
-
const labels = columns
|
|
16
|
-
.map((col, i) => {
|
|
17
|
-
const w = widths[i] ?? col.label.length;
|
|
18
|
-
return truncateText(col.label, w).padEnd(w);
|
|
19
|
-
})
|
|
20
|
-
.join(gap);
|
|
21
|
-
|
|
22
|
-
const totalWidth =
|
|
23
|
-
widths.reduce((sum, w) => sum + w, 0) + (widths.length - 1) * COL_GAP;
|
|
24
|
-
const separator = "─".repeat(totalWidth);
|
|
25
|
-
|
|
26
|
-
return (
|
|
27
|
-
<Box flexDirection="column">
|
|
28
|
-
<Text bold>{labels}</Text>
|
|
29
|
-
<Text dimColor>{separator}</Text>
|
|
30
|
-
</Box>
|
|
31
|
-
);
|
|
32
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { ColumnDef } from "../../../domains/shared/contracts.js";
|
|
2
|
-
|
|
3
|
-
export interface HeaderRowProps<T> {
|
|
4
|
-
/** Visible columns to render labels for. */
|
|
5
|
-
readonly columns: readonly ColumnDef<T>[];
|
|
6
|
-
/** Computed widths for each column. */
|
|
7
|
-
readonly widths: readonly number[];
|
|
8
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Box, Text } from "ink";
|
|
2
|
-
import { formatMarkdown } from "../../helpers/index.js";
|
|
3
|
-
import type { MarkdownTextProps } from "./types.js";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Minimal Markdown-to-ANSI renderer for terminal display.
|
|
7
|
-
*
|
|
8
|
-
* Converts `**bold**` to chalk bold, `` `code` `` to dim, and
|
|
9
|
-
* `- item` to bullet `•`. No heading parsing, no link rendering.
|
|
10
|
-
*/
|
|
11
|
-
export default function MarkdownText({ content }: MarkdownTextProps) {
|
|
12
|
-
const formatted = formatMarkdown(content);
|
|
13
|
-
|
|
14
|
-
return (
|
|
15
|
-
<Box paddingLeft={2}>
|
|
16
|
-
<Text>{formatted}</Text>
|
|
17
|
-
</Box>
|
|
18
|
-
);
|
|
19
|
-
}
|