@selvakumaresra/specship 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +8 -7
- package/scripts/sync-shim-version.mjs +64 -0
- package/dist/bin/node-version-check.d.ts +0 -37
- package/dist/bin/node-version-check.d.ts.map +0 -1
- package/dist/bin/node-version-check.js +0 -79
- package/dist/bin/node-version-check.js.map +0 -1
- package/dist/bin/specship.d.ts +0 -25
- package/dist/bin/specship.d.ts.map +0 -1
- package/dist/bin/specship.js +0 -2018
- package/dist/bin/specship.js.map +0 -1
- package/dist/bin/uninstall.d.ts +0 -13
- package/dist/bin/uninstall.d.ts.map +0 -1
- package/dist/bin/uninstall.js +0 -35
- package/dist/bin/uninstall.js.map +0 -1
- package/dist/context/formatter.d.ts +0 -30
- package/dist/context/formatter.d.ts.map +0 -1
- package/dist/context/formatter.js +0 -263
- package/dist/context/formatter.js.map +0 -1
- package/dist/context/index.d.ts +0 -119
- package/dist/context/index.d.ts.map +0 -1
- package/dist/context/index.js +0 -1289
- package/dist/context/index.js.map +0 -1
- package/dist/context/markers.d.ts +0 -19
- package/dist/context/markers.d.ts.map +0 -1
- package/dist/context/markers.js +0 -22
- package/dist/context/markers.js.map +0 -1
- package/dist/db/index.d.ts +0 -101
- package/dist/db/index.d.ts.map +0 -1
- package/dist/db/index.js +0 -276
- package/dist/db/index.js.map +0 -1
- package/dist/db/migrations.d.ts +0 -44
- package/dist/db/migrations.d.ts.map +0 -1
- package/dist/db/migrations.js +0 -427
- package/dist/db/migrations.js.map +0 -1
- package/dist/db/queries.d.ts +0 -357
- package/dist/db/queries.d.ts.map +0 -1
- package/dist/db/queries.js +0 -1504
- package/dist/db/queries.js.map +0 -1
- package/dist/db/schema.sql +0 -410
- package/dist/db/spec-queries.d.ts +0 -101
- package/dist/db/spec-queries.d.ts.map +0 -1
- package/dist/db/spec-queries.js +0 -675
- package/dist/db/spec-queries.js.map +0 -1
- package/dist/db/sqlite-adapter.d.ts +0 -65
- package/dist/db/sqlite-adapter.d.ts.map +0 -1
- package/dist/db/sqlite-adapter.js +0 -214
- package/dist/db/sqlite-adapter.js.map +0 -1
- package/dist/directory.d.ts +0 -57
- package/dist/directory.d.ts.map +0 -1
- package/dist/directory.js +0 -253
- package/dist/directory.js.map +0 -1
- package/dist/errors.d.ts +0 -136
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -219
- package/dist/errors.js.map +0 -1
- package/dist/extraction/dfm-extractor.d.ts +0 -31
- package/dist/extraction/dfm-extractor.d.ts.map +0 -1
- package/dist/extraction/dfm-extractor.js +0 -151
- package/dist/extraction/dfm-extractor.js.map +0 -1
- package/dist/extraction/generated-detection.d.ts +0 -30
- package/dist/extraction/generated-detection.d.ts.map +0 -1
- package/dist/extraction/generated-detection.js +0 -80
- package/dist/extraction/generated-detection.js.map +0 -1
- package/dist/extraction/grammars.d.ts +0 -100
- package/dist/extraction/grammars.d.ts.map +0 -1
- package/dist/extraction/grammars.js +0 -426
- package/dist/extraction/grammars.js.map +0 -1
- package/dist/extraction/index.d.ts +0 -138
- package/dist/extraction/index.d.ts.map +0 -1
- package/dist/extraction/index.js +0 -1394
- package/dist/extraction/index.js.map +0 -1
- package/dist/extraction/languages/c-cpp.d.ts +0 -4
- package/dist/extraction/languages/c-cpp.d.ts.map +0 -1
- package/dist/extraction/languages/c-cpp.js +0 -171
- package/dist/extraction/languages/c-cpp.js.map +0 -1
- package/dist/extraction/languages/csharp.d.ts +0 -3
- package/dist/extraction/languages/csharp.d.ts.map +0 -1
- package/dist/extraction/languages/csharp.js +0 -73
- package/dist/extraction/languages/csharp.js.map +0 -1
- package/dist/extraction/languages/dart.d.ts +0 -3
- package/dist/extraction/languages/dart.d.ts.map +0 -1
- package/dist/extraction/languages/dart.js +0 -192
- package/dist/extraction/languages/dart.js.map +0 -1
- package/dist/extraction/languages/go.d.ts +0 -3
- package/dist/extraction/languages/go.d.ts.map +0 -1
- package/dist/extraction/languages/go.js +0 -74
- package/dist/extraction/languages/go.js.map +0 -1
- package/dist/extraction/languages/index.d.ts +0 -10
- package/dist/extraction/languages/index.d.ts.map +0 -1
- package/dist/extraction/languages/index.js +0 -51
- package/dist/extraction/languages/index.js.map +0 -1
- package/dist/extraction/languages/java.d.ts +0 -3
- package/dist/extraction/languages/java.d.ts.map +0 -1
- package/dist/extraction/languages/java.js +0 -70
- package/dist/extraction/languages/java.js.map +0 -1
- package/dist/extraction/languages/javascript.d.ts +0 -3
- package/dist/extraction/languages/javascript.d.ts.map +0 -1
- package/dist/extraction/languages/javascript.js +0 -90
- package/dist/extraction/languages/javascript.js.map +0 -1
- package/dist/extraction/languages/kotlin.d.ts +0 -3
- package/dist/extraction/languages/kotlin.d.ts.map +0 -1
- package/dist/extraction/languages/kotlin.js +0 -259
- package/dist/extraction/languages/kotlin.js.map +0 -1
- package/dist/extraction/languages/lua.d.ts +0 -3
- package/dist/extraction/languages/lua.d.ts.map +0 -1
- package/dist/extraction/languages/lua.js +0 -150
- package/dist/extraction/languages/lua.js.map +0 -1
- package/dist/extraction/languages/luau.d.ts +0 -3
- package/dist/extraction/languages/luau.d.ts.map +0 -1
- package/dist/extraction/languages/luau.js +0 -37
- package/dist/extraction/languages/luau.js.map +0 -1
- package/dist/extraction/languages/objc.d.ts +0 -3
- package/dist/extraction/languages/objc.d.ts.map +0 -1
- package/dist/extraction/languages/objc.js +0 -133
- package/dist/extraction/languages/objc.js.map +0 -1
- package/dist/extraction/languages/pascal.d.ts +0 -3
- package/dist/extraction/languages/pascal.d.ts.map +0 -1
- package/dist/extraction/languages/pascal.js +0 -66
- package/dist/extraction/languages/pascal.js.map +0 -1
- package/dist/extraction/languages/php.d.ts +0 -3
- package/dist/extraction/languages/php.d.ts.map +0 -1
- package/dist/extraction/languages/php.js +0 -107
- package/dist/extraction/languages/php.js.map +0 -1
- package/dist/extraction/languages/python.d.ts +0 -3
- package/dist/extraction/languages/python.d.ts.map +0 -1
- package/dist/extraction/languages/python.js +0 -56
- package/dist/extraction/languages/python.js.map +0 -1
- package/dist/extraction/languages/ruby.d.ts +0 -3
- package/dist/extraction/languages/ruby.d.ts.map +0 -1
- package/dist/extraction/languages/ruby.js +0 -114
- package/dist/extraction/languages/ruby.js.map +0 -1
- package/dist/extraction/languages/rust.d.ts +0 -3
- package/dist/extraction/languages/rust.d.ts.map +0 -1
- package/dist/extraction/languages/rust.js +0 -109
- package/dist/extraction/languages/rust.js.map +0 -1
- package/dist/extraction/languages/scala.d.ts +0 -3
- package/dist/extraction/languages/scala.d.ts.map +0 -1
- package/dist/extraction/languages/scala.js +0 -139
- package/dist/extraction/languages/scala.js.map +0 -1
- package/dist/extraction/languages/swift.d.ts +0 -3
- package/dist/extraction/languages/swift.d.ts.map +0 -1
- package/dist/extraction/languages/swift.js +0 -91
- package/dist/extraction/languages/swift.js.map +0 -1
- package/dist/extraction/languages/typescript.d.ts +0 -3
- package/dist/extraction/languages/typescript.d.ts.map +0 -1
- package/dist/extraction/languages/typescript.js +0 -129
- package/dist/extraction/languages/typescript.js.map +0 -1
- package/dist/extraction/liquid-extractor.d.ts +0 -52
- package/dist/extraction/liquid-extractor.d.ts.map +0 -1
- package/dist/extraction/liquid-extractor.js +0 -313
- package/dist/extraction/liquid-extractor.js.map +0 -1
- package/dist/extraction/mybatis-extractor.d.ts +0 -48
- package/dist/extraction/mybatis-extractor.d.ts.map +0 -1
- package/dist/extraction/mybatis-extractor.js +0 -198
- package/dist/extraction/mybatis-extractor.js.map +0 -1
- package/dist/extraction/parse-worker.d.ts +0 -8
- package/dist/extraction/parse-worker.d.ts.map +0 -1
- package/dist/extraction/parse-worker.js +0 -94
- package/dist/extraction/parse-worker.js.map +0 -1
- package/dist/extraction/specs/markdown-spec-extractor.d.ts +0 -59
- package/dist/extraction/specs/markdown-spec-extractor.d.ts.map +0 -1
- package/dist/extraction/specs/markdown-spec-extractor.js +0 -327
- package/dist/extraction/specs/markdown-spec-extractor.js.map +0 -1
- package/dist/extraction/specs/types.d.ts +0 -39
- package/dist/extraction/specs/types.d.ts.map +0 -1
- package/dist/extraction/specs/types.js +0 -8
- package/dist/extraction/specs/types.js.map +0 -1
- package/dist/extraction/svelte-extractor.d.ts +0 -56
- package/dist/extraction/svelte-extractor.d.ts.map +0 -1
- package/dist/extraction/svelte-extractor.js +0 -272
- package/dist/extraction/svelte-extractor.js.map +0 -1
- package/dist/extraction/tree-sitter-helpers.d.ts +0 -28
- package/dist/extraction/tree-sitter-helpers.d.ts.map +0 -1
- package/dist/extraction/tree-sitter-helpers.js +0 -103
- package/dist/extraction/tree-sitter-helpers.js.map +0 -1
- package/dist/extraction/tree-sitter-types.d.ts +0 -193
- package/dist/extraction/tree-sitter-types.d.ts.map +0 -1
- package/dist/extraction/tree-sitter-types.js +0 -10
- package/dist/extraction/tree-sitter-types.js.map +0 -1
- package/dist/extraction/tree-sitter.d.ts +0 -317
- package/dist/extraction/tree-sitter.d.ts.map +0 -1
- package/dist/extraction/tree-sitter.js +0 -3092
- package/dist/extraction/tree-sitter.js.map +0 -1
- package/dist/extraction/vue-extractor.d.ts +0 -51
- package/dist/extraction/vue-extractor.d.ts.map +0 -1
- package/dist/extraction/vue-extractor.js +0 -251
- package/dist/extraction/vue-extractor.js.map +0 -1
- package/dist/extraction/wasm/tree-sitter-lua.wasm +0 -0
- package/dist/extraction/wasm/tree-sitter-luau.wasm +0 -0
- package/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
- package/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
- package/dist/extraction/wasm-runtime-flags.d.ts +0 -38
- package/dist/extraction/wasm-runtime-flags.d.ts.map +0 -1
- package/dist/extraction/wasm-runtime-flags.js +0 -106
- package/dist/extraction/wasm-runtime-flags.js.map +0 -1
- package/dist/graph/index.d.ts +0 -8
- package/dist/graph/index.d.ts.map +0 -1
- package/dist/graph/index.js +0 -13
- package/dist/graph/index.js.map +0 -1
- package/dist/graph/queries.d.ts +0 -106
- package/dist/graph/queries.d.ts.map +0 -1
- package/dist/graph/queries.js +0 -366
- package/dist/graph/queries.js.map +0 -1
- package/dist/graph/traversal.d.ts +0 -127
- package/dist/graph/traversal.d.ts.map +0 -1
- package/dist/graph/traversal.js +0 -531
- package/dist/graph/traversal.js.map +0 -1
- package/dist/index.d.ts +0 -551
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -1165
- package/dist/index.js.map +0 -1
- package/dist/installer/config-writer.d.ts +0 -28
- package/dist/installer/config-writer.d.ts.map +0 -1
- package/dist/installer/config-writer.js +0 -91
- package/dist/installer/config-writer.js.map +0 -1
- package/dist/installer/index.d.ts +0 -87
- package/dist/installer/index.d.ts.map +0 -1
- package/dist/installer/index.js +0 -409
- package/dist/installer/index.js.map +0 -1
- package/dist/installer/instructions-template.d.ts +0 -18
- package/dist/installer/instructions-template.d.ts.map +0 -1
- package/dist/installer/instructions-template.js +0 -21
- package/dist/installer/instructions-template.js.map +0 -1
- package/dist/installer/targets/claude.d.ts +0 -88
- package/dist/installer/targets/claude.d.ts.map +0 -1
- package/dist/installer/targets/claude.js +0 -582
- package/dist/installer/targets/claude.js.map +0 -1
- package/dist/installer/targets/registry.d.ts +0 -19
- package/dist/installer/targets/registry.d.ts.map +0 -1
- package/dist/installer/targets/registry.js +0 -31
- package/dist/installer/targets/registry.js.map +0 -1
- package/dist/installer/targets/shared.d.ts +0 -62
- package/dist/installer/targets/shared.d.ts.map +0 -1
- package/dist/installer/targets/shared.js +0 -207
- package/dist/installer/targets/shared.js.map +0 -1
- package/dist/installer/targets/types.d.ts +0 -76
- package/dist/installer/targets/types.d.ts.map +0 -1
- package/dist/installer/targets/types.js +0 -12
- package/dist/installer/targets/types.js.map +0 -1
- package/dist/isolation/worktree.d.ts +0 -65
- package/dist/isolation/worktree.d.ts.map +0 -1
- package/dist/isolation/worktree.js +0 -231
- package/dist/isolation/worktree.js.map +0 -1
- package/dist/mcp/daemon-paths.d.ts +0 -46
- package/dist/mcp/daemon-paths.d.ts.map +0 -1
- package/dist/mcp/daemon-paths.js +0 -125
- package/dist/mcp/daemon-paths.js.map +0 -1
- package/dist/mcp/daemon.d.ts +0 -161
- package/dist/mcp/daemon.d.ts.map +0 -1
- package/dist/mcp/daemon.js +0 -403
- package/dist/mcp/daemon.js.map +0 -1
- package/dist/mcp/engine.d.ts +0 -105
- package/dist/mcp/engine.d.ts.map +0 -1
- package/dist/mcp/engine.js +0 -270
- package/dist/mcp/engine.js.map +0 -1
- package/dist/mcp/index.d.ts +0 -112
- package/dist/mcp/index.d.ts.map +0 -1
- package/dist/mcp/index.js +0 -477
- package/dist/mcp/index.js.map +0 -1
- package/dist/mcp/proxy.d.ts +0 -81
- package/dist/mcp/proxy.d.ts.map +0 -1
- package/dist/mcp/proxy.js +0 -510
- package/dist/mcp/proxy.js.map +0 -1
- package/dist/mcp/server-instructions.d.ts +0 -18
- package/dist/mcp/server-instructions.d.ts.map +0 -1
- package/dist/mcp/server-instructions.js +0 -77
- package/dist/mcp/server-instructions.js.map +0 -1
- package/dist/mcp/session.d.ts +0 -77
- package/dist/mcp/session.d.ts.map +0 -1
- package/dist/mcp/session.js +0 -294
- package/dist/mcp/session.js.map +0 -1
- package/dist/mcp/spec-tools.d.ts +0 -39
- package/dist/mcp/spec-tools.d.ts.map +0 -1
- package/dist/mcp/spec-tools.js +0 -326
- package/dist/mcp/spec-tools.js.map +0 -1
- package/dist/mcp/tools.d.ts +0 -404
- package/dist/mcp/tools.d.ts.map +0 -1
- package/dist/mcp/tools.js +0 -3066
- package/dist/mcp/tools.js.map +0 -1
- package/dist/mcp/transport.d.ts +0 -188
- package/dist/mcp/transport.d.ts.map +0 -1
- package/dist/mcp/transport.js +0 -343
- package/dist/mcp/transport.js.map +0 -1
- package/dist/mcp/version.d.ts +0 -19
- package/dist/mcp/version.d.ts.map +0 -1
- package/dist/mcp/version.js +0 -71
- package/dist/mcp/version.js.map +0 -1
- package/dist/resolution/callback-synthesizer.d.ts +0 -10
- package/dist/resolution/callback-synthesizer.d.ts.map +0 -1
- package/dist/resolution/callback-synthesizer.js +0 -1300
- package/dist/resolution/callback-synthesizer.js.map +0 -1
- package/dist/resolution/frameworks/cargo-workspace.d.ts +0 -18
- package/dist/resolution/frameworks/cargo-workspace.d.ts.map +0 -1
- package/dist/resolution/frameworks/cargo-workspace.js +0 -225
- package/dist/resolution/frameworks/cargo-workspace.js.map +0 -1
- package/dist/resolution/frameworks/csharp.d.ts +0 -8
- package/dist/resolution/frameworks/csharp.d.ts.map +0 -1
- package/dist/resolution/frameworks/csharp.js +0 -241
- package/dist/resolution/frameworks/csharp.js.map +0 -1
- package/dist/resolution/frameworks/drupal.d.ts +0 -51
- package/dist/resolution/frameworks/drupal.d.ts.map +0 -1
- package/dist/resolution/frameworks/drupal.js +0 -367
- package/dist/resolution/frameworks/drupal.js.map +0 -1
- package/dist/resolution/frameworks/expo-modules.d.ts +0 -3
- package/dist/resolution/frameworks/expo-modules.d.ts.map +0 -1
- package/dist/resolution/frameworks/expo-modules.js +0 -143
- package/dist/resolution/frameworks/expo-modules.js.map +0 -1
- package/dist/resolution/frameworks/express.d.ts +0 -8
- package/dist/resolution/frameworks/express.d.ts.map +0 -1
- package/dist/resolution/frameworks/express.js +0 -308
- package/dist/resolution/frameworks/express.js.map +0 -1
- package/dist/resolution/frameworks/fabric.d.ts +0 -3
- package/dist/resolution/frameworks/fabric.d.ts.map +0 -1
- package/dist/resolution/frameworks/fabric.js +0 -354
- package/dist/resolution/frameworks/fabric.js.map +0 -1
- package/dist/resolution/frameworks/go.d.ts +0 -8
- package/dist/resolution/frameworks/go.d.ts.map +0 -1
- package/dist/resolution/frameworks/go.js +0 -161
- package/dist/resolution/frameworks/go.js.map +0 -1
- package/dist/resolution/frameworks/index.d.ts +0 -48
- package/dist/resolution/frameworks/index.d.ts.map +0 -1
- package/dist/resolution/frameworks/index.js +0 -161
- package/dist/resolution/frameworks/index.js.map +0 -1
- package/dist/resolution/frameworks/java.d.ts +0 -8
- package/dist/resolution/frameworks/java.d.ts.map +0 -1
- package/dist/resolution/frameworks/java.js +0 -504
- package/dist/resolution/frameworks/java.js.map +0 -1
- package/dist/resolution/frameworks/laravel.d.ts +0 -13
- package/dist/resolution/frameworks/laravel.d.ts.map +0 -1
- package/dist/resolution/frameworks/laravel.js +0 -257
- package/dist/resolution/frameworks/laravel.js.map +0 -1
- package/dist/resolution/frameworks/nestjs.d.ts +0 -26
- package/dist/resolution/frameworks/nestjs.d.ts.map +0 -1
- package/dist/resolution/frameworks/nestjs.js +0 -698
- package/dist/resolution/frameworks/nestjs.js.map +0 -1
- package/dist/resolution/frameworks/play.d.ts +0 -19
- package/dist/resolution/frameworks/play.d.ts.map +0 -1
- package/dist/resolution/frameworks/play.js +0 -111
- package/dist/resolution/frameworks/play.js.map +0 -1
- package/dist/resolution/frameworks/python.d.ts +0 -10
- package/dist/resolution/frameworks/python.d.ts.map +0 -1
- package/dist/resolution/frameworks/python.js +0 -396
- package/dist/resolution/frameworks/python.js.map +0 -1
- package/dist/resolution/frameworks/react-native.d.ts +0 -3
- package/dist/resolution/frameworks/react-native.d.ts.map +0 -1
- package/dist/resolution/frameworks/react-native.js +0 -360
- package/dist/resolution/frameworks/react-native.js.map +0 -1
- package/dist/resolution/frameworks/react.d.ts +0 -8
- package/dist/resolution/frameworks/react.d.ts.map +0 -1
- package/dist/resolution/frameworks/react.js +0 -365
- package/dist/resolution/frameworks/react.js.map +0 -1
- package/dist/resolution/frameworks/ruby.d.ts +0 -8
- package/dist/resolution/frameworks/ruby.d.ts.map +0 -1
- package/dist/resolution/frameworks/ruby.js +0 -302
- package/dist/resolution/frameworks/ruby.js.map +0 -1
- package/dist/resolution/frameworks/rust.d.ts +0 -8
- package/dist/resolution/frameworks/rust.d.ts.map +0 -1
- package/dist/resolution/frameworks/rust.js +0 -304
- package/dist/resolution/frameworks/rust.js.map +0 -1
- package/dist/resolution/frameworks/svelte.d.ts +0 -9
- package/dist/resolution/frameworks/svelte.d.ts.map +0 -1
- package/dist/resolution/frameworks/svelte.js +0 -249
- package/dist/resolution/frameworks/svelte.js.map +0 -1
- package/dist/resolution/frameworks/swift-objc.d.ts +0 -37
- package/dist/resolution/frameworks/swift-objc.d.ts.map +0 -1
- package/dist/resolution/frameworks/swift-objc.js +0 -252
- package/dist/resolution/frameworks/swift-objc.js.map +0 -1
- package/dist/resolution/frameworks/swift.d.ts +0 -10
- package/dist/resolution/frameworks/swift.d.ts.map +0 -1
- package/dist/resolution/frameworks/swift.js +0 -400
- package/dist/resolution/frameworks/swift.js.map +0 -1
- package/dist/resolution/frameworks/vue.d.ts +0 -9
- package/dist/resolution/frameworks/vue.d.ts.map +0 -1
- package/dist/resolution/frameworks/vue.js +0 -306
- package/dist/resolution/frameworks/vue.js.map +0 -1
- package/dist/resolution/go-module.d.ts +0 -26
- package/dist/resolution/go-module.d.ts.map +0 -1
- package/dist/resolution/go-module.js +0 -78
- package/dist/resolution/go-module.js.map +0 -1
- package/dist/resolution/import-resolver.d.ts +0 -68
- package/dist/resolution/import-resolver.d.ts.map +0 -1
- package/dist/resolution/import-resolver.js +0 -1275
- package/dist/resolution/import-resolver.js.map +0 -1
- package/dist/resolution/index.d.ts +0 -117
- package/dist/resolution/index.d.ts.map +0 -1
- package/dist/resolution/index.js +0 -895
- package/dist/resolution/index.js.map +0 -1
- package/dist/resolution/lru-cache.d.ts +0 -24
- package/dist/resolution/lru-cache.d.ts.map +0 -1
- package/dist/resolution/lru-cache.js +0 -62
- package/dist/resolution/lru-cache.js.map +0 -1
- package/dist/resolution/name-matcher.d.ts +0 -32
- package/dist/resolution/name-matcher.d.ts.map +0 -1
- package/dist/resolution/name-matcher.js +0 -596
- package/dist/resolution/name-matcher.js.map +0 -1
- package/dist/resolution/path-aliases.d.ts +0 -68
- package/dist/resolution/path-aliases.d.ts.map +0 -1
- package/dist/resolution/path-aliases.js +0 -238
- package/dist/resolution/path-aliases.js.map +0 -1
- package/dist/resolution/spec-link-resolver.d.ts +0 -103
- package/dist/resolution/spec-link-resolver.d.ts.map +0 -1
- package/dist/resolution/spec-link-resolver.js +0 -259
- package/dist/resolution/spec-link-resolver.js.map +0 -1
- package/dist/resolution/strip-comments.d.ts +0 -27
- package/dist/resolution/strip-comments.d.ts.map +0 -1
- package/dist/resolution/strip-comments.js +0 -441
- package/dist/resolution/strip-comments.js.map +0 -1
- package/dist/resolution/swift-objc-bridge.d.ts +0 -134
- package/dist/resolution/swift-objc-bridge.d.ts.map +0 -1
- package/dist/resolution/swift-objc-bridge.js +0 -256
- package/dist/resolution/swift-objc-bridge.js.map +0 -1
- package/dist/resolution/types.d.ts +0 -216
- package/dist/resolution/types.d.ts.map +0 -1
- package/dist/resolution/types.js +0 -8
- package/dist/resolution/types.js.map +0 -1
- package/dist/resolution/workspace-packages.d.ts +0 -48
- package/dist/resolution/workspace-packages.d.ts.map +0 -1
- package/dist/resolution/workspace-packages.js +0 -208
- package/dist/resolution/workspace-packages.js.map +0 -1
- package/dist/search/query-parser.d.ts +0 -57
- package/dist/search/query-parser.d.ts.map +0 -1
- package/dist/search/query-parser.js +0 -177
- package/dist/search/query-parser.js.map +0 -1
- package/dist/search/query-utils.d.ts +0 -71
- package/dist/search/query-utils.d.ts.map +0 -1
- package/dist/search/query-utils.js +0 -380
- package/dist/search/query-utils.js.map +0 -1
- package/dist/server/cli.js +0 -152
- package/dist/server/index.js +0 -12
- package/dist/server/ingest/index.js +0 -18
- package/dist/server/ingest/ingestor.js +0 -406
- package/dist/server/ingest/parser.js +0 -104
- package/dist/server/ingest/pricing.js +0 -78
- package/dist/server/ingest/types.js +0 -9
- package/dist/server/ingest/watcher.js +0 -77
- package/dist/server/package.json +0 -3
- package/dist/server/project-registry.js +0 -101
- package/dist/server/routes/claude.js +0 -480
- package/dist/server/routes/graph.js +0 -149
- package/dist/server/routes/memory.js +0 -272
- package/dist/server/routes/projects.js +0 -197
- package/dist/server/routes/spec.js +0 -105
- package/dist/server/routes/status.js +0 -35
- package/dist/server/routes/workflow.js +0 -184
- package/dist/server/server.js +0 -202
- package/dist/sync/git-hooks.d.ts +0 -45
- package/dist/sync/git-hooks.d.ts.map +0 -1
- package/dist/sync/git-hooks.js +0 -225
- package/dist/sync/git-hooks.js.map +0 -1
- package/dist/sync/index.d.ts +0 -19
- package/dist/sync/index.d.ts.map +0 -1
- package/dist/sync/index.js +0 -35
- package/dist/sync/index.js.map +0 -1
- package/dist/sync/watch-policy.d.ts +0 -48
- package/dist/sync/watch-policy.d.ts.map +0 -1
- package/dist/sync/watch-policy.js +0 -124
- package/dist/sync/watch-policy.js.map +0 -1
- package/dist/sync/watcher.d.ts +0 -283
- package/dist/sync/watcher.d.ts.map +0 -1
- package/dist/sync/watcher.js +0 -606
- package/dist/sync/watcher.js.map +0 -1
- package/dist/sync/worktree.d.ts +0 -54
- package/dist/sync/worktree.d.ts.map +0 -1
- package/dist/sync/worktree.js +0 -137
- package/dist/sync/worktree.js.map +0 -1
- package/dist/types.d.ts +0 -623
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -108
- package/dist/types.js.map +0 -1
- package/dist/ui/glyphs.d.ts +0 -42
- package/dist/ui/glyphs.d.ts.map +0 -1
- package/dist/ui/glyphs.js +0 -78
- package/dist/ui/glyphs.js.map +0 -1
- package/dist/ui/shimmer-progress.d.ts +0 -11
- package/dist/ui/shimmer-progress.d.ts.map +0 -1
- package/dist/ui/shimmer-progress.js +0 -90
- package/dist/ui/shimmer-progress.js.map +0 -1
- package/dist/ui/shimmer-worker.d.ts +0 -2
- package/dist/ui/shimmer-worker.d.ts.map +0 -1
- package/dist/ui/shimmer-worker.js +0 -118
- package/dist/ui/shimmer-worker.js.map +0 -1
- package/dist/ui/types.d.ts +0 -17
- package/dist/ui/types.d.ts.map +0 -1
- package/dist/ui/types.js +0 -3
- package/dist/ui/types.js.map +0 -1
- package/dist/utils.d.ts +0 -205
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -549
- package/dist/utils.js.map +0 -1
- package/dist/web/chunk-2YZXEHZ2.js +0 -1
- package/dist/web/chunk-3GIC555L.js +0 -18
- package/dist/web/chunk-3IIIGRMT.js +0 -1
- package/dist/web/chunk-47QYKLE5.js +0 -1
- package/dist/web/chunk-4LHBWWP7.js +0 -1
- package/dist/web/chunk-4OAZLD5W.js +0 -1
- package/dist/web/chunk-5OQKAJAE.js +0 -1
- package/dist/web/chunk-7B525GKQ.js +0 -1
- package/dist/web/chunk-BPDXCOOZ.js +0 -1
- package/dist/web/chunk-DT37HTZB.js +0 -1
- package/dist/web/chunk-EIMUHJND.js +0 -1
- package/dist/web/chunk-FTESTUEO.js +0 -1
- package/dist/web/chunk-GLJZV6MU.js +0 -1
- package/dist/web/chunk-I7LS67U5.js +0 -1
- package/dist/web/chunk-L4TVIPSR.js +0 -1
- package/dist/web/chunk-MASCULC2.js +0 -1
- package/dist/web/chunk-MW7ICSRM.js +0 -1
- package/dist/web/chunk-OI5VP2A3.js +0 -1
- package/dist/web/chunk-RA6EBF6I.js +0 -1
- package/dist/web/chunk-RP3WU5Y6.js +0 -1
- package/dist/web/chunk-RQDRMTXN.js +0 -1
- package/dist/web/chunk-TQMT6UDU.js +0 -1
- package/dist/web/chunk-U7IYOV7T.js +0 -1
- package/dist/web/chunk-UE227MWF.js +0 -1
- package/dist/web/chunk-WV573J4K.js +0 -1
- package/dist/web/chunk-WVCKOJZL.js +0 -4
- package/dist/web/chunk-XZKLVPHE.js +0 -1
- package/dist/web/chunk-ZABKKHJ3.js +0 -1
- package/dist/web/favicon-16.png +0 -0
- package/dist/web/favicon-180.png +0 -0
- package/dist/web/favicon-32.png +0 -0
- package/dist/web/favicon-512.png +0 -0
- package/dist/web/favicon-small.svg +0 -15
- package/dist/web/favicon.ico +0 -0
- package/dist/web/favicon.svg +0 -20
- package/dist/web/index.html +0 -145
- package/dist/web/main-RI5CO5Z4.js +0 -1
- package/dist/web/styles-CYN7IKT4.css +0 -1
- package/dist/workflows/condition-evaluator.d.ts +0 -75
- package/dist/workflows/condition-evaluator.d.ts.map +0 -1
- package/dist/workflows/condition-evaluator.js +0 -282
- package/dist/workflows/condition-evaluator.js.map +0 -1
- package/dist/workflows/defaults/index.d.ts +0 -26
- package/dist/workflows/defaults/index.d.ts.map +0 -1
- package/dist/workflows/defaults/index.js +0 -94
- package/dist/workflows/defaults/index.js.map +0 -1
- package/dist/workflows/defaults/spec-fix.yaml +0 -110
- package/dist/workflows/defaults/spec-implement.yaml +0 -150
- package/dist/workflows/defaults/spec-relink.yaml +0 -81
- package/dist/workflows/defaults/spec-verify.yaml +0 -51
- package/dist/workflows/discovery.d.ts +0 -46
- package/dist/workflows/discovery.d.ts.map +0 -1
- package/dist/workflows/discovery.js +0 -193
- package/dist/workflows/discovery.js.map +0 -1
- package/dist/workflows/executor.d.ts +0 -83
- package/dist/workflows/executor.d.ts.map +0 -1
- package/dist/workflows/executor.js +0 -623
- package/dist/workflows/executor.js.map +0 -1
- package/dist/workflows/runners/approval.d.ts +0 -18
- package/dist/workflows/runners/approval.d.ts.map +0 -1
- package/dist/workflows/runners/approval.js +0 -34
- package/dist/workflows/runners/approval.js.map +0 -1
- package/dist/workflows/runners/bash.d.ts +0 -13
- package/dist/workflows/runners/bash.d.ts.map +0 -1
- package/dist/workflows/runners/bash.js +0 -143
- package/dist/workflows/runners/bash.js.map +0 -1
- package/dist/workflows/runners/cancel.d.ts +0 -10
- package/dist/workflows/runners/cancel.d.ts.map +0 -1
- package/dist/workflows/runners/cancel.js +0 -19
- package/dist/workflows/runners/cancel.js.map +0 -1
- package/dist/workflows/runners/prompt.d.ts +0 -28
- package/dist/workflows/runners/prompt.d.ts.map +0 -1
- package/dist/workflows/runners/prompt.js +0 -212
- package/dist/workflows/runners/prompt.js.map +0 -1
- package/dist/workflows/runners/script.d.ts +0 -17
- package/dist/workflows/runners/script.d.ts.map +0 -1
- package/dist/workflows/runners/script.js +0 -155
- package/dist/workflows/runners/script.js.map +0 -1
- package/dist/workflows/runners/types.d.ts +0 -51
- package/dist/workflows/runners/types.d.ts.map +0 -1
- package/dist/workflows/runners/types.js +0 -13
- package/dist/workflows/runners/types.js.map +0 -1
- package/dist/workflows/schemas/workflow.d.ts +0 -166
- package/dist/workflows/schemas/workflow.d.ts.map +0 -1
- package/dist/workflows/schemas/workflow.js +0 -437
- package/dist/workflows/schemas/workflow.js.map +0 -1
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
name: spec-relink
|
|
2
|
-
description: Re-attach an orphaned spec link after a refactor. Search for the moved/renamed symbol → approve → assert new link.
|
|
3
|
-
tags: [spec, default]
|
|
4
|
-
requires: [specship]
|
|
5
|
-
|
|
6
|
-
worktree:
|
|
7
|
-
enabled: false
|
|
8
|
-
|
|
9
|
-
inputs:
|
|
10
|
-
- name: SPEC_ID
|
|
11
|
-
description: The spec ID with an orphaned link
|
|
12
|
-
required: true
|
|
13
|
-
|
|
14
|
-
systemPromptAppend: |
|
|
15
|
-
You are reattaching a spec link whose target symbol has moved or been
|
|
16
|
-
renamed. Use specship_search and specship_explore to locate the new
|
|
17
|
-
symbol; do NOT edit code in this workflow.
|
|
18
|
-
|
|
19
|
-
nodes:
|
|
20
|
-
- id: present_orphan
|
|
21
|
-
kind: prompt
|
|
22
|
-
output_type: orphan_summary
|
|
23
|
-
allowed_tools:
|
|
24
|
-
- mcp__specship__specship_spec
|
|
25
|
-
prompt: |
|
|
26
|
-
Spec ID: $INPUT.SPEC_ID
|
|
27
|
-
|
|
28
|
-
Call specship_spec to find the orphaned link(s). For each:
|
|
29
|
-
output its old target_file_path and target_qualified_name plus
|
|
30
|
-
a short description of what the spec asks for.
|
|
31
|
-
|
|
32
|
-
- id: search_candidates
|
|
33
|
-
kind: prompt
|
|
34
|
-
depends_on: [present_orphan]
|
|
35
|
-
output_type: candidates
|
|
36
|
-
allowed_tools:
|
|
37
|
-
- mcp__specship__specship_search
|
|
38
|
-
- mcp__specship__specship_explore
|
|
39
|
-
- mcp__specship__specship_node
|
|
40
|
-
prompt: |
|
|
41
|
-
The orphan(s):
|
|
42
|
-
$present_orphan.output
|
|
43
|
-
|
|
44
|
-
For each orphaned target_qualified_name, use specship_search to
|
|
45
|
-
see if a symbol by that name (or a closely related name) exists
|
|
46
|
-
anywhere in the current codebase. Then call specship_explore on
|
|
47
|
-
the most likely matches to see if their bodies match the spec's
|
|
48
|
-
intent.
|
|
49
|
-
|
|
50
|
-
Output: a numbered list of CANDIDATES with file:symbol and a
|
|
51
|
-
one-line justification.
|
|
52
|
-
|
|
53
|
-
- id: approve_relink
|
|
54
|
-
kind: approval
|
|
55
|
-
depends_on: [search_candidates]
|
|
56
|
-
message: |
|
|
57
|
-
Candidates for $INPUT.SPEC_ID:
|
|
58
|
-
|
|
59
|
-
$search_candidates.output
|
|
60
|
-
|
|
61
|
-
Reply with the number of the correct candidate (or "none" to
|
|
62
|
-
abandon and leave the link orphaned).
|
|
63
|
-
capture_response: true
|
|
64
|
-
|
|
65
|
-
- id: assert_link
|
|
66
|
-
kind: prompt
|
|
67
|
-
depends_on: [approve_relink]
|
|
68
|
-
output_type: link_summary
|
|
69
|
-
allowed_tools:
|
|
70
|
-
- mcp__specship__specship_link_assert
|
|
71
|
-
prompt: |
|
|
72
|
-
The reviewer chose candidate #$approve_relink.output for spec
|
|
73
|
-
$INPUT.SPEC_ID.
|
|
74
|
-
|
|
75
|
-
Candidates were:
|
|
76
|
-
$search_candidates.output
|
|
77
|
-
|
|
78
|
-
Call specship_link_assert with the chosen candidate's path and
|
|
79
|
-
qualified_name (and the original kind, default "implements").
|
|
80
|
-
|
|
81
|
-
Output: confirmation of the new link.
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
name: spec-verify
|
|
2
|
-
description: Run verification across all 'implemented' spec links. Use as a CI gate or pre-commit check.
|
|
3
|
-
tags: [spec, default, ci]
|
|
4
|
-
requires: [specship, tests]
|
|
5
|
-
|
|
6
|
-
# No worktree — runs in-place against the current checkout.
|
|
7
|
-
worktree:
|
|
8
|
-
enabled: false
|
|
9
|
-
|
|
10
|
-
nodes:
|
|
11
|
-
- id: run_tests
|
|
12
|
-
kind: bash
|
|
13
|
-
output_type: test_results
|
|
14
|
-
timeout: 600000
|
|
15
|
-
bash: |
|
|
16
|
-
if [ -f package.json ]; then
|
|
17
|
-
npm test
|
|
18
|
-
elif [ -f Cargo.toml ]; then
|
|
19
|
-
cargo test
|
|
20
|
-
elif [ -f pyproject.toml ] || [ -f requirements.txt ]; then
|
|
21
|
-
python -m pytest
|
|
22
|
-
else
|
|
23
|
-
echo "no recognised test framework; skipping" >&2
|
|
24
|
-
exit 0
|
|
25
|
-
fi
|
|
26
|
-
|
|
27
|
-
- id: summarize
|
|
28
|
-
kind: prompt
|
|
29
|
-
depends_on: [run_tests]
|
|
30
|
-
output_type: link_summary
|
|
31
|
-
trigger_rule: all_done
|
|
32
|
-
allowed_tools:
|
|
33
|
-
- mcp__specship__specship_drifted
|
|
34
|
-
- mcp__specship__specship_spec
|
|
35
|
-
- mcp__specship__specship_link_verify
|
|
36
|
-
prompt: |
|
|
37
|
-
Test run completed. Output (truncated):
|
|
38
|
-
|
|
39
|
-
$run_tests.output
|
|
40
|
-
|
|
41
|
-
1. Call specship_drifted to see any drifted/broken/orphaned links.
|
|
42
|
-
2. If tests passed (no failures reported), iterate over each
|
|
43
|
-
'implemented' link and call specship_link_verify(result: "pass")
|
|
44
|
-
to promote them to "verified". (Skip links that are already
|
|
45
|
-
verified.)
|
|
46
|
-
3. If tests failed, identify which specs the failing tests are
|
|
47
|
-
tied to and call specship_link_verify(result: "fail", reason:
|
|
48
|
-
"<test name>") on those links.
|
|
49
|
-
|
|
50
|
-
Output: a short summary of how many links moved to verified,
|
|
51
|
-
how many to broken, and which specs are still drifted.
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workflow discovery — three-tier precedence loader.
|
|
3
|
-
*
|
|
4
|
-
* Inspired by Archon's `packages/workflows/src/workflow-discovery.ts:205-361`.
|
|
5
|
-
*
|
|
6
|
-
* Precedence (highest wins on filename collision):
|
|
7
|
-
* 1. Bundled defaults (compiled-in, see ./defaults/index.ts)
|
|
8
|
-
* 2. Global `~/.specship/workflows/`
|
|
9
|
-
* 3. Project `<projectRoot>/.specship/workflows/`
|
|
10
|
-
*
|
|
11
|
-
* One level of nesting (`subdir/foo.yaml`) is allowed; deeper paths are
|
|
12
|
-
* silently ignored to keep discovery cheap and predictable. Per-file YAML
|
|
13
|
-
* parse or validation failures are isolated — one broken workflow does
|
|
14
|
-
* not abort discovery of its peers.
|
|
15
|
-
*/
|
|
16
|
-
import { WorkflowDefinition, ValidationError } from './schemas/workflow';
|
|
17
|
-
export type WorkflowScope = 'bundled' | 'global' | 'project';
|
|
18
|
-
export interface WorkflowWithSource {
|
|
19
|
-
workflow: WorkflowDefinition;
|
|
20
|
-
scope: WorkflowScope;
|
|
21
|
-
sourcePath: string;
|
|
22
|
-
}
|
|
23
|
-
export interface WorkflowLoadError {
|
|
24
|
-
scope: WorkflowScope;
|
|
25
|
-
sourcePath: string;
|
|
26
|
-
errors: ValidationError[];
|
|
27
|
-
}
|
|
28
|
-
export interface WorkflowLoadResult {
|
|
29
|
-
/** Discovered workflows, after precedence resolution. */
|
|
30
|
-
workflows: WorkflowWithSource[];
|
|
31
|
-
/** Errors per failed workflow file. */
|
|
32
|
-
errors: WorkflowLoadError[];
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Discover workflows from bundled defaults + global + project scopes.
|
|
36
|
-
* Project overrides global; global overrides bundled. Matching is by
|
|
37
|
-
* filename stem (e.g. `spec-implement.yaml` at project level overrides
|
|
38
|
-
* any `spec-implement.yaml` from bundled).
|
|
39
|
-
*/
|
|
40
|
-
export declare function discoverWorkflows(projectRoot: string): WorkflowLoadResult;
|
|
41
|
-
/**
|
|
42
|
-
* Load a single workflow by name from the resolved discovery layer.
|
|
43
|
-
* Returns null if no workflow with that name exists in any scope.
|
|
44
|
-
*/
|
|
45
|
-
export declare function loadWorkflowByName(projectRoot: string, name: string): WorkflowWithSource | null;
|
|
46
|
-
//# sourceMappingURL=discovery.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/workflows/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EACL,kBAAkB,EAElB,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,uCAAuC;IACvC,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,CAoCzE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,kBAAkB,GAAG,IAAI,CAG3B"}
|
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Workflow discovery — three-tier precedence loader.
|
|
4
|
-
*
|
|
5
|
-
* Inspired by Archon's `packages/workflows/src/workflow-discovery.ts:205-361`.
|
|
6
|
-
*
|
|
7
|
-
* Precedence (highest wins on filename collision):
|
|
8
|
-
* 1. Bundled defaults (compiled-in, see ./defaults/index.ts)
|
|
9
|
-
* 2. Global `~/.specship/workflows/`
|
|
10
|
-
* 3. Project `<projectRoot>/.specship/workflows/`
|
|
11
|
-
*
|
|
12
|
-
* One level of nesting (`subdir/foo.yaml`) is allowed; deeper paths are
|
|
13
|
-
* silently ignored to keep discovery cheap and predictable. Per-file YAML
|
|
14
|
-
* parse or validation failures are isolated — one broken workflow does
|
|
15
|
-
* not abort discovery of its peers.
|
|
16
|
-
*/
|
|
17
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
-
if (k2 === undefined) k2 = k;
|
|
19
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
-
}
|
|
23
|
-
Object.defineProperty(o, k2, desc);
|
|
24
|
-
}) : (function(o, m, k, k2) {
|
|
25
|
-
if (k2 === undefined) k2 = k;
|
|
26
|
-
o[k2] = m[k];
|
|
27
|
-
}));
|
|
28
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
-
}) : function(o, v) {
|
|
31
|
-
o["default"] = v;
|
|
32
|
-
});
|
|
33
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
34
|
-
var ownKeys = function(o) {
|
|
35
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
36
|
-
var ar = [];
|
|
37
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
38
|
-
return ar;
|
|
39
|
-
};
|
|
40
|
-
return ownKeys(o);
|
|
41
|
-
};
|
|
42
|
-
return function (mod) {
|
|
43
|
-
if (mod && mod.__esModule) return mod;
|
|
44
|
-
var result = {};
|
|
45
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
46
|
-
__setModuleDefault(result, mod);
|
|
47
|
-
return result;
|
|
48
|
-
};
|
|
49
|
-
})();
|
|
50
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
-
exports.discoverWorkflows = discoverWorkflows;
|
|
52
|
-
exports.loadWorkflowByName = loadWorkflowByName;
|
|
53
|
-
const fs = __importStar(require("fs"));
|
|
54
|
-
const path = __importStar(require("path"));
|
|
55
|
-
const os = __importStar(require("os"));
|
|
56
|
-
const yaml = __importStar(require("yaml"));
|
|
57
|
-
const workflow_1 = require("./schemas/workflow");
|
|
58
|
-
const defaults_1 = require("./defaults");
|
|
59
|
-
/**
|
|
60
|
-
* Discover workflows from bundled defaults + global + project scopes.
|
|
61
|
-
* Project overrides global; global overrides bundled. Matching is by
|
|
62
|
-
* filename stem (e.g. `spec-implement.yaml` at project level overrides
|
|
63
|
-
* any `spec-implement.yaml` from bundled).
|
|
64
|
-
*/
|
|
65
|
-
function discoverWorkflows(projectRoot) {
|
|
66
|
-
const byName = new Map();
|
|
67
|
-
const errors = [];
|
|
68
|
-
// 1. Bundled (lowest precedence)
|
|
69
|
-
for (const entry of defaults_1.bundledDefaults) {
|
|
70
|
-
const result = parseAndValidate(entry.yaml);
|
|
71
|
-
if (result.workflow) {
|
|
72
|
-
byName.set(entry.name, {
|
|
73
|
-
workflow: result.workflow,
|
|
74
|
-
scope: 'bundled',
|
|
75
|
-
sourcePath: `bundled:${entry.name}.yaml`,
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
errors.push({
|
|
80
|
-
scope: 'bundled',
|
|
81
|
-
sourcePath: `bundled:${entry.name}.yaml`,
|
|
82
|
-
errors: result.errors,
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
// 2. Global
|
|
87
|
-
const globalDir = path.join(os.homedir(), '.specship', 'workflows');
|
|
88
|
-
loadFromDir(globalDir, 'global', byName, errors);
|
|
89
|
-
// 3. Project (highest precedence)
|
|
90
|
-
const projectDir = path.join(projectRoot, '.specship', 'workflows');
|
|
91
|
-
loadFromDir(projectDir, 'project', byName, errors);
|
|
92
|
-
return {
|
|
93
|
-
workflows: [...byName.values()].sort((a, b) => a.workflow.name.localeCompare(b.workflow.name)),
|
|
94
|
-
errors,
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Load a single workflow by name from the resolved discovery layer.
|
|
99
|
-
* Returns null if no workflow with that name exists in any scope.
|
|
100
|
-
*/
|
|
101
|
-
function loadWorkflowByName(projectRoot, name) {
|
|
102
|
-
const all = discoverWorkflows(projectRoot);
|
|
103
|
-
return all.workflows.find((w) => w.workflow.name === name) ?? null;
|
|
104
|
-
}
|
|
105
|
-
// =============================================================================
|
|
106
|
-
// internal
|
|
107
|
-
// =============================================================================
|
|
108
|
-
function loadFromDir(dir, scope, byName, errors) {
|
|
109
|
-
let entries;
|
|
110
|
-
try {
|
|
111
|
-
entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
112
|
-
}
|
|
113
|
-
catch {
|
|
114
|
-
return; // directory doesn't exist — fine, scope is empty
|
|
115
|
-
}
|
|
116
|
-
const filesToLoad = [];
|
|
117
|
-
for (const entry of entries) {
|
|
118
|
-
const full = path.join(dir, entry.name);
|
|
119
|
-
if (entry.isFile() && isYamlFile(entry.name)) {
|
|
120
|
-
filesToLoad.push(full);
|
|
121
|
-
}
|
|
122
|
-
else if (entry.isDirectory() && !entry.name.startsWith('.')) {
|
|
123
|
-
// One level of nesting only.
|
|
124
|
-
try {
|
|
125
|
-
const nested = fs.readdirSync(full, { withFileTypes: true });
|
|
126
|
-
for (const n of nested) {
|
|
127
|
-
if (n.isFile() && isYamlFile(n.name)) {
|
|
128
|
-
filesToLoad.push(path.join(full, n.name));
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
catch {
|
|
133
|
-
// ignore
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
for (const file of filesToLoad) {
|
|
138
|
-
let source;
|
|
139
|
-
try {
|
|
140
|
-
source = fs.readFileSync(file, 'utf-8');
|
|
141
|
-
}
|
|
142
|
-
catch (err) {
|
|
143
|
-
errors.push({
|
|
144
|
-
scope,
|
|
145
|
-
sourcePath: file,
|
|
146
|
-
errors: [
|
|
147
|
-
{
|
|
148
|
-
path: '$',
|
|
149
|
-
message: `read failed: ${err instanceof Error ? err.message : String(err)}`,
|
|
150
|
-
},
|
|
151
|
-
],
|
|
152
|
-
});
|
|
153
|
-
continue;
|
|
154
|
-
}
|
|
155
|
-
const result = parseAndValidate(source);
|
|
156
|
-
if (result.workflow) {
|
|
157
|
-
byName.set(result.workflow.name, {
|
|
158
|
-
workflow: result.workflow,
|
|
159
|
-
scope,
|
|
160
|
-
sourcePath: file,
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
errors.push({ scope, sourcePath: file, errors: result.errors });
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
function isYamlFile(name) {
|
|
169
|
-
const lower = name.toLowerCase();
|
|
170
|
-
return lower.endsWith('.yaml') || lower.endsWith('.yml');
|
|
171
|
-
}
|
|
172
|
-
function parseAndValidate(source) {
|
|
173
|
-
let parsed;
|
|
174
|
-
try {
|
|
175
|
-
parsed = yaml.parse(source);
|
|
176
|
-
}
|
|
177
|
-
catch (err) {
|
|
178
|
-
return {
|
|
179
|
-
errors: [
|
|
180
|
-
{
|
|
181
|
-
path: '$',
|
|
182
|
-
message: `YAML parse error: ${err instanceof Error ? err.message : String(err)}`,
|
|
183
|
-
},
|
|
184
|
-
],
|
|
185
|
-
};
|
|
186
|
-
}
|
|
187
|
-
const validation = (0, workflow_1.validateWorkflow)(parsed);
|
|
188
|
-
if (!validation.ok || !validation.workflow) {
|
|
189
|
-
return { errors: validation.errors };
|
|
190
|
-
}
|
|
191
|
-
return { workflow: validation.workflow, errors: [] };
|
|
192
|
-
}
|
|
193
|
-
//# sourceMappingURL=discovery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/workflows/discovery.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCH,8CAoCC;AAMD,gDAMC;AAtFD,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AACzB,2CAA6B;AAC7B,iDAI4B;AAC5B,yCAA6C;AAuB7C;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,WAAmB;IACnD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA8B,CAAC;IACrD,MAAM,MAAM,GAAwB,EAAE,CAAC;IAEvC,iCAAiC;IACjC,KAAK,MAAM,KAAK,IAAI,0BAAe,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,KAAK,EAAE,SAAS;gBAChB,UAAU,EAAE,WAAW,KAAK,CAAC,IAAI,OAAO;aACzC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,SAAS;gBAChB,UAAU,EAAE,WAAW,KAAK,CAAC,IAAI,OAAO;gBACxC,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,YAAY;IACZ,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACpE,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjD,kCAAkC;IAClC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACpE,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEnD,OAAO;QACL,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC5C,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC/C;QACD,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,WAAmB,EACnB,IAAY;IAEZ,MAAM,GAAG,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC3C,OAAO,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC;AACrE,CAAC;AAED,gFAAgF;AAChF,WAAW;AACX,gFAAgF;AAEhF,SAAS,WAAW,CAClB,GAAW,EACX,KAAoB,EACpB,MAAuC,EACvC,MAA2B;IAE3B,IAAI,OAAoB,CAAC;IACzB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,iDAAiD;IAC3D,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;aAAM,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9D,6BAA6B;YAC7B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7D,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;oBACvB,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;wBACrC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC5C,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,MAAc,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK;gBACL,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,GAAG;wBACT,OAAO,EAAE,gBAAgB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;qBAC5E;iBACF;aACF,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,KAAK;gBACL,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACjC,OAAO,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAc;IAItC,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBACjF;aACF;SACF,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,IAAA,2BAAgB,EAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC3C,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;IACvC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACvD,CAAC"}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* DAG workflow executor.
|
|
3
|
-
*
|
|
4
|
-
* Orchestrates a `WorkflowDefinition` end-to-end:
|
|
5
|
-
* 1. Topological sort of nodes (`depends_on` edges).
|
|
6
|
-
* 2. For each node, check its `trigger_rule` against upstream states +
|
|
7
|
-
* its `when:` condition. Skip when gates fail.
|
|
8
|
-
* 3. Dispatch to the right runner (prompt / bash / script / approval / cancel).
|
|
9
|
-
* 4. On `paused` → persist state and return; resume() picks up later.
|
|
10
|
-
* 5. On `failed` → respect `retry` config (transient vs all).
|
|
11
|
-
* 6. On `cancelled` → mark all unstarted downstreams as skipped and stop.
|
|
12
|
-
*
|
|
13
|
-
* Persisted state: workflow_runs row tracks lifecycle status, completed
|
|
14
|
-
* node IDs, and approval context. workflow_events rows form an append-only
|
|
15
|
-
* audit trail. Artifacts go to `<artifactsDir>/nodes/<id>.{md,meta.json}`.
|
|
16
|
-
*/
|
|
17
|
-
import { WorkflowDefinition, DagNode } from './schemas/workflow';
|
|
18
|
-
import { WorkflowRun, WorkflowNodeState } from '../types';
|
|
19
|
-
import { SpecQueries } from '../db/spec-queries';
|
|
20
|
-
import { WorktreeProvider } from '../isolation/worktree';
|
|
21
|
-
import { NodeOutput } from './condition-evaluator';
|
|
22
|
-
export interface ExecuteOptions {
|
|
23
|
-
/** Project root (used to derive default cwd + spawn the worktree). */
|
|
24
|
-
projectRoot: string;
|
|
25
|
-
/** Workflow inputs (e.g., SPEC_ID). */
|
|
26
|
-
inputs?: Record<string, string>;
|
|
27
|
-
/** Additional variables ($CONTEXT, etc.). */
|
|
28
|
-
variables?: Record<string, string>;
|
|
29
|
-
/** Verbose logging. */
|
|
30
|
-
verbose?: boolean;
|
|
31
|
-
/** Override the run ID (mostly for resume). Defaults to a fresh UUID. */
|
|
32
|
-
runId?: string;
|
|
33
|
-
}
|
|
34
|
-
export interface ExecuteResult {
|
|
35
|
-
run: WorkflowRun;
|
|
36
|
-
/** Final node states (id → state). */
|
|
37
|
-
nodeStates: Map<string, WorkflowNodeState>;
|
|
38
|
-
/** Node outputs (for caller inspection). */
|
|
39
|
-
outputs: Map<string, NodeOutput>;
|
|
40
|
-
}
|
|
41
|
-
export declare class WorkflowExecutor {
|
|
42
|
-
private specQueries;
|
|
43
|
-
private worktrees;
|
|
44
|
-
private runners;
|
|
45
|
-
constructor(specQueries: SpecQueries, worktrees: WorktreeProvider);
|
|
46
|
-
start(workflow: WorkflowDefinition, opts: ExecuteOptions): Promise<ExecuteResult>;
|
|
47
|
-
/**
|
|
48
|
-
* Resume a paused (approved) or failed run. Skips already-completed nodes.
|
|
49
|
-
*/
|
|
50
|
-
resume(workflow: WorkflowDefinition, runId: string, opts: Omit<ExecuteOptions, 'runId'>): Promise<ExecuteResult>;
|
|
51
|
-
cancel(runId: string, reason?: string): void;
|
|
52
|
-
/**
|
|
53
|
-
* Approve a paused run. The caller is expected to call `resume` afterwards
|
|
54
|
-
* to actually continue execution. This separation matches Archon's pattern
|
|
55
|
-
* (manage_run.approve only transitions state; resume drives the next step).
|
|
56
|
-
*/
|
|
57
|
-
approve(runId: string, comment?: string): void;
|
|
58
|
-
reject(runId: string, reason?: string): void;
|
|
59
|
-
private driveExecution;
|
|
60
|
-
private runWithRetry;
|
|
61
|
-
private checkTrigger;
|
|
62
|
-
/**
|
|
63
|
-
* Walk a node's string fields and substitute `$nodeId.output[.field]` /
|
|
64
|
-
* `$INPUT.X` / `$VAR` references. Returns a shallow clone with substituted
|
|
65
|
-
* values; the original is untouched.
|
|
66
|
-
*
|
|
67
|
-
* For prompt nodes we substitute `prompt` and `systemPromptAppend`.
|
|
68
|
-
* For bash/script nodes we substitute `bash` / `script` (with bash-safe
|
|
69
|
-
* shell escaping). For approval nodes we substitute `message`.
|
|
70
|
-
* cancel: substitute `cancel` reason.
|
|
71
|
-
*/
|
|
72
|
-
private resolveNodeRefs;
|
|
73
|
-
private makeSubstitutionContext;
|
|
74
|
-
private finalize;
|
|
75
|
-
private writeArtifact;
|
|
76
|
-
private event;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Kahn's algorithm topological sort. Cycles fail loudly — the executor
|
|
80
|
-
* refuses to run a workflow that doesn't form a DAG.
|
|
81
|
-
*/
|
|
82
|
-
export declare function topoSort(nodes: DagNode[]): string[];
|
|
83
|
-
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/workflows/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,EACL,kBAAkB,EAClB,OAAO,EAOR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,iBAAiB,EAGlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EACL,UAAU,EAIX,MAAM,uBAAuB,CAAC;AAQ/B,MAAM,WAAW,cAAc;IAC7B,sEAAsE;IACtE,WAAW,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,uBAAuB;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,sCAAsC;IACtC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC3C,4CAA4C;IAC5C,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAClC;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,OAAO,CAAmC;gBAEtC,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB;IAgB3D,KAAK,CACT,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,aAAa,CAAC;IA8EzB;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,aAAa,CAAC;IAqCzB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,MAA4B,GAAG,IAAI;IA8BjE;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAuC9C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;YA6B9B,cAAc;YA0Id,YAAY;IA2B1B,OAAO,CAAC,YAAY;IAuBpB;;;;;;;;;OASG;IACH,OAAO,CAAC,eAAe;IAiDvB,OAAO,CAAC,uBAAuB;YAajB,QAAQ;YA4CR,aAAa;IAyB3B,OAAO,CAAC,KAAK;CA0Bd;AAMD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CA6BnD"}
|