@mc1global/opencode-jarvis 0.1.1 → 0.3.1
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/application/agent-registry/dtos.d.ts +66 -0
- package/dist/application/agent-registry/dtos.d.ts.map +1 -0
- package/dist/application/agent-registry/dtos.js +11 -0
- package/dist/application/agent-registry/dtos.js.map +1 -0
- package/dist/application/agent-registry/use-cases.d.ts +39 -0
- package/dist/application/agent-registry/use-cases.d.ts.map +1 -0
- package/dist/application/agent-registry/use-cases.js +222 -0
- package/dist/application/agent-registry/use-cases.js.map +1 -0
- package/dist/application/azure-sync/dtos.d.ts +210 -0
- package/dist/application/azure-sync/dtos.d.ts.map +1 -0
- package/dist/application/azure-sync/dtos.js +11 -0
- package/dist/application/azure-sync/dtos.js.map +1 -0
- package/dist/application/azure-sync/field-builders.d.ts +54 -0
- package/dist/application/azure-sync/field-builders.d.ts.map +1 -0
- package/dist/application/azure-sync/field-builders.js +166 -0
- package/dist/application/azure-sync/field-builders.js.map +1 -0
- package/dist/application/azure-sync/index.d.ts +16 -0
- package/dist/application/azure-sync/index.d.ts.map +1 -0
- package/dist/application/azure-sync/index.js +10 -0
- package/dist/application/azure-sync/index.js.map +1 -0
- package/dist/application/azure-sync/pr-use-cases.d.ts +39 -0
- package/dist/application/azure-sync/pr-use-cases.d.ts.map +1 -0
- package/dist/application/azure-sync/pr-use-cases.js +192 -0
- package/dist/application/azure-sync/pr-use-cases.js.map +1 -0
- package/dist/application/azure-sync/pull-use-cases.d.ts +43 -0
- package/dist/application/azure-sync/pull-use-cases.d.ts.map +1 -0
- package/dist/application/azure-sync/pull-use-cases.js +322 -0
- package/dist/application/azure-sync/pull-use-cases.js.map +1 -0
- package/dist/application/azure-sync/push-use-cases.d.ts +53 -0
- package/dist/application/azure-sync/push-use-cases.d.ts.map +1 -0
- package/dist/application/azure-sync/push-use-cases.js +341 -0
- package/dist/application/azure-sync/push-use-cases.js.map +1 -0
- package/dist/application/azure-sync/reverse-field-builder.d.ts +52 -0
- package/dist/application/azure-sync/reverse-field-builder.d.ts.map +1 -0
- package/dist/application/azure-sync/reverse-field-builder.js +130 -0
- package/dist/application/azure-sync/reverse-field-builder.js.map +1 -0
- package/dist/application/azure-sync/task-push-use-cases.d.ts +68 -0
- package/dist/application/azure-sync/task-push-use-cases.d.ts.map +1 -0
- package/dist/application/azure-sync/task-push-use-cases.js +162 -0
- package/dist/application/azure-sync/task-push-use-cases.js.map +1 -0
- package/dist/application/config/config-service.d.ts +64 -0
- package/dist/application/config/config-service.d.ts.map +1 -0
- package/dist/application/config/config-service.js +110 -0
- package/dist/application/config/config-service.js.map +1 -0
- package/dist/application/config/index.d.ts +5 -0
- package/dist/application/config/index.d.ts.map +1 -0
- package/dist/application/config/index.js +5 -0
- package/dist/application/config/index.js.map +1 -0
- package/dist/application/kanban/board-use-cases.d.ts.map +1 -1
- package/dist/application/kanban/board-use-cases.js +14 -0
- package/dist/application/kanban/board-use-cases.js.map +1 -1
- package/dist/application/kanban/card-use-cases.d.ts +21 -2
- package/dist/application/kanban/card-use-cases.d.ts.map +1 -1
- package/dist/application/kanban/card-use-cases.js +180 -1
- package/dist/application/kanban/card-use-cases.js.map +1 -1
- package/dist/application/kanban/dtos.d.ts +59 -0
- package/dist/application/kanban/dtos.d.ts.map +1 -1
- package/dist/application/mcp/index.d.ts +10 -0
- package/dist/application/mcp/index.d.ts.map +1 -0
- package/dist/application/mcp/index.js +8 -0
- package/dist/application/mcp/index.js.map +1 -0
- package/dist/application/mcp/middleware.d.ts +91 -0
- package/dist/application/mcp/middleware.d.ts.map +1 -0
- package/dist/application/mcp/middleware.js +84 -0
- package/dist/application/mcp/middleware.js.map +1 -0
- package/dist/application/mcp/tool-adapter.d.ts +72 -0
- package/dist/application/mcp/tool-adapter.d.ts.map +1 -0
- package/dist/application/mcp/tool-adapter.js +132 -0
- package/dist/application/mcp/tool-adapter.js.map +1 -0
- package/dist/application/pipeline/dtos.d.ts +135 -0
- package/dist/application/pipeline/dtos.d.ts.map +1 -0
- package/dist/application/pipeline/dtos.js +11 -0
- package/dist/application/pipeline/dtos.js.map +1 -0
- package/dist/application/pipeline/index.d.ts +8 -0
- package/dist/application/pipeline/index.d.ts.map +1 -0
- package/dist/application/pipeline/index.js +7 -0
- package/dist/application/pipeline/index.js.map +1 -0
- package/dist/application/pipeline/use-cases.d.ts +67 -0
- package/dist/application/pipeline/use-cases.d.ts.map +1 -0
- package/dist/application/pipeline/use-cases.js +413 -0
- package/dist/application/pipeline/use-cases.js.map +1 -0
- package/dist/application/rag/use-cases.d.ts +3 -0
- package/dist/application/rag/use-cases.d.ts.map +1 -1
- package/dist/application/rag/use-cases.js +112 -34
- package/dist/application/rag/use-cases.js.map +1 -1
- package/dist/domain/agent-registry/entities.d.ts +68 -0
- package/dist/domain/agent-registry/entities.d.ts.map +1 -0
- package/dist/domain/agent-registry/entities.js +177 -0
- package/dist/domain/agent-registry/entities.js.map +1 -0
- package/dist/domain/agent-registry/repositories.d.ts +56 -0
- package/dist/domain/agent-registry/repositories.d.ts.map +1 -0
- package/dist/domain/agent-registry/repositories.js +12 -0
- package/dist/domain/agent-registry/repositories.js.map +1 -0
- package/dist/domain/agent-registry/services.d.ts +87 -0
- package/dist/domain/agent-registry/services.d.ts.map +1 -0
- package/dist/domain/agent-registry/services.js +188 -0
- package/dist/domain/agent-registry/services.js.map +1 -0
- package/dist/domain/agent-registry/value-objects.d.ts +145 -0
- package/dist/domain/agent-registry/value-objects.d.ts.map +1 -0
- package/dist/domain/agent-registry/value-objects.js +339 -0
- package/dist/domain/agent-registry/value-objects.js.map +1 -0
- package/dist/domain/azure-sync/entities.d.ts +165 -0
- package/dist/domain/azure-sync/entities.d.ts.map +1 -0
- package/dist/domain/azure-sync/entities.js +203 -0
- package/dist/domain/azure-sync/entities.js.map +1 -0
- package/dist/domain/azure-sync/index.d.ts +16 -0
- package/dist/domain/azure-sync/index.d.ts.map +1 -0
- package/dist/domain/azure-sync/index.js +14 -0
- package/dist/domain/azure-sync/index.js.map +1 -0
- package/dist/domain/azure-sync/ports.d.ts +117 -0
- package/dist/domain/azure-sync/ports.d.ts.map +1 -0
- package/dist/domain/azure-sync/ports.js +13 -0
- package/dist/domain/azure-sync/ports.js.map +1 -0
- package/dist/domain/azure-sync/repositories.d.ts +53 -0
- package/dist/domain/azure-sync/repositories.d.ts.map +1 -0
- package/dist/domain/azure-sync/repositories.js +11 -0
- package/dist/domain/azure-sync/repositories.js.map +1 -0
- package/dist/domain/azure-sync/services.d.ts +107 -0
- package/dist/domain/azure-sync/services.d.ts.map +1 -0
- package/dist/domain/azure-sync/services.js +316 -0
- package/dist/domain/azure-sync/services.js.map +1 -0
- package/dist/domain/azure-sync/value-objects.d.ts +129 -0
- package/dist/domain/azure-sync/value-objects.d.ts.map +1 -0
- package/dist/domain/azure-sync/value-objects.js +343 -0
- package/dist/domain/azure-sync/value-objects.js.map +1 -0
- package/dist/domain/config/index.d.ts +9 -0
- package/dist/domain/config/index.d.ts.map +1 -0
- package/dist/domain/config/index.js +7 -0
- package/dist/domain/config/index.js.map +1 -0
- package/dist/domain/config/repositories.d.ts +36 -0
- package/dist/domain/config/repositories.d.ts.map +1 -0
- package/dist/domain/config/repositories.js +12 -0
- package/dist/domain/config/repositories.js.map +1 -0
- package/dist/domain/config/value-objects.d.ts +112 -0
- package/dist/domain/config/value-objects.d.ts.map +1 -0
- package/dist/domain/config/value-objects.js +93 -0
- package/dist/domain/config/value-objects.js.map +1 -0
- package/dist/domain/governance/policies.d.ts.map +1 -1
- package/dist/domain/governance/policies.js +70 -0
- package/dist/domain/governance/policies.js.map +1 -1
- package/dist/domain/kanban/entities.d.ts +67 -15
- package/dist/domain/kanban/entities.d.ts.map +1 -1
- package/dist/domain/kanban/entities.js +177 -14
- package/dist/domain/kanban/entities.js.map +1 -1
- package/dist/domain/kanban/grooming.d.ts +27 -7
- package/dist/domain/kanban/grooming.d.ts.map +1 -1
- package/dist/domain/kanban/grooming.js +50 -12
- package/dist/domain/kanban/grooming.js.map +1 -1
- package/dist/domain/kanban/services.d.ts +16 -2
- package/dist/domain/kanban/services.d.ts.map +1 -1
- package/dist/domain/kanban/services.js +29 -2
- package/dist/domain/kanban/services.js.map +1 -1
- package/dist/domain/kanban/value-objects.d.ts +48 -0
- package/dist/domain/kanban/value-objects.d.ts.map +1 -1
- package/dist/domain/kanban/value-objects.js +53 -0
- package/dist/domain/kanban/value-objects.js.map +1 -1
- package/dist/domain/pipeline/gate.d.ts +75 -0
- package/dist/domain/pipeline/gate.d.ts.map +1 -0
- package/dist/domain/pipeline/gate.js +158 -0
- package/dist/domain/pipeline/gate.js.map +1 -0
- package/dist/domain/pipeline/index.d.ts +13 -0
- package/dist/domain/pipeline/index.d.ts.map +1 -0
- package/dist/domain/pipeline/index.js +14 -0
- package/dist/domain/pipeline/index.js.map +1 -0
- package/dist/domain/pipeline/pipeline.d.ts +99 -0
- package/dist/domain/pipeline/pipeline.d.ts.map +1 -0
- package/dist/domain/pipeline/pipeline.js +257 -0
- package/dist/domain/pipeline/pipeline.js.map +1 -0
- package/dist/domain/pipeline/ports.d.ts +120 -0
- package/dist/domain/pipeline/ports.d.ts.map +1 -0
- package/dist/domain/pipeline/ports.js +12 -0
- package/dist/domain/pipeline/ports.js.map +1 -0
- package/dist/domain/pipeline/repositories.d.ts +66 -0
- package/dist/domain/pipeline/repositories.d.ts.map +1 -0
- package/dist/domain/pipeline/repositories.js +11 -0
- package/dist/domain/pipeline/repositories.js.map +1 -0
- package/dist/domain/pipeline/services.d.ts +77 -0
- package/dist/domain/pipeline/services.d.ts.map +1 -0
- package/dist/domain/pipeline/services.js +156 -0
- package/dist/domain/pipeline/services.js.map +1 -0
- package/dist/domain/pipeline/value-objects.d.ts +117 -0
- package/dist/domain/pipeline/value-objects.d.ts.map +1 -0
- package/dist/domain/pipeline/value-objects.js +313 -0
- package/dist/domain/pipeline/value-objects.js.map +1 -0
- package/dist/domain/rag/value-objects.d.ts +9 -2
- package/dist/domain/rag/value-objects.d.ts.map +1 -1
- package/dist/domain/rag/value-objects.js +8 -2
- package/dist/domain/rag/value-objects.js.map +1 -1
- package/dist/hooks/event-handlers.d.ts +3 -0
- package/dist/hooks/event-handlers.d.ts.map +1 -1
- package/dist/hooks/event-handlers.js +4 -2
- package/dist/hooks/event-handlers.js.map +1 -1
- package/dist/hooks/logger.d.ts +46 -0
- package/dist/hooks/logger.d.ts.map +1 -0
- package/dist/hooks/logger.js +79 -0
- package/dist/hooks/logger.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +152 -108
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/agent-registry/agent-profile-repository.d.ts +29 -0
- package/dist/infrastructure/agent-registry/agent-profile-repository.d.ts.map +1 -0
- package/dist/infrastructure/agent-registry/agent-profile-repository.js +109 -0
- package/dist/infrastructure/agent-registry/agent-profile-repository.js.map +1 -0
- package/dist/infrastructure/agent-registry/agent-session-adapter.d.ts +28 -0
- package/dist/infrastructure/agent-registry/agent-session-adapter.d.ts.map +1 -0
- package/dist/infrastructure/agent-registry/agent-session-adapter.js +61 -0
- package/dist/infrastructure/agent-registry/agent-session-adapter.js.map +1 -0
- package/dist/infrastructure/agent-registry/built-in-profiles.d.ts +19 -0
- package/dist/infrastructure/agent-registry/built-in-profiles.d.ts.map +1 -0
- package/dist/infrastructure/agent-registry/built-in-profiles.js +210 -0
- package/dist/infrastructure/agent-registry/built-in-profiles.js.map +1 -0
- package/dist/infrastructure/azure-sync/azure-auth.d.ts +40 -0
- package/dist/infrastructure/azure-sync/azure-auth.d.ts.map +1 -0
- package/dist/infrastructure/azure-sync/azure-auth.js +94 -0
- package/dist/infrastructure/azure-sync/azure-auth.js.map +1 -0
- package/dist/infrastructure/azure-sync/azure-devops-client.d.ts +43 -0
- package/dist/infrastructure/azure-sync/azure-devops-client.d.ts.map +1 -0
- package/dist/infrastructure/azure-sync/azure-devops-client.js +296 -0
- package/dist/infrastructure/azure-sync/azure-devops-client.js.map +1 -0
- package/dist/infrastructure/azure-sync/index.d.ts +9 -0
- package/dist/infrastructure/azure-sync/index.d.ts.map +1 -0
- package/dist/infrastructure/azure-sync/index.js +12 -0
- package/dist/infrastructure/azure-sync/index.js.map +1 -0
- package/dist/infrastructure/azure-sync/sqlite-sync-repository.d.ts +39 -0
- package/dist/infrastructure/azure-sync/sqlite-sync-repository.d.ts.map +1 -0
- package/dist/infrastructure/azure-sync/sqlite-sync-repository.js +202 -0
- package/dist/infrastructure/azure-sync/sqlite-sync-repository.js.map +1 -0
- package/dist/infrastructure/config/index.d.ts +5 -0
- package/dist/infrastructure/config/index.d.ts.map +1 -0
- package/dist/infrastructure/config/index.js +5 -0
- package/dist/infrastructure/config/index.js.map +1 -0
- package/dist/infrastructure/config/yaml-config-repository.d.ts +22 -0
- package/dist/infrastructure/config/yaml-config-repository.d.ts.map +1 -0
- package/dist/infrastructure/config/yaml-config-repository.js +68 -0
- package/dist/infrastructure/config/yaml-config-repository.js.map +1 -0
- package/dist/infrastructure/domain-map/llm-prompt-factory.d.ts +21 -0
- package/dist/infrastructure/domain-map/llm-prompt-factory.d.ts.map +1 -0
- package/dist/infrastructure/domain-map/llm-prompt-factory.js +49 -0
- package/dist/infrastructure/domain-map/llm-prompt-factory.js.map +1 -0
- package/dist/infrastructure/kanban/card-repository.d.ts +6 -0
- package/dist/infrastructure/kanban/card-repository.d.ts.map +1 -1
- package/dist/infrastructure/kanban/card-repository.js +79 -7
- package/dist/infrastructure/kanban/card-repository.js.map +1 -1
- package/dist/infrastructure/pipeline/dagger-adapter.d.ts +50 -0
- package/dist/infrastructure/pipeline/dagger-adapter.d.ts.map +1 -0
- package/dist/infrastructure/pipeline/dagger-adapter.js +153 -0
- package/dist/infrastructure/pipeline/dagger-adapter.js.map +1 -0
- package/dist/infrastructure/pipeline/dagger-scaffold-generator.d.ts +35 -0
- package/dist/infrastructure/pipeline/dagger-scaffold-generator.d.ts.map +1 -0
- package/dist/infrastructure/pipeline/dagger-scaffold-generator.js +132 -0
- package/dist/infrastructure/pipeline/dagger-scaffold-generator.js.map +1 -0
- package/dist/infrastructure/pipeline/index.d.ts +20 -0
- package/dist/infrastructure/pipeline/index.d.ts.map +1 -0
- package/dist/infrastructure/pipeline/index.js +19 -0
- package/dist/infrastructure/pipeline/index.js.map +1 -0
- package/dist/infrastructure/pipeline/pipeline-template-registry.d.ts +23 -0
- package/dist/infrastructure/pipeline/pipeline-template-registry.d.ts.map +1 -0
- package/dist/infrastructure/pipeline/pipeline-template-registry.js +63 -0
- package/dist/infrastructure/pipeline/pipeline-template-registry.js.map +1 -0
- package/dist/infrastructure/pipeline/scaffold-templates-extra.d.ts +17 -0
- package/dist/infrastructure/pipeline/scaffold-templates-extra.d.ts.map +1 -0
- package/dist/infrastructure/pipeline/scaffold-templates-extra.js +467 -0
- package/dist/infrastructure/pipeline/scaffold-templates-extra.js.map +1 -0
- package/dist/infrastructure/pipeline/scaffold-templates.d.ts +23 -0
- package/dist/infrastructure/pipeline/scaffold-templates.d.ts.map +1 -0
- package/dist/infrastructure/pipeline/scaffold-templates.js +476 -0
- package/dist/infrastructure/pipeline/scaffold-templates.js.map +1 -0
- package/dist/infrastructure/pipeline/sqlite-pipeline-repository.d.ts +32 -0
- package/dist/infrastructure/pipeline/sqlite-pipeline-repository.d.ts.map +1 -0
- package/dist/infrastructure/pipeline/sqlite-pipeline-repository.js +197 -0
- package/dist/infrastructure/pipeline/sqlite-pipeline-repository.js.map +1 -0
- package/dist/mcp-server.d.ts +3 -0
- package/dist/mcp-server.d.ts.map +1 -0
- package/dist/mcp-server.js +300 -0
- package/dist/mcp-server.js.map +1 -0
- package/dist/tools/agent-registry-tools.d.ts +11 -0
- package/dist/tools/agent-registry-tools.d.ts.map +1 -0
- package/dist/tools/agent-registry-tools.js +208 -0
- package/dist/tools/agent-registry-tools.js.map +1 -0
- package/dist/tools/azure-sync-tools.d.ts +15 -0
- package/dist/tools/azure-sync-tools.d.ts.map +1 -0
- package/dist/tools/azure-sync-tools.js +332 -0
- package/dist/tools/azure-sync-tools.js.map +1 -0
- package/dist/tools/kanban-card-tools.d.ts.map +1 -1
- package/dist/tools/kanban-card-tools.js +41 -16
- package/dist/tools/kanban-card-tools.js.map +1 -1
- package/dist/tools/kanban-gate-tools.d.ts +7 -0
- package/dist/tools/kanban-gate-tools.d.ts.map +1 -0
- package/dist/tools/kanban-gate-tools.js +106 -0
- package/dist/tools/kanban-gate-tools.js.map +1 -0
- package/dist/tools/kanban-grooming-tools.d.ts +7 -0
- package/dist/tools/kanban-grooming-tools.d.ts.map +1 -0
- package/dist/tools/kanban-grooming-tools.js +180 -0
- package/dist/tools/kanban-grooming-tools.js.map +1 -0
- package/dist/tools/pipeline-tools.d.ts +15 -0
- package/dist/tools/pipeline-tools.d.ts.map +1 -0
- package/dist/tools/pipeline-tools.js +424 -0
- package/dist/tools/pipeline-tools.js.map +1 -0
- package/package.json +7 -2
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dagger Scaffold Generator
|
|
3
|
+
*
|
|
4
|
+
* Generates Dagger module scaffold files for supported stack templates.
|
|
5
|
+
* Each stack produces a complete set of files (.dagger/dagger.json,
|
|
6
|
+
* .dagger/src/index.ts or .dagger/src/{name}/main.py) with real CI/CD
|
|
7
|
+
* functions that match the gate-to-function mapping in the template registry.
|
|
8
|
+
*
|
|
9
|
+
* Template source content is in scaffold-templates.ts (SRP split).
|
|
10
|
+
*
|
|
11
|
+
* SOLID: SRP — scaffold generation orchestration only
|
|
12
|
+
* SOLID: OCP — new stacks added by extending the generator map
|
|
13
|
+
* SOLID: DIP — implements domain ScaffoldPort interface
|
|
14
|
+
*/
|
|
15
|
+
import { typescriptLibSource, typescriptAppSource, pythonLibSource, pythonAppSource, } from "./scaffold-templates.js";
|
|
16
|
+
import { swiftIosSource, csharpAppSource, kotlinAndroidSource, genericSource, } from "./scaffold-templates-extra.js";
|
|
17
|
+
// ─── Supported Stacks ────────────────────────────────────────────────────────
|
|
18
|
+
const SUPPORTED_STACKS = [
|
|
19
|
+
"typescript-lib",
|
|
20
|
+
"typescript-app",
|
|
21
|
+
"python-lib",
|
|
22
|
+
"python-app",
|
|
23
|
+
"swift-ios",
|
|
24
|
+
"csharp-app",
|
|
25
|
+
"kotlin-android",
|
|
26
|
+
"generic",
|
|
27
|
+
];
|
|
28
|
+
function isSupportedStack(stack) {
|
|
29
|
+
return SUPPORTED_STACKS.includes(stack);
|
|
30
|
+
}
|
|
31
|
+
// ─── Dagger JSON Generator ───────────────────────────────────────────────────
|
|
32
|
+
/**
|
|
33
|
+
* Generate dagger.json module configuration.
|
|
34
|
+
*/
|
|
35
|
+
function daggerJson(name, sdk) {
|
|
36
|
+
return JSON.stringify({
|
|
37
|
+
name,
|
|
38
|
+
sdk,
|
|
39
|
+
engineVersion: "v0.18.5",
|
|
40
|
+
}, null, 2);
|
|
41
|
+
}
|
|
42
|
+
// ─── Generator Implementation ────────────────────────────────────────────────
|
|
43
|
+
/**
|
|
44
|
+
* Dagger scaffold generator for TypeScript and Python stacks.
|
|
45
|
+
*
|
|
46
|
+
* Generates complete Dagger module files with real CI/CD functions
|
|
47
|
+
* that match the gate-to-function mapping in the template registry.
|
|
48
|
+
* Function names use the stack prefix (e.g., "typescript-lib-lint"
|
|
49
|
+
* becomes "typescriptLibLint" in TS or "typescript_lib_lint" in Python).
|
|
50
|
+
*/
|
|
51
|
+
export class DaggerScaffoldGenerator {
|
|
52
|
+
/** Generate scaffold files for a supported stack. */
|
|
53
|
+
generate(stack) {
|
|
54
|
+
if (!isSupportedStack(stack)) {
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
return this.buildScaffold(stack);
|
|
58
|
+
}
|
|
59
|
+
/** List all stacks with scaffold support. */
|
|
60
|
+
supportedStacks() {
|
|
61
|
+
return [...SUPPORTED_STACKS];
|
|
62
|
+
}
|
|
63
|
+
// ─── Private ─────────────────────────────────────────────────────────
|
|
64
|
+
buildScaffold(stack) {
|
|
65
|
+
const sdk = this.getSdk(stack);
|
|
66
|
+
const moduleName = stack;
|
|
67
|
+
const files = this.generateFiles(stack, sdk, moduleName);
|
|
68
|
+
return { stack, sdk, moduleName, files };
|
|
69
|
+
}
|
|
70
|
+
getSdk(stack) {
|
|
71
|
+
if (stack.startsWith("python"))
|
|
72
|
+
return "python";
|
|
73
|
+
return "typescript";
|
|
74
|
+
}
|
|
75
|
+
generateFiles(stack, sdk, moduleName) {
|
|
76
|
+
const files = [];
|
|
77
|
+
// dagger.json (always first)
|
|
78
|
+
files.push({
|
|
79
|
+
path: ".dagger/dagger.json",
|
|
80
|
+
content: daggerJson(moduleName, sdk),
|
|
81
|
+
});
|
|
82
|
+
// Source file(s)
|
|
83
|
+
if (sdk === "typescript") {
|
|
84
|
+
files.push({
|
|
85
|
+
path: ".dagger/src/index.ts",
|
|
86
|
+
content: this.getTypescriptSource(stack),
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
const pyModule = moduleName.replace(/-/g, "_");
|
|
91
|
+
files.push({
|
|
92
|
+
path: `.dagger/src/${pyModule}/main.py`,
|
|
93
|
+
content: this.getPythonSource(stack),
|
|
94
|
+
});
|
|
95
|
+
// Python __init__.py
|
|
96
|
+
files.push({
|
|
97
|
+
path: `.dagger/src/${pyModule}/__init__.py`,
|
|
98
|
+
content: "",
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
return files;
|
|
102
|
+
}
|
|
103
|
+
getTypescriptSource(stack) {
|
|
104
|
+
switch (stack) {
|
|
105
|
+
case "typescript-lib":
|
|
106
|
+
return typescriptLibSource(stack);
|
|
107
|
+
case "typescript-app":
|
|
108
|
+
return typescriptAppSource(stack);
|
|
109
|
+
case "swift-ios":
|
|
110
|
+
return swiftIosSource(stack);
|
|
111
|
+
case "csharp-app":
|
|
112
|
+
return csharpAppSource(stack);
|
|
113
|
+
case "kotlin-android":
|
|
114
|
+
return kotlinAndroidSource(stack);
|
|
115
|
+
case "generic":
|
|
116
|
+
return genericSource(stack);
|
|
117
|
+
default:
|
|
118
|
+
throw new Error(`No TypeScript source for stack: ${stack}`);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
getPythonSource(stack) {
|
|
122
|
+
switch (stack) {
|
|
123
|
+
case "python-lib":
|
|
124
|
+
return pythonLibSource(stack);
|
|
125
|
+
case "python-app":
|
|
126
|
+
return pythonAppSource(stack);
|
|
127
|
+
default:
|
|
128
|
+
throw new Error(`No Python source for stack: ${stack}`);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=dagger-scaffold-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dagger-scaffold-generator.js","sourceRoot":"","sources":["../../../src/infrastructure/pipeline/dagger-scaffold-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pipeline Bounded Context — Infrastructure Layer
|
|
3
|
+
*
|
|
4
|
+
* Exports all infrastructure implementations for the pipeline context.
|
|
5
|
+
*
|
|
6
|
+
* Components:
|
|
7
|
+
* - SqlitePipelineRepository: SQLite persistence for Pipeline aggregate
|
|
8
|
+
* - InMemoryPipelineTemplateRegistry: Built-in template definitions
|
|
9
|
+
* - DaggerCliAdapter: Dagger CLI execution + runtime detection
|
|
10
|
+
* - DaggerScaffoldGenerator: Dagger module scaffold file generation
|
|
11
|
+
* - Scaffold Templates: TS/Python (scaffold-templates) + Swift/C#/Kotlin/Generic (scaffold-templates-extra)
|
|
12
|
+
*/
|
|
13
|
+
export { SqlitePipelineRepository } from "./sqlite-pipeline-repository.js";
|
|
14
|
+
export { InMemoryPipelineTemplateRegistry } from "./pipeline-template-registry.js";
|
|
15
|
+
export { DaggerCliAdapter, ChildProcessExecutor, } from "./dagger-adapter.js";
|
|
16
|
+
export type { ShellExecutor, ShellExecOptions, ShellExecResult, } from "./dagger-adapter.js";
|
|
17
|
+
export { DaggerScaffoldGenerator } from "./dagger-scaffold-generator.js";
|
|
18
|
+
export { typescriptLibSource, typescriptAppSource, pythonLibSource, pythonAppSource, pascalCase, camelCase, snakeCase, } from "./scaffold-templates.js";
|
|
19
|
+
export { swiftIosSource, csharpAppSource, kotlinAndroidSource, genericSource, } from "./scaffold-templates-extra.js";
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/pipeline/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EACL,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,UAAU,EACV,SAAS,EACT,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,aAAa,GACd,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pipeline Bounded Context — Infrastructure Layer
|
|
3
|
+
*
|
|
4
|
+
* Exports all infrastructure implementations for the pipeline context.
|
|
5
|
+
*
|
|
6
|
+
* Components:
|
|
7
|
+
* - SqlitePipelineRepository: SQLite persistence for Pipeline aggregate
|
|
8
|
+
* - InMemoryPipelineTemplateRegistry: Built-in template definitions
|
|
9
|
+
* - DaggerCliAdapter: Dagger CLI execution + runtime detection
|
|
10
|
+
* - DaggerScaffoldGenerator: Dagger module scaffold file generation
|
|
11
|
+
* - Scaffold Templates: TS/Python (scaffold-templates) + Swift/C#/Kotlin/Generic (scaffold-templates-extra)
|
|
12
|
+
*/
|
|
13
|
+
export { SqlitePipelineRepository } from "./sqlite-pipeline-repository.js";
|
|
14
|
+
export { InMemoryPipelineTemplateRegistry } from "./pipeline-template-registry.js";
|
|
15
|
+
export { DaggerCliAdapter, ChildProcessExecutor, } from "./dagger-adapter.js";
|
|
16
|
+
export { DaggerScaffoldGenerator } from "./dagger-scaffold-generator.js";
|
|
17
|
+
export { typescriptLibSource, typescriptAppSource, pythonLibSource, pythonAppSource, pascalCase, camelCase, snakeCase, } from "./scaffold-templates.js";
|
|
18
|
+
export { swiftIosSource, csharpAppSource, kotlinAndroidSource, genericSource, } from "./scaffold-templates-extra.js";
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/infrastructure/pipeline/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EACL,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,UAAU,EACV,SAAS,EACT,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,aAAa,GACd,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* In-Memory Pipeline Template Registry
|
|
3
|
+
*
|
|
4
|
+
* Implements PipelineTemplateRepository with static built-in templates.
|
|
5
|
+
* Each template defines the gate sequence for a stack+scope combination.
|
|
6
|
+
*
|
|
7
|
+
* Templates are readonly configuration data — no database persistence needed.
|
|
8
|
+
* Follows the same pattern as agent-registry/built-in-profiles.ts.
|
|
9
|
+
*
|
|
10
|
+
* SOLID: SRP — template lookup and listing only
|
|
11
|
+
* SOLID: OCP — new templates added by extending the registry data
|
|
12
|
+
* SOLID: DIP — implements domain interface
|
|
13
|
+
*/
|
|
14
|
+
import type { PipelineTemplateRepository, PipelineTemplateConfig } from "../../domain/pipeline/repositories.js";
|
|
15
|
+
import type { StackTemplate, PipelineScope } from "../../domain/pipeline/value-objects.js";
|
|
16
|
+
export declare class InMemoryPipelineTemplateRegistry implements PipelineTemplateRepository {
|
|
17
|
+
private readonly templates;
|
|
18
|
+
constructor();
|
|
19
|
+
getTemplate(stack: StackTemplate, scope: PipelineScope): Promise<PipelineTemplateConfig | undefined>;
|
|
20
|
+
listTemplates(): Promise<readonly StackTemplate[]>;
|
|
21
|
+
hasTemplate(stack: StackTemplate): Promise<boolean>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=pipeline-template-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline-template-registry.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/pipeline/pipeline-template-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EACV,0BAA0B,EAC1B,sBAAsB,EAEvB,MAAM,uCAAuC,CAAC;AAQ/C,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAEd,MAAM,wCAAwC,CAAC;AA6DhD,qBAAa,gCACX,YAAW,0BAA0B;IAErC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8C;;IAMlE,WAAW,CACf,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;IAIxC,aAAa,IAAI,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC;IAIlD,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAI1D"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { BRANCH_GATE_TYPES, RELEASE_GATE_TYPES, STACK_TEMPLATES, DEFAULT_SKIP_POLICIES, DEFAULT_DAGGER_FUNCTIONS, } from "../../domain/pipeline/value-objects.js";
|
|
2
|
+
// ─── Template Key ────────────────────────────────────────────────────────────
|
|
3
|
+
/** Composite key for template lookup. */
|
|
4
|
+
function templateKey(stack, scope) {
|
|
5
|
+
return `${stack}:${scope}`;
|
|
6
|
+
}
|
|
7
|
+
// ─── Gate Template Builder ───────────────────────────────────────────────────
|
|
8
|
+
/**
|
|
9
|
+
* Build gate templates with a stack-specific Dagger function prefix.
|
|
10
|
+
* E.g., for typescript-lib: "lint" becomes "typescript-lib-lint".
|
|
11
|
+
*/
|
|
12
|
+
function buildPrefixedGates(scope, prefix) {
|
|
13
|
+
const gateTypes = scope === "branch" ? BRANCH_GATE_TYPES : RELEASE_GATE_TYPES;
|
|
14
|
+
return gateTypes.map((type) => ({
|
|
15
|
+
type,
|
|
16
|
+
daggerFunction: `${prefix}-${DEFAULT_DAGGER_FUNCTIONS[type]}`,
|
|
17
|
+
skipPolicy: DEFAULT_SKIP_POLICIES[type],
|
|
18
|
+
}));
|
|
19
|
+
}
|
|
20
|
+
// ─── Built-in Templates ──────────────────────────────────────────────────────
|
|
21
|
+
/**
|
|
22
|
+
* Generate all built-in templates.
|
|
23
|
+
* Each stack gets a branch template (4 gates) and a release template (7 gates).
|
|
24
|
+
*/
|
|
25
|
+
function buildBuiltInTemplates() {
|
|
26
|
+
const templates = new Map();
|
|
27
|
+
for (const stack of STACK_TEMPLATES) {
|
|
28
|
+
const prefix = stack; // Use stack name as Dagger function prefix
|
|
29
|
+
// Branch (CI) template
|
|
30
|
+
const branchConfig = {
|
|
31
|
+
stack,
|
|
32
|
+
scope: "branch",
|
|
33
|
+
gates: buildPrefixedGates("branch", prefix),
|
|
34
|
+
};
|
|
35
|
+
templates.set(templateKey(stack, "branch"), branchConfig);
|
|
36
|
+
// Release (CD) template
|
|
37
|
+
const releaseConfig = {
|
|
38
|
+
stack,
|
|
39
|
+
scope: "release",
|
|
40
|
+
gates: buildPrefixedGates("release", prefix),
|
|
41
|
+
};
|
|
42
|
+
templates.set(templateKey(stack, "release"), releaseConfig);
|
|
43
|
+
}
|
|
44
|
+
return templates;
|
|
45
|
+
}
|
|
46
|
+
// ─── Repository Implementation ───────────────────────────────────────────────
|
|
47
|
+
export class InMemoryPipelineTemplateRegistry {
|
|
48
|
+
templates;
|
|
49
|
+
constructor() {
|
|
50
|
+
this.templates = buildBuiltInTemplates();
|
|
51
|
+
}
|
|
52
|
+
async getTemplate(stack, scope) {
|
|
53
|
+
return this.templates.get(templateKey(stack, scope));
|
|
54
|
+
}
|
|
55
|
+
async listTemplates() {
|
|
56
|
+
return [...STACK_TEMPLATES];
|
|
57
|
+
}
|
|
58
|
+
async hasTemplate(stack) {
|
|
59
|
+
// Every stack has both branch and release templates
|
|
60
|
+
return this.templates.has(templateKey(stack, "branch"));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=pipeline-template-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline-template-registry.js","sourceRoot":"","sources":["../../../src/infrastructure/pipeline/pipeline-template-registry.ts"],"names":[],"mappings":"AAkBA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,wCAAwC,CAAC;AAOhD,gFAAgF;AAEhF,yCAAyC;AACzC,SAAS,WAAW,CAAC,KAAoB,EAAE,KAAoB;IAC7D,OAAO,GAAG,KAAK,IAAI,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,SAAS,kBAAkB,CACzB,KAAoB,EACpB,MAAc;IAEd,MAAM,SAAS,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,CAAC;IAC9E,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI;QACJ,cAAc,EAAE,GAAG,MAAM,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE;QAC7D,UAAU,EAAE,qBAAqB,CAAC,IAAI,CAAC;KACxC,CAAC,CAAC,CAAC;AACN,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,SAAS,qBAAqB;IAC5B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkC,CAAC;IAE5D,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,2CAA2C;QAEjE,uBAAuB;QACvB,MAAM,YAAY,GAA2B;YAC3C,KAAK;YACL,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC5C,CAAC;QACF,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC;QAE1D,wBAAwB;QACxB,MAAM,aAAa,GAA2B;YAC5C,KAAK;YACL,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC;SAC7C,CAAC;QACF,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,aAAa,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,gFAAgF;AAEhF,MAAM,OAAO,gCAAgC;IAG1B,SAAS,CAA8C;IAExE;QACE,IAAI,CAAC,SAAS,GAAG,qBAAqB,EAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,WAAW,CACf,KAAoB,EACpB,KAAoB;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,OAAO,CAAC,GAAG,eAAe,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAoB;QACpC,oDAAoD;QACpD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1D,CAAC;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dagger Module Scaffold Templates — Extra Stacks
|
|
3
|
+
*
|
|
4
|
+
* Swift, C#, Kotlin, and Generic scaffold content using TypeScript Dagger SDK.
|
|
5
|
+
* Each function generates platform-specific CI/CD gate functions.
|
|
6
|
+
*
|
|
7
|
+
* SOLID: SRP — template content only (no generation logic)
|
|
8
|
+
*/
|
|
9
|
+
/** Swift iOS Dagger module (SwiftLint, xcodebuild, App Store Connect). */
|
|
10
|
+
export declare function swiftIosSource(prefix: string): string;
|
|
11
|
+
/** C# application Dagger module (dotnet format, dotnet test, dotnet publish). */
|
|
12
|
+
export declare function csharpAppSource(prefix: string): string;
|
|
13
|
+
/** Kotlin Android Dagger module (ktlint, Gradle test, Gradle build, Play Store). */
|
|
14
|
+
export declare function kotlinAndroidSource(prefix: string): string;
|
|
15
|
+
/** Generic Dagger module with configurable shell command placeholders. */
|
|
16
|
+
export declare function genericSource(prefix: string): string;
|
|
17
|
+
//# sourceMappingURL=scaffold-templates-extra.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaffold-templates-extra.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/pipeline/scaffold-templates-extra.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA+GrD;AAID,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAkHtD;AAID,oFAAoF;AACpF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA8G1D;AAID,0EAA0E;AAC1E,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA8GpD"}
|