@specverse/engines 4.1.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/assets/examples/09-api/ai-spec.yaml +194 -0
- package/assets/examples/09-api/converted.yaml +95 -0
- package/assets/examples/09-api/diagram-architecture.mmd +10 -0
- package/assets/examples/09-api/diagram-er.mmd +10 -0
- package/assets/examples/09-api/documentation.html +104 -0
- package/assets/examples/09-api/documentation.md +95 -0
- package/assets/examples/09-api/inferred-spec.yaml +420 -0
- package/assets/examples/09-api/openapi.json +61 -0
- package/assets/examples/10-api/README.md +216 -0
- package/assets/examples/10-api/ai-spec.yaml +194 -0
- package/assets/examples/10-api/converted.yaml +96 -0
- package/assets/examples/10-api/diagram-architecture.mmd +10 -0
- package/assets/examples/10-api/diagram-er.mmd +10 -0
- package/assets/examples/10-api/documentation.html +104 -0
- package/assets/examples/10-api/documentation.md +95 -0
- package/assets/examples/10-api/inferred-spec.yaml +7 -0
- package/assets/examples/10-api/metadata.yaml +89 -0
- package/assets/examples/10-api/openapi.json +61 -0
- package/assets/examples/10-api/package-integration-test.js +177 -0
- package/assets/examples/10-api/usage-example.js +323 -0
- package/assets/examples/10-api/usage-example.ts +363 -0
- package/assets/examples/10-api/workflow-test.js +113 -0
- package/assets/examples/manifests/01-simple-default-mappings.yaml +36 -0
- package/assets/examples/manifests/02-capability-mappings.yaml +55 -0
- package/assets/examples/manifests/03-hybrid-mappings.yaml +109 -0
- package/assets/examples/manifests/README.md +245 -0
- package/assets/examples/manifests/backend-only.yaml +43 -0
- package/assets/examples/manifests/blog-api.md +78 -0
- package/assets/examples/manifests/blog-api.specly +79 -0
- package/assets/examples/manifests/frontend-only.yaml +27 -0
- package/assets/examples/manifests/fullstack-app.yaml +44 -0
- package/assets/examples/manifests/fullstack-monorepo.yaml +62 -0
- package/assets/examples/validate-examples-with-expected-failures.cjs +328 -0
- package/assets/examples/validate-examples.cjs +225 -0
- package/assets/examples-decomposed/cloud-native-manifest.example.yaml +8 -0
- package/assets/examples-decomposed/cloud-native-manifest.md +379 -0
- package/assets/examples-decomposed/cloud-native-manifest.specly +60 -0
- package/assets/examples-decomposed/docker-compose-manifest.example.yaml +8 -0
- package/assets/examples-decomposed/docker-compose-manifest.md +326 -0
- package/assets/examples-decomposed/docker-compose-manifest.specly +40 -0
- package/assets/examples-decomposed/kubernetes-deployment-manifest.example.yaml +8 -0
- package/assets/examples-decomposed/kubernetes-deployment-manifest.md +237 -0
- package/assets/examples-decomposed/kubernetes-deployment-manifest.specly +41 -0
- package/assets/examples-inference/inference-engine-demo.example.yaml +8 -0
- package/assets/examples-inference/inference-engine-demo.md +574 -0
- package/assets/examples-inference/inference-engine-demo.specly +216 -0
- package/assets/prompts/MOVED.md +35 -0
- package/assets/prompts/SUMMARY-v8-PROMOTION.md +445 -0
- package/assets/prompts/core/CHANGELOG.md +158 -0
- package/assets/prompts/core/MIGRATION-v6-to-v7.md +379 -0
- package/assets/prompts/core/README.md +319 -0
- package/assets/prompts/core/base-terminal-prompt.md +201 -0
- package/assets/prompts/core/examples/example-usage.ts +140 -0
- package/assets/prompts/core/schemas/prompt.schema.json +309 -0
- package/assets/prompts/core/schemas/prompt.schema.yaml +229 -0
- package/assets/prompts/core/standard/archive/v1/analyse.prompt.yaml +259 -0
- package/assets/prompts/core/standard/archive/v1/create.prompt.yaml +302 -0
- package/assets/prompts/core/standard/archive/v1/materialise.prompt.yaml +328 -0
- package/assets/prompts/core/standard/archive/v1/realize.prompt.yaml +606 -0
- package/assets/prompts/core/standard/archive/v2/README.md +110 -0
- package/assets/prompts/core/standard/archive/v2/analyse.prompt.yaml +151 -0
- package/assets/prompts/core/standard/archive/v2/create.prompt.yaml +151 -0
- package/assets/prompts/core/standard/archive/v2/materialise.prompt.yaml +132 -0
- package/assets/prompts/core/standard/archive/v2/realize.prompt.yaml +147 -0
- package/assets/prompts/core/standard/archive/v3/README.md +279 -0
- package/assets/prompts/core/standard/archive/v3/analyse.prompt.yaml +309 -0
- package/assets/prompts/core/standard/archive/v3/create.prompt.yaml +351 -0
- package/assets/prompts/core/standard/archive/v3/materialise.prompt.yaml +247 -0
- package/assets/prompts/core/standard/archive/v3/realize.prompt.yaml +344 -0
- package/assets/prompts/core/standard/archive/v4/README.md +79 -0
- package/assets/prompts/core/standard/archive/v4/analyse.prompt.yaml +204 -0
- package/assets/prompts/core/standard/archive/v4/create.prompt.yaml +185 -0
- package/assets/prompts/core/standard/archive/v5/README.md +224 -0
- package/assets/prompts/core/standard/archive/v5/analyse.prompt.yaml +209 -0
- package/assets/prompts/core/standard/archive/v5/create.prompt.yaml +225 -0
- package/assets/prompts/core/standard/archive/v5/materialise.prompt.yaml +242 -0
- package/assets/prompts/core/standard/archive/v5/realize.prompt.yaml +336 -0
- package/assets/prompts/core/standard/archive/v6/README.md +187 -0
- package/assets/prompts/core/standard/archive/v6/analyse.prompt.yaml +219 -0
- package/assets/prompts/core/standard/archive/v6/create.prompt.yaml +180 -0
- package/assets/prompts/core/standard/archive/v6/materialise.prompt.yaml +203 -0
- package/assets/prompts/core/standard/archive/v6/realize.prompt.yaml +215 -0
- package/assets/prompts/core/standard/archive/v7/analyse.prompt.nick.yaml +144 -0
- package/assets/prompts/core/standard/archive/v7/analyse.prompt.old.yaml +146 -0
- package/assets/prompts/core/standard/archive/v7/analyse.prompt.yaml +129 -0
- package/assets/prompts/core/standard/archive/v7/create.prompt.yaml +146 -0
- package/assets/prompts/core/standard/archive/v7/materialise.prompt.yaml +297 -0
- package/assets/prompts/core/standard/archive/v7/realize.prompt.yaml +294 -0
- package/assets/prompts/core/standard/archive/v8/README.md +400 -0
- package/assets/prompts/core/standard/archive/v8/analyse.prompt.yaml +185 -0
- package/assets/prompts/core/standard/archive/v8/create.prompt.yaml +203 -0
- package/assets/prompts/core/standard/archive/v8/materialise.prompt.yaml +297 -0
- package/assets/prompts/core/standard/archive/v8/realize.prompt.yaml +294 -0
- package/assets/prompts/core/standard/default/analyse.prompt.yaml +496 -0
- package/assets/prompts/core/standard/default/app-demo.prompt.yaml +213 -0
- package/assets/prompts/core/standard/default/create.prompt.yaml +418 -0
- package/assets/prompts/core/standard/default/materialise.prompt.yaml +814 -0
- package/assets/prompts/core/standard/default/realize.prompt.yaml +574 -0
- package/assets/prompts/core/standard/v9/analyse.prompt.yaml +496 -0
- package/assets/prompts/core/standard/v9/create.prompt.yaml +418 -0
- package/assets/prompts/core/standard/v9/materialise.prompt.yaml +814 -0
- package/assets/prompts/core/standard/v9/realize.prompt.yaml +574 -0
- package/assets/prompts/templates/api-orchestrator-template.yaml +188 -0
- package/assets/prompts/templates/claude-integration-template.md +121 -0
- package/assets/prompts/templates/terminal-prompt-template.md +97 -0
- package/dist/ai/commands/enhance.d.ts +8 -0
- package/dist/ai/commands/enhance.d.ts.map +1 -0
- package/dist/ai/commands/enhance.js +155 -0
- package/dist/ai/commands/enhance.js.map +1 -0
- package/dist/ai/commands/fill.d.ts +8 -0
- package/dist/ai/commands/fill.d.ts.map +1 -0
- package/dist/ai/commands/fill.js +179 -0
- package/dist/ai/commands/fill.js.map +1 -0
- package/dist/ai/commands/index.d.ts +11 -0
- package/dist/ai/commands/index.d.ts.map +1 -0
- package/dist/ai/commands/index.js +11 -0
- package/dist/ai/commands/index.js.map +1 -0
- package/dist/ai/commands/spec-analyser.d.ts +18 -0
- package/dist/ai/commands/spec-analyser.d.ts.map +1 -0
- package/dist/ai/commands/spec-analyser.js +175 -0
- package/dist/ai/commands/spec-analyser.js.map +1 -0
- package/dist/ai/commands/suggest.d.ts +8 -0
- package/dist/ai/commands/suggest.d.ts.map +1 -0
- package/dist/ai/commands/suggest.js +101 -0
- package/dist/ai/commands/suggest.js.map +1 -0
- package/dist/ai/commands/template.d.ts +8 -0
- package/dist/ai/commands/template.d.ts.map +1 -0
- package/dist/ai/commands/template.js +136 -0
- package/dist/ai/commands/template.js.map +1 -0
- package/dist/ai/config/index.d.ts +71 -0
- package/dist/ai/config/index.d.ts.map +1 -0
- package/dist/ai/config/index.js +193 -0
- package/dist/ai/config/index.js.map +1 -0
- package/dist/ai/config-loader.d.ts +31 -0
- package/dist/ai/config-loader.d.ts.map +1 -0
- package/dist/ai/config-loader.js +66 -0
- package/dist/ai/config-loader.js.map +1 -0
- package/dist/ai/core/ecosystem-prompt-manager.d.ts +107 -0
- package/dist/ai/core/ecosystem-prompt-manager.d.ts.map +1 -0
- package/dist/ai/core/ecosystem-prompt-manager.js +462 -0
- package/dist/ai/core/ecosystem-prompt-manager.js.map +1 -0
- package/dist/ai/examples/basic-usage.d.ts +9 -0
- package/dist/ai/examples/basic-usage.d.ts.map +1 -0
- package/dist/ai/examples/basic-usage.js +94 -0
- package/dist/ai/examples/basic-usage.js.map +1 -0
- package/dist/ai/index.d.ts +44 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +164 -0
- package/dist/ai/index.js.map +1 -0
- package/dist/ai/orchestrator/index.d.ts +3 -0
- package/dist/ai/orchestrator/index.d.ts.map +1 -0
- package/dist/ai/orchestrator/index.js +3 -0
- package/dist/ai/orchestrator/index.js.map +1 -0
- package/dist/ai/orchestrator/interactive-workflow.d.ts +66 -0
- package/dist/ai/orchestrator/interactive-workflow.d.ts.map +1 -0
- package/dist/ai/orchestrator/interactive-workflow.js +214 -0
- package/dist/ai/orchestrator/interactive-workflow.js.map +1 -0
- package/dist/ai/orchestrator/specverse-orchestrator.d.ts +217 -0
- package/dist/ai/orchestrator/specverse-orchestrator.d.ts.map +1 -0
- package/dist/ai/orchestrator/specverse-orchestrator.js +745 -0
- package/dist/ai/orchestrator/specverse-orchestrator.js.map +1 -0
- package/dist/ai/prompt-loader.d.ts +24 -0
- package/dist/ai/prompt-loader.d.ts.map +1 -0
- package/dist/ai/prompt-loader.js +159 -0
- package/dist/ai/prompt-loader.js.map +1 -0
- package/dist/ai/providers/anthropic-provider.d.ts +38 -0
- package/dist/ai/providers/anthropic-provider.d.ts.map +1 -0
- package/dist/ai/providers/anthropic-provider.js +235 -0
- package/dist/ai/providers/anthropic-provider.js.map +1 -0
- package/dist/ai/providers/index.d.ts +6 -0
- package/dist/ai/providers/index.d.ts.map +1 -0
- package/dist/ai/providers/index.js +6 -0
- package/dist/ai/providers/index.js.map +1 -0
- package/dist/ai/providers/interactive-provider.d.ts +67 -0
- package/dist/ai/providers/interactive-provider.d.ts.map +1 -0
- package/dist/ai/providers/interactive-provider.js +337 -0
- package/dist/ai/providers/interactive-provider.js.map +1 -0
- package/dist/ai/providers/llm-provider.d.ts +127 -0
- package/dist/ai/providers/llm-provider.d.ts.map +1 -0
- package/dist/ai/providers/llm-provider.js +141 -0
- package/dist/ai/providers/llm-provider.js.map +1 -0
- package/dist/ai/providers/openai-provider.d.ts +39 -0
- package/dist/ai/providers/openai-provider.d.ts.map +1 -0
- package/dist/ai/providers/openai-provider.js +193 -0
- package/dist/ai/providers/openai-provider.js.map +1 -0
- package/dist/ai/providers/provider-factory.d.ts +47 -0
- package/dist/ai/providers/provider-factory.d.ts.map +1 -0
- package/dist/ai/providers/provider-factory.js +159 -0
- package/dist/ai/providers/provider-factory.js.map +1 -0
- package/dist/ai/session/claude-executor.d.ts +39 -0
- package/dist/ai/session/claude-executor.d.ts.map +1 -0
- package/dist/ai/session/claude-executor.js +136 -0
- package/dist/ai/session/claude-executor.js.map +1 -0
- package/dist/ai/session/session-manager.d.ts +72 -0
- package/dist/ai/session/session-manager.d.ts.map +1 -0
- package/dist/ai/session/session-manager.js +294 -0
- package/dist/ai/session/session-manager.js.map +1 -0
- package/dist/ai/session/types.d.ts +152 -0
- package/dist/ai/session/types.d.ts.map +1 -0
- package/dist/ai/session/types.js +6 -0
- package/dist/ai/session/types.js.map +1 -0
- package/dist/ai/types/index.d.ts +83 -0
- package/dist/ai/types/index.d.ts.map +1 -0
- package/dist/ai/types/index.js +5 -0
- package/dist/ai/types/index.js.map +1 -0
- package/dist/generators/UML-generator.d.ts +64 -0
- package/dist/generators/UML-generator.d.ts.map +1 -0
- package/dist/generators/UML-generator.js +541 -0
- package/dist/generators/UML-generator.js.map +1 -0
- package/dist/generators/ai-view-generator.d.ts +391 -0
- package/dist/generators/ai-view-generator.d.ts.map +1 -0
- package/dist/generators/ai-view-generator.js +907 -0
- package/dist/generators/ai-view-generator.js.map +1 -0
- package/dist/generators/diagram-engine/core/BaseDiagramPlugin.d.ts +41 -0
- package/dist/generators/diagram-engine/core/BaseDiagramPlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/core/BaseDiagramPlugin.js +64 -0
- package/dist/generators/diagram-engine/core/BaseDiagramPlugin.js.map +1 -0
- package/dist/generators/diagram-engine/core/DiagramContext.d.ts +155 -0
- package/dist/generators/diagram-engine/core/DiagramContext.d.ts.map +1 -0
- package/dist/generators/diagram-engine/core/DiagramContext.js +481 -0
- package/dist/generators/diagram-engine/core/DiagramContext.js.map +1 -0
- package/dist/generators/diagram-engine/core/StyleManager.d.ts +51 -0
- package/dist/generators/diagram-engine/core/StyleManager.d.ts.map +1 -0
- package/dist/generators/diagram-engine/core/StyleManager.js +227 -0
- package/dist/generators/diagram-engine/core/StyleManager.js.map +1 -0
- package/dist/generators/diagram-engine/core/UnifiedDiagramGenerator.d.ts +83 -0
- package/dist/generators/diagram-engine/core/UnifiedDiagramGenerator.d.ts.map +1 -0
- package/dist/generators/diagram-engine/core/UnifiedDiagramGenerator.js +200 -0
- package/dist/generators/diagram-engine/core/UnifiedDiagramGenerator.js.map +1 -0
- package/dist/generators/diagram-engine/index.d.ts +41 -0
- package/dist/generators/diagram-engine/index.d.ts.map +1 -0
- package/dist/generators/diagram-engine/index.js +74 -0
- package/dist/generators/diagram-engine/index.js.map +1 -0
- package/dist/generators/diagram-engine/plugins/architecture/ArchitecturePlugin.d.ts +65 -0
- package/dist/generators/diagram-engine/plugins/architecture/ArchitecturePlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/plugins/architecture/ArchitecturePlugin.js +490 -0
- package/dist/generators/diagram-engine/plugins/architecture/ArchitecturePlugin.js.map +1 -0
- package/dist/generators/diagram-engine/plugins/class-diagram/ClassDiagramPlugin.d.ts +40 -0
- package/dist/generators/diagram-engine/plugins/class-diagram/ClassDiagramPlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/plugins/class-diagram/ClassDiagramPlugin.js +323 -0
- package/dist/generators/diagram-engine/plugins/class-diagram/ClassDiagramPlugin.js.map +1 -0
- package/dist/generators/diagram-engine/plugins/deployment/DeploymentPlugin.d.ts +46 -0
- package/dist/generators/diagram-engine/plugins/deployment/DeploymentPlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/plugins/deployment/DeploymentPlugin.js +391 -0
- package/dist/generators/diagram-engine/plugins/deployment/DeploymentPlugin.js.map +1 -0
- package/dist/generators/diagram-engine/plugins/er-diagram/ERDiagramPlugin.d.ts +57 -0
- package/dist/generators/diagram-engine/plugins/er-diagram/ERDiagramPlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/plugins/er-diagram/ERDiagramPlugin.js +300 -0
- package/dist/generators/diagram-engine/plugins/er-diagram/ERDiagramPlugin.js.map +1 -0
- package/dist/generators/diagram-engine/plugins/event-flow/EventFlowPlugin.d.ts +70 -0
- package/dist/generators/diagram-engine/plugins/event-flow/EventFlowPlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/plugins/event-flow/EventFlowPlugin.js +955 -0
- package/dist/generators/diagram-engine/plugins/event-flow/EventFlowPlugin.js.map +1 -0
- package/dist/generators/diagram-engine/plugins/lifecycle/LifecyclePlugin.d.ts +40 -0
- package/dist/generators/diagram-engine/plugins/lifecycle/LifecyclePlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/plugins/lifecycle/LifecyclePlugin.js +183 -0
- package/dist/generators/diagram-engine/plugins/lifecycle/LifecyclePlugin.js.map +1 -0
- package/dist/generators/diagram-engine/plugins/manifest/ManifestPlugin.d.ts +71 -0
- package/dist/generators/diagram-engine/plugins/manifest/ManifestPlugin.d.ts.map +1 -0
- package/dist/generators/diagram-engine/plugins/manifest/ManifestPlugin.js +396 -0
- package/dist/generators/diagram-engine/plugins/manifest/ManifestPlugin.js.map +1 -0
- package/dist/generators/diagram-engine/renderers/MermaidRenderer.d.ts +72 -0
- package/dist/generators/diagram-engine/renderers/MermaidRenderer.d.ts.map +1 -0
- package/dist/generators/diagram-engine/renderers/MermaidRenderer.js +441 -0
- package/dist/generators/diagram-engine/renderers/MermaidRenderer.js.map +1 -0
- package/dist/generators/diagram-engine/types/index.d.ts +261 -0
- package/dist/generators/diagram-engine/types/index.d.ts.map +1 -0
- package/dist/generators/diagram-engine/types/index.js +7 -0
- package/dist/generators/diagram-engine/types/index.js.map +1 -0
- package/dist/generators/documentation-generator.d.ts +54 -0
- package/dist/generators/documentation-generator.d.ts.map +1 -0
- package/dist/generators/documentation-generator.js +756 -0
- package/dist/generators/documentation-generator.js.map +1 -0
- package/dist/generators/index.d.ts +47 -0
- package/dist/generators/index.d.ts.map +1 -0
- package/dist/generators/index.js +51 -0
- package/dist/generators/index.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/inference/comprehensive-engine.d.ts +71 -0
- package/dist/inference/comprehensive-engine.d.ts.map +1 -0
- package/dist/inference/comprehensive-engine.js +271 -0
- package/dist/inference/comprehensive-engine.js.map +1 -0
- package/dist/inference/core/context.d.ts +60 -0
- package/dist/inference/core/context.d.ts.map +1 -0
- package/dist/inference/core/context.js +292 -0
- package/dist/inference/core/context.js.map +1 -0
- package/dist/inference/core/index.d.ts +14 -0
- package/dist/inference/core/index.d.ts.map +1 -0
- package/dist/inference/core/index.js +18 -0
- package/dist/inference/core/index.js.map +1 -0
- package/dist/inference/core/rule-engine.d.ts +52 -0
- package/dist/inference/core/rule-engine.d.ts.map +1 -0
- package/dist/inference/core/rule-engine.js +1329 -0
- package/dist/inference/core/rule-engine.js.map +1 -0
- package/dist/inference/core/rule-file-types.d.ts +225 -0
- package/dist/inference/core/rule-file-types.d.ts.map +1 -0
- package/dist/inference/core/rule-file-types.js +79 -0
- package/dist/inference/core/rule-file-types.js.map +1 -0
- package/dist/inference/core/rule-loader.d.ts +93 -0
- package/dist/inference/core/rule-loader.d.ts.map +1 -0
- package/dist/inference/core/rule-loader.js +645 -0
- package/dist/inference/core/rule-loader.js.map +1 -0
- package/dist/inference/core/specly-converter.d.ts +50 -0
- package/dist/inference/core/specly-converter.d.ts.map +1 -0
- package/dist/inference/core/specly-converter.js +885 -0
- package/dist/inference/core/specly-converter.js.map +1 -0
- package/dist/inference/core/types.d.ts +395 -0
- package/dist/inference/core/types.d.ts.map +1 -0
- package/dist/inference/core/types.js +31 -0
- package/dist/inference/core/types.js.map +1 -0
- package/dist/inference/deployment/deployment-generator.d.ts +48 -0
- package/dist/inference/deployment/deployment-generator.d.ts.map +1 -0
- package/dist/inference/deployment/deployment-generator.js +343 -0
- package/dist/inference/deployment/deployment-generator.js.map +1 -0
- package/dist/inference/deployment/index.d.ts +6 -0
- package/dist/inference/deployment/index.d.ts.map +1 -0
- package/dist/inference/deployment/index.js +5 -0
- package/dist/inference/deployment/index.js.map +1 -0
- package/dist/inference/dev-specly-generator.d.ts +19 -0
- package/dist/inference/dev-specly-generator.d.ts.map +1 -0
- package/dist/inference/dev-specly-generator.js +127 -0
- package/dist/inference/dev-specly-generator.js.map +1 -0
- package/dist/inference/index.d.ts +29 -0
- package/dist/inference/index.d.ts.map +1 -0
- package/dist/inference/index.js +170 -0
- package/dist/inference/index.js.map +1 -0
- package/dist/inference/logical/generators/component-type-resolver.d.ts +82 -0
- package/dist/inference/logical/generators/component-type-resolver.d.ts.map +1 -0
- package/dist/inference/logical/generators/component-type-resolver.js +151 -0
- package/dist/inference/logical/generators/component-type-resolver.js.map +1 -0
- package/dist/inference/logical/generators/controller-generator.d.ts +43 -0
- package/dist/inference/logical/generators/controller-generator.d.ts.map +1 -0
- package/dist/inference/logical/generators/controller-generator.js +303 -0
- package/dist/inference/logical/generators/controller-generator.js.map +1 -0
- package/dist/inference/logical/generators/event-generator.d.ts +67 -0
- package/dist/inference/logical/generators/event-generator.d.ts.map +1 -0
- package/dist/inference/logical/generators/event-generator.js +466 -0
- package/dist/inference/logical/generators/event-generator.js.map +1 -0
- package/dist/inference/logical/generators/promotion-generator.d.ts +32 -0
- package/dist/inference/logical/generators/promotion-generator.d.ts.map +1 -0
- package/dist/inference/logical/generators/promotion-generator.js +133 -0
- package/dist/inference/logical/generators/promotion-generator.js.map +1 -0
- package/dist/inference/logical/generators/service-generator.d.ts +51 -0
- package/dist/inference/logical/generators/service-generator.d.ts.map +1 -0
- package/dist/inference/logical/generators/service-generator.js +268 -0
- package/dist/inference/logical/generators/service-generator.js.map +1 -0
- package/dist/inference/logical/generators/specialist-view-expander.d.ts +75 -0
- package/dist/inference/logical/generators/specialist-view-expander.d.ts.map +1 -0
- package/dist/inference/logical/generators/specialist-view-expander.js +182 -0
- package/dist/inference/logical/generators/specialist-view-expander.js.map +1 -0
- package/dist/inference/logical/generators/view-generator.d.ts +131 -0
- package/dist/inference/logical/generators/view-generator.d.ts.map +1 -0
- package/dist/inference/logical/generators/view-generator.js +1115 -0
- package/dist/inference/logical/generators/view-generator.js.map +1 -0
- package/dist/inference/logical/index.d.ts +19 -0
- package/dist/inference/logical/index.d.ts.map +1 -0
- package/dist/inference/logical/index.js +15 -0
- package/dist/inference/logical/index.js.map +1 -0
- package/dist/inference/logical/logical-engine.d.ts +68 -0
- package/dist/inference/logical/logical-engine.d.ts.map +1 -0
- package/dist/inference/logical/logical-engine.js +484 -0
- package/dist/inference/logical/logical-engine.js.map +1 -0
- package/dist/inference/quint-transpiler.d.ts +64 -0
- package/dist/inference/quint-transpiler.d.ts.map +1 -0
- package/dist/inference/quint-transpiler.js +433 -0
- package/dist/inference/quint-transpiler.js.map +1 -0
- package/dist/inference/test-harness.d.ts +41 -0
- package/dist/inference/test-harness.d.ts.map +1 -0
- package/dist/inference/test-harness.js +357 -0
- package/dist/inference/test-harness.js.map +1 -0
- package/dist/parser/convention-processor.d.ts +66 -0
- package/dist/parser/convention-processor.d.ts.map +1 -0
- package/dist/parser/convention-processor.js +349 -0
- package/dist/parser/convention-processor.js.map +1 -0
- package/dist/parser/import-resolver/cache.d.ts +56 -0
- package/dist/parser/import-resolver/cache.d.ts.map +1 -0
- package/dist/parser/import-resolver/cache.js +191 -0
- package/dist/parser/import-resolver/cache.js.map +1 -0
- package/dist/parser/import-resolver/index.d.ts +10 -0
- package/dist/parser/import-resolver/index.d.ts.map +1 -0
- package/dist/parser/import-resolver/index.js +9 -0
- package/dist/parser/import-resolver/index.js.map +1 -0
- package/dist/parser/import-resolver/resolver.d.ts +102 -0
- package/dist/parser/import-resolver/resolver.d.ts.map +1 -0
- package/dist/parser/import-resolver/resolver.js +669 -0
- package/dist/parser/import-resolver/resolver.js.map +1 -0
- package/dist/parser/import-resolver/types.d.ts +55 -0
- package/dist/parser/import-resolver/types.d.ts.map +1 -0
- package/dist/parser/import-resolver/types.js +5 -0
- package/dist/parser/import-resolver/types.js.map +1 -0
- package/dist/parser/index.d.ts +38 -0
- package/dist/parser/index.d.ts.map +1 -0
- package/dist/parser/index.js +61 -0
- package/dist/parser/index.js.map +1 -0
- package/dist/parser/namespace-utils.d.ts +61 -0
- package/dist/parser/namespace-utils.d.ts.map +1 -0
- package/dist/parser/namespace-utils.js +191 -0
- package/dist/parser/namespace-utils.js.map +1 -0
- package/dist/parser/processors/AbstractProcessor.d.ts +10 -0
- package/dist/parser/processors/AbstractProcessor.d.ts.map +1 -0
- package/dist/parser/processors/AbstractProcessor.js +11 -0
- package/dist/parser/processors/AbstractProcessor.js.map +1 -0
- package/dist/parser/processors/AttributeProcessor.d.ts +19 -0
- package/dist/parser/processors/AttributeProcessor.d.ts.map +1 -0
- package/dist/parser/processors/AttributeProcessor.js +154 -0
- package/dist/parser/processors/AttributeProcessor.js.map +1 -0
- package/dist/parser/processors/ControllerProcessor.d.ts +9 -0
- package/dist/parser/processors/ControllerProcessor.d.ts.map +1 -0
- package/dist/parser/processors/ControllerProcessor.js +74 -0
- package/dist/parser/processors/ControllerProcessor.js.map +1 -0
- package/dist/parser/processors/DeploymentProcessor.d.ts +19 -0
- package/dist/parser/processors/DeploymentProcessor.d.ts.map +1 -0
- package/dist/parser/processors/DeploymentProcessor.js +244 -0
- package/dist/parser/processors/DeploymentProcessor.js.map +1 -0
- package/dist/parser/processors/EventProcessor.d.ts +8 -0
- package/dist/parser/processors/EventProcessor.d.ts.map +1 -0
- package/dist/parser/processors/EventProcessor.js +28 -0
- package/dist/parser/processors/EventProcessor.js.map +1 -0
- package/dist/parser/processors/ExecutableProcessor.d.ts +21 -0
- package/dist/parser/processors/ExecutableProcessor.d.ts.map +1 -0
- package/dist/parser/processors/ExecutableProcessor.js +135 -0
- package/dist/parser/processors/ExecutableProcessor.js.map +1 -0
- package/dist/parser/processors/LifecycleProcessor.d.ts +9 -0
- package/dist/parser/processors/LifecycleProcessor.d.ts.map +1 -0
- package/dist/parser/processors/LifecycleProcessor.js +41 -0
- package/dist/parser/processors/LifecycleProcessor.js.map +1 -0
- package/dist/parser/processors/ModelProcessor.d.ts +67 -0
- package/dist/parser/processors/ModelProcessor.d.ts.map +1 -0
- package/dist/parser/processors/ModelProcessor.js +495 -0
- package/dist/parser/processors/ModelProcessor.js.map +1 -0
- package/dist/parser/processors/RelationshipProcessor.d.ts +10 -0
- package/dist/parser/processors/RelationshipProcessor.d.ts.map +1 -0
- package/dist/parser/processors/RelationshipProcessor.js +55 -0
- package/dist/parser/processors/RelationshipProcessor.js.map +1 -0
- package/dist/parser/processors/ServiceProcessor.d.ts +9 -0
- package/dist/parser/processors/ServiceProcessor.d.ts.map +1 -0
- package/dist/parser/processors/ServiceProcessor.js +59 -0
- package/dist/parser/processors/ServiceProcessor.js.map +1 -0
- package/dist/parser/processors/ViewProcessor.d.ts +7 -0
- package/dist/parser/processors/ViewProcessor.d.ts.map +1 -0
- package/dist/parser/processors/ViewProcessor.js +66 -0
- package/dist/parser/processors/ViewProcessor.js.map +1 -0
- package/dist/parser/types/ast.d.ts +518 -0
- package/dist/parser/types/ast.d.ts.map +1 -0
- package/dist/parser/types/ast.js +8 -0
- package/dist/parser/types/ast.js.map +1 -0
- package/dist/parser/types/views.d.ts +186 -0
- package/dist/parser/types/views.d.ts.map +1 -0
- package/dist/parser/types/views.js +8 -0
- package/dist/parser/types/views.js.map +1 -0
- package/dist/parser/unified-parser.d.ts +195 -0
- package/dist/parser/unified-parser.d.ts.map +1 -0
- package/dist/parser/unified-parser.js +1180 -0
- package/dist/parser/unified-parser.js.map +1 -0
- package/dist/parser/vitest.config.d.ts +3 -0
- package/dist/parser/vitest.config.d.ts.map +1 -0
- package/dist/parser/vitest.config.js +27 -0
- package/dist/parser/vitest.config.js.map +1 -0
- package/dist/realize/engines/code-generator.d.ts +86 -0
- package/dist/realize/engines/code-generator.d.ts.map +1 -0
- package/dist/realize/engines/code-generator.js +159 -0
- package/dist/realize/engines/code-generator.js.map +1 -0
- package/dist/realize/engines/engine-registry.d.ts +94 -0
- package/dist/realize/engines/engine-registry.d.ts.map +1 -0
- package/dist/realize/engines/engine-registry.js +163 -0
- package/dist/realize/engines/engine-registry.js.map +1 -0
- package/dist/realize/engines/index.d.ts +10 -0
- package/dist/realize/engines/index.d.ts.map +1 -0
- package/dist/realize/engines/index.js +12 -0
- package/dist/realize/engines/index.js.map +1 -0
- package/dist/realize/engines/typescript-engine.d.ts +74 -0
- package/dist/realize/engines/typescript-engine.d.ts.map +1 -0
- package/dist/realize/engines/typescript-engine.js +289 -0
- package/dist/realize/engines/typescript-engine.js.map +1 -0
- package/dist/realize/generators/index.d.ts +11 -0
- package/dist/realize/generators/index.d.ts.map +1 -0
- package/dist/realize/generators/index.js +11 -0
- package/dist/realize/generators/index.js.map +1 -0
- package/dist/realize/index.d.ts +48 -0
- package/dist/realize/index.d.ts.map +1 -0
- package/dist/realize/index.js +529 -0
- package/dist/realize/index.js.map +1 -0
- package/dist/realize/library/index.d.ts +12 -0
- package/dist/realize/library/index.d.ts.map +1 -0
- package/dist/realize/library/index.js +15 -0
- package/dist/realize/library/index.js.map +1 -0
- package/dist/realize/library/library.d.ts +132 -0
- package/dist/realize/library/library.d.ts.map +1 -0
- package/dist/realize/library/library.js +343 -0
- package/dist/realize/library/library.js.map +1 -0
- package/dist/realize/library/loader.d.ts +73 -0
- package/dist/realize/library/loader.d.ts.map +1 -0
- package/dist/realize/library/loader.js +159 -0
- package/dist/realize/library/loader.js.map +1 -0
- package/dist/realize/library/resolver.d.ts +104 -0
- package/dist/realize/library/resolver.d.ts.map +1 -0
- package/dist/realize/library/resolver.js +299 -0
- package/dist/realize/library/resolver.js.map +1 -0
- package/dist/realize/library/validator.d.ts +65 -0
- package/dist/realize/library/validator.d.ts.map +1 -0
- package/dist/realize/library/validator.js +203 -0
- package/dist/realize/library/validator.js.map +1 -0
- package/dist/realize/types/index.d.ts +5 -0
- package/dist/realize/types/index.d.ts.map +1 -0
- package/dist/realize/types/index.js +5 -0
- package/dist/realize/types/index.js.map +1 -0
- package/dist/realize/types/instance-factory.d.ts +7 -0
- package/dist/realize/types/instance-factory.d.ts.map +1 -0
- package/dist/realize/types/instance-factory.js +2 -0
- package/dist/realize/types/instance-factory.js.map +1 -0
- package/dist/realize/types/unified-mappings.d.ts +163 -0
- package/dist/realize/types/unified-mappings.d.ts.map +1 -0
- package/dist/realize/types/unified-mappings.js +110 -0
- package/dist/realize/types/unified-mappings.js.map +1 -0
- package/dist/realize/utils/ai-spec-loader.d.ts +77 -0
- package/dist/realize/utils/ai-spec-loader.d.ts.map +1 -0
- package/dist/realize/utils/ai-spec-loader.js +142 -0
- package/dist/realize/utils/ai-spec-loader.js.map +1 -0
- package/dist/realize/utils/index.d.ts +9 -0
- package/dist/realize/utils/index.d.ts.map +1 -0
- package/dist/realize/utils/index.js +9 -0
- package/dist/realize/utils/index.js.map +1 -0
- package/dist/realize/utils/manifest-loader.d.ts +107 -0
- package/dist/realize/utils/manifest-loader.d.ts.map +1 -0
- package/dist/realize/utils/manifest-loader.js +168 -0
- package/dist/realize/utils/manifest-loader.js.map +1 -0
- package/dist/realize/utils/mapping-migration.d.ts +53 -0
- package/dist/realize/utils/mapping-migration.d.ts.map +1 -0
- package/dist/realize/utils/mapping-migration.js +194 -0
- package/dist/realize/utils/mapping-migration.js.map +1 -0
- package/dist/registry/cache/cache-manager.d.ts +132 -0
- package/dist/registry/cache/cache-manager.d.ts.map +1 -0
- package/dist/registry/cache/cache-manager.js +218 -0
- package/dist/registry/cache/cache-manager.js.map +1 -0
- package/dist/registry/client/registry-client.d.ts +129 -0
- package/dist/registry/client/registry-client.d.ts.map +1 -0
- package/dist/registry/client/registry-client.js +317 -0
- package/dist/registry/client/registry-client.js.map +1 -0
- package/dist/registry/formatters/error-formatter.d.ts +100 -0
- package/dist/registry/formatters/error-formatter.d.ts.map +1 -0
- package/dist/registry/formatters/error-formatter.js +290 -0
- package/dist/registry/formatters/error-formatter.js.map +1 -0
- package/dist/registry/formatters/index.d.ts +8 -0
- package/dist/registry/formatters/index.d.ts.map +1 -0
- package/dist/registry/formatters/index.js +7 -0
- package/dist/registry/formatters/index.js.map +1 -0
- package/dist/registry/index.d.ts +19 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +22 -0
- package/dist/registry/index.js.map +1 -0
- package/dist/registry/offline/offline-handler.d.ts +150 -0
- package/dist/registry/offline/offline-handler.d.ts.map +1 -0
- package/dist/registry/offline/offline-handler.js +290 -0
- package/dist/registry/offline/offline-handler.js.map +1 -0
- package/dist/registry/types/index.d.ts +13 -0
- package/dist/registry/types/index.d.ts.map +1 -0
- package/dist/registry/types/index.js +11 -0
- package/dist/registry/types/index.js.map +1 -0
- package/dist/registry/types/registry.d.ts +220 -0
- package/dist/registry/types/registry.d.ts.map +1 -0
- package/dist/registry/types/registry.js +55 -0
- package/dist/registry/types/registry.js.map +1 -0
- package/dist/registry/types/validation.d.ts +197 -0
- package/dist/registry/types/validation.d.ts.map +1 -0
- package/dist/registry/types/validation.js +140 -0
- package/dist/registry/types/validation.js.map +1 -0
- package/dist/registry/utils/manifest-adapter.d.ts +42 -0
- package/dist/registry/utils/manifest-adapter.d.ts.map +1 -0
- package/dist/registry/utils/manifest-adapter.js +182 -0
- package/dist/registry/utils/manifest-adapter.js.map +1 -0
- package/dist/registry/validators/index.d.ts +12 -0
- package/dist/registry/validators/index.d.ts.map +1 -0
- package/dist/registry/validators/index.js +9 -0
- package/dist/registry/validators/index.js.map +1 -0
- package/dist/registry/validators/installation-validator.d.ts +75 -0
- package/dist/registry/validators/installation-validator.d.ts.map +1 -0
- package/dist/registry/validators/installation-validator.js +142 -0
- package/dist/registry/validators/installation-validator.js.map +1 -0
- package/dist/registry/validators/manifest-validator.d.ts +82 -0
- package/dist/registry/validators/manifest-validator.d.ts.map +1 -0
- package/dist/registry/validators/manifest-validator.js +213 -0
- package/dist/registry/validators/manifest-validator.js.map +1 -0
- package/dist/registry/validators/validator.d.ts +113 -0
- package/dist/registry/validators/validator.d.ts.map +1 -0
- package/dist/registry/validators/validator.js +165 -0
- package/dist/registry/validators/validator.js.map +1 -0
- package/libs/instance-factories/CURVED-INTERFACE.md +278 -0
- package/libs/instance-factories/README.md +73 -0
- package/libs/instance-factories/applications/README.md +51 -0
- package/libs/instance-factories/applications/generic-app.yaml +52 -0
- package/libs/instance-factories/applications/react-app-runtime.yaml +139 -0
- package/libs/instance-factories/applications/react-app.yaml +186 -0
- package/libs/instance-factories/applications/templates/generic/backend-env-generator.ts +31 -0
- package/libs/instance-factories/applications/templates/generic/backend-package-json-generator.ts +84 -0
- package/libs/instance-factories/applications/templates/generic/backend-tsconfig-generator.ts +69 -0
- package/libs/instance-factories/applications/templates/generic/main-generator.ts +308 -0
- package/libs/instance-factories/applications/templates/react/_view-components-source.ts +555 -0
- package/libs/instance-factories/applications/templates/react/api-client-generator.ts +436 -0
- package/libs/instance-factories/applications/templates/react/api-types-generator.ts +153 -0
- package/libs/instance-factories/applications/templates/react/app-tsx-generator.ts +94 -0
- package/libs/instance-factories/applications/templates/react/env-example-generator.ts +24 -0
- package/libs/instance-factories/applications/templates/react/field-helpers-generator.ts +106 -0
- package/libs/instance-factories/applications/templates/react/gitignore-generator.ts +38 -0
- package/libs/instance-factories/applications/templates/react/index-css-generator.ts +14 -0
- package/libs/instance-factories/applications/templates/react/index-html-generator.ts +30 -0
- package/libs/instance-factories/applications/templates/react/main-tsx-generator.ts +34 -0
- package/libs/instance-factories/applications/templates/react/package-json-generator.ts +57 -0
- package/libs/instance-factories/applications/templates/react/pattern-adapter-generator.ts +179 -0
- package/libs/instance-factories/applications/templates/react/react-pattern-adapter.tsx +1347 -0
- package/libs/instance-factories/applications/templates/react/relationship-field-generator.ts +150 -0
- package/libs/instance-factories/applications/templates/react/runtime-app-tsx-generator.ts +90 -0
- package/libs/instance-factories/applications/templates/react/runtime-package-json-generator.ts +61 -0
- package/libs/instance-factories/applications/templates/react/tailwind-adapter-generator.ts +704 -0
- package/libs/instance-factories/applications/templates/react/tailwind-adapter-wrapper-generator.ts +84 -0
- package/libs/instance-factories/applications/templates/react/tsconfig-generator.ts +35 -0
- package/libs/instance-factories/applications/templates/react/use-api-hooks-generator.ts +121 -0
- package/libs/instance-factories/applications/templates/react/view-dashboard-generator.ts +150 -0
- package/libs/instance-factories/applications/templates/react/view-detail-generator.ts +150 -0
- package/libs/instance-factories/applications/templates/react/view-form-generator.ts +362 -0
- package/libs/instance-factories/applications/templates/react/view-list-generator.ts +98 -0
- package/libs/instance-factories/applications/templates/react/view-router-generator.ts +89 -0
- package/libs/instance-factories/applications/templates/react/vite-config-generator.ts +49 -0
- package/libs/instance-factories/archived/fastify-prisma.yaml +104 -0
- package/libs/instance-factories/cli/README.md +43 -0
- package/libs/instance-factories/cli/commander-js.yaml +55 -0
- package/libs/instance-factories/cli/templates/commander/cli-bin-wrapper-generator.ts +20 -0
- package/libs/instance-factories/cli/templates/commander/cli-entry-generator.d.ts +12 -0
- package/libs/instance-factories/cli/templates/commander/cli-entry-generator.d.ts.map +1 -0
- package/libs/instance-factories/cli/templates/commander/cli-entry-generator.js +115 -0
- package/libs/instance-factories/cli/templates/commander/cli-entry-generator.js.map +1 -0
- package/libs/instance-factories/cli/templates/commander/cli-entry-generator.ts +168 -0
- package/libs/instance-factories/cli/templates/commander/command-generator.d.ts +14 -0
- package/libs/instance-factories/cli/templates/commander/command-generator.d.ts.map +1 -0
- package/libs/instance-factories/cli/templates/commander/command-generator.js +182 -0
- package/libs/instance-factories/cli/templates/commander/command-generator.js.map +1 -0
- package/libs/instance-factories/cli/templates/commander/command-generator.ts +1036 -0
- package/libs/instance-factories/communication/README.md +47 -0
- package/libs/instance-factories/communication/event-emitter.yaml +56 -0
- package/libs/instance-factories/communication/rabbitmq-events.yaml +87 -0
- package/libs/instance-factories/communication/templates/eventemitter/bus-generator.ts +93 -0
- package/libs/instance-factories/communication/templates/eventemitter/publisher-generator.ts +117 -0
- package/libs/instance-factories/communication/templates/eventemitter/subscriber-generator.ts +101 -0
- package/libs/instance-factories/controllers/README.md +42 -0
- package/libs/instance-factories/controllers/fastify.yaml +127 -0
- package/libs/instance-factories/controllers/templates/fastify/meta-routes-generator.ts +103 -0
- package/libs/instance-factories/controllers/templates/fastify/routes-generator.ts +389 -0
- package/libs/instance-factories/controllers/templates/fastify/server-generator.ts +76 -0
- package/libs/instance-factories/infrastructure/README.md +29 -0
- package/libs/instance-factories/infrastructure/docker-k8s.yaml +61 -0
- package/libs/instance-factories/infrastructure/templates/docker-k8s/infrastructure-generator.ts +46 -0
- package/libs/instance-factories/orms/README.md +54 -0
- package/libs/instance-factories/orms/prisma.yaml +89 -0
- package/libs/instance-factories/orms/templates/prisma/schema-generator.ts +576 -0
- package/libs/instance-factories/orms/templates/prisma/services-generator.ts +408 -0
- package/libs/instance-factories/scaffolding/README.md +49 -0
- package/libs/instance-factories/scaffolding/generic-scaffold.yaml +65 -0
- package/libs/instance-factories/scaffolding/templates/generic/env-example-generator.ts +73 -0
- package/libs/instance-factories/scaffolding/templates/generic/env-generator.ts +85 -0
- package/libs/instance-factories/scaffolding/templates/generic/gitignore-generator.ts +69 -0
- package/libs/instance-factories/scaffolding/templates/generic/package-json-generator.ts +176 -0
- package/libs/instance-factories/scaffolding/templates/generic/readme-generator.ts +207 -0
- package/libs/instance-factories/scaffolding/templates/generic/tsconfig-generator.ts +78 -0
- package/libs/instance-factories/scaffolding/templates/generic/tsconfig-react-generator.ts +41 -0
- package/libs/instance-factories/sdks/README.md +28 -0
- package/libs/instance-factories/sdks/python-sdk.yaml +66 -0
- package/libs/instance-factories/sdks/templates/python/sdk-generator.ts +50 -0
- package/libs/instance-factories/sdks/templates/typescript/sdk-generator.ts +49 -0
- package/libs/instance-factories/sdks/typescript-sdk.yaml +59 -0
- package/libs/instance-factories/services/README.md +55 -0
- package/libs/instance-factories/services/prisma-services.yaml +71 -0
- package/libs/instance-factories/services/templates/memory/generate-interpreter.ts +25 -0
- package/libs/instance-factories/services/templates/memory/step-conventions-memory.ts +465 -0
- package/libs/instance-factories/services/templates/prisma/behavior-generator.ts +304 -0
- package/libs/instance-factories/services/templates/prisma/controller-generator.ts +532 -0
- package/libs/instance-factories/services/templates/prisma/service-generator.ts +334 -0
- package/libs/instance-factories/services/templates/prisma/step-conventions.ts +309 -0
- package/libs/instance-factories/services/templates/shared-patterns.ts +38 -0
- package/libs/instance-factories/shared/path-resolver.ts +111 -0
- package/libs/instance-factories/storage/README.md +34 -0
- package/libs/instance-factories/storage/mongodb.yaml +79 -0
- package/libs/instance-factories/storage/postgresql.yaml +75 -0
- package/libs/instance-factories/storage/redis.yaml +79 -0
- package/libs/instance-factories/storage/templates/mongodb/config-generator.ts +15 -0
- package/libs/instance-factories/storage/templates/mongodb/docker-generator.ts +18 -0
- package/libs/instance-factories/storage/templates/postgresql/config-generator.ts +54 -0
- package/libs/instance-factories/storage/templates/postgresql/docker-generator.ts +55 -0
- package/libs/instance-factories/storage/templates/redis/config-generator.ts +16 -0
- package/libs/instance-factories/storage/templates/redis/docker-generator.ts +18 -0
- package/libs/instance-factories/test-generation.ts +192 -0
- package/libs/instance-factories/testing/README.md +40 -0
- package/libs/instance-factories/testing/templates/vitest/tests-generator.ts +51 -0
- package/libs/instance-factories/testing/vitest-tests.yaml +63 -0
- package/libs/instance-factories/tools/README.md +70 -0
- package/libs/instance-factories/tools/mcp.yaml +36 -0
- package/libs/instance-factories/tools/templates/mcp/mcp-server-generator.ts +190 -0
- package/libs/instance-factories/tools/templates/mcp/static/docs/DEPLOYMENT_GUIDE.md +630 -0
- package/libs/instance-factories/tools/templates/mcp/static/docs/HYBRID_RESOURCE_SYSTEM.md +330 -0
- package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/EXTENSION_DEPLOYMENT.md +552 -0
- package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/LOCAL_DEPLOYMENT.md +164 -0
- package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/WEB_DEPLOYMENT.md +247 -0
- package/libs/instance-factories/tools/templates/mcp/static/package.json +94 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/build-enterprise.js +284 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/build-extension.js +139 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/build-local.js +74 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/build-web.js +156 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/copy-canonical-files.js +41 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/test-deployments.js +259 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/test-hybrid-resources.js +231 -0
- package/libs/instance-factories/tools/templates/mcp/static/scripts/test-hybrid-simple.js +196 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/controllers/MCPServerController.ts +293 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/events/EventEmitter.ts +90 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/index.ts +24 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/interfaces/ResourceProvider.ts +15 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/models/LibrarySuggestion.ts +106 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/models/SpecVerseResource.ts +75 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/server/mcp-server.ts +239 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/CLIProxyService.ts +1501 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/EmbeddedResourcesAdapter.ts +211 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/EntityModuleService.ts +308 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/HybridResourcesProvider.ts +210 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/LibraryToolsService.ts +356 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/OrchestratorBridge.ts +522 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/OrchestratorToolsService.ts +530 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/PromptToolsService.ts +594 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/services/ResourcesProviderService.ts +170 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/CLIProxyService.init.test.ts +544 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/CLIProxyService.test.ts +189 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/ResourcesProviderService.test.ts +89 -0
- package/libs/instance-factories/tools/templates/mcp/static/src/types/index.ts +110 -0
- package/libs/instance-factories/tools/templates/mcp/static/tsconfig.json +28 -0
- package/libs/instance-factories/tools/templates/vscode/static/extension.ts +1195 -0
- package/libs/instance-factories/tools/templates/vscode/static/language-configuration.json +34 -0
- package/libs/instance-factories/tools/templates/vscode/static/schemas/specverse-v3-schema.json +4279 -0
- package/libs/instance-factories/tools/templates/vscode/static/syntaxes/specverse.tmLanguage.json +138 -0
- package/libs/instance-factories/tools/templates/vscode/static/themes/README.md +74 -0
- package/libs/instance-factories/tools/templates/vscode/static/themes/complete-specverse-colors.json +122 -0
- package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-basic-theme.json +65 -0
- package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-complete-theme.json +123 -0
- package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-theme-colors.json +64 -0
- package/libs/instance-factories/tools/templates/vscode/vscode-extension-generator.ts +300 -0
- package/libs/instance-factories/tools/vscode.yaml +35 -0
- package/libs/instance-factories/validation/README.md +38 -0
- package/libs/instance-factories/validation/templates/zod/validation-generator.ts +46 -0
- package/libs/instance-factories/validation/zod.yaml +56 -0
- package/libs/instance-factories/views/README.md +62 -0
- package/libs/instance-factories/views/index.d.ts +13 -0
- package/libs/instance-factories/views/index.d.ts.map +1 -0
- package/libs/instance-factories/views/index.js +18 -0
- package/libs/instance-factories/views/index.js.map +1 -0
- package/libs/instance-factories/views/index.ts +45 -0
- package/libs/instance-factories/views/react-components.yaml +129 -0
- package/libs/instance-factories/views/templates/ARCHITECTURE.md +198 -0
- package/libs/instance-factories/views/templates/react/adapters/antd-adapter.ts +869 -0
- package/libs/instance-factories/views/templates/react/adapters/mui-adapter.ts +953 -0
- package/libs/instance-factories/views/templates/react/adapters/shadcn-adapter.ts +806 -0
- package/libs/instance-factories/views/templates/react/app-generator.ts +55 -0
- package/libs/instance-factories/views/templates/react/components-generator.ts +887 -0
- package/libs/instance-factories/views/templates/react/forms-generator.ts +343 -0
- package/libs/instance-factories/views/templates/react/frontend-package-json-generator.ts +57 -0
- package/libs/instance-factories/views/templates/react/hooks-generator.ts +122 -0
- package/libs/instance-factories/views/templates/react/index-css-generator.ts +14 -0
- package/libs/instance-factories/views/templates/react/index-html-generator.ts +34 -0
- package/libs/instance-factories/views/templates/react/main-tsx-generator.ts +29 -0
- package/libs/instance-factories/views/templates/react/react-component-generator.d.ts +152 -0
- package/libs/instance-factories/views/templates/react/react-component-generator.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/react/react-component-generator.js +398 -0
- package/libs/instance-factories/views/templates/react/react-component-generator.js.map +1 -0
- package/libs/instance-factories/views/templates/react/react-component-generator.ts +533 -0
- package/libs/instance-factories/views/templates/react/router-generator.ts +197 -0
- package/libs/instance-factories/views/templates/react/router-generic-generator.ts +132 -0
- package/libs/instance-factories/views/templates/react/shared-utils-generator.ts +188 -0
- package/libs/instance-factories/views/templates/react/spec-json-generator.ts +17 -0
- package/libs/instance-factories/views/templates/react/types-generator.ts +76 -0
- package/libs/instance-factories/views/templates/react/views-metadata-generator.ts +42 -0
- package/libs/instance-factories/views/templates/react/vite-config-generator.ts +38 -0
- package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.js.map +1 -0
- package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.ts +474 -0
- package/libs/instance-factories/views/templates/shared/__tests__/composite-patterns.test.ts +242 -0
- package/libs/instance-factories/views/templates/shared/adapter-types.d.ts +77 -0
- package/libs/instance-factories/views/templates/shared/adapter-types.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/shared/adapter-types.js +47 -0
- package/libs/instance-factories/views/templates/shared/adapter-types.js.map +1 -0
- package/libs/instance-factories/views/templates/shared/adapter-types.ts +142 -0
- package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts +63 -0
- package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/shared/atomic-components-registry.js +822 -0
- package/libs/instance-factories/views/templates/shared/atomic-components-registry.js.map +1 -0
- package/libs/instance-factories/views/templates/shared/atomic-components-registry.ts +908 -0
- package/libs/instance-factories/views/templates/shared/base-generator.d.ts +247 -0
- package/libs/instance-factories/views/templates/shared/base-generator.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/shared/base-generator.js +363 -0
- package/libs/instance-factories/views/templates/shared/base-generator.js.map +1 -0
- package/libs/instance-factories/views/templates/shared/base-generator.ts +608 -0
- package/libs/instance-factories/views/templates/shared/component-metadata.d.ts +254 -0
- package/libs/instance-factories/views/templates/shared/component-metadata.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/shared/component-metadata.js +602 -0
- package/libs/instance-factories/views/templates/shared/component-metadata.js.map +1 -0
- package/libs/instance-factories/views/templates/shared/component-metadata.ts +803 -0
- package/libs/instance-factories/views/templates/shared/composite-pattern-types.ts +250 -0
- package/libs/instance-factories/views/templates/shared/composite-patterns.ts +535 -0
- package/libs/instance-factories/views/templates/shared/index.ts +68 -0
- package/libs/instance-factories/views/templates/shared/pattern-validator.ts +279 -0
- package/libs/instance-factories/views/templates/shared/property-mapper.d.ts +149 -0
- package/libs/instance-factories/views/templates/shared/property-mapper.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/shared/property-mapper.js +580 -0
- package/libs/instance-factories/views/templates/shared/property-mapper.js.map +1 -0
- package/libs/instance-factories/views/templates/shared/property-mapper.ts +700 -0
- package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts +143 -0
- package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts.map +1 -0
- package/libs/instance-factories/views/templates/shared/syntax-mapper.js +420 -0
- package/libs/instance-factories/views/templates/shared/syntax-mapper.js.map +1 -0
- package/libs/instance-factories/views/templates/shared/syntax-mapper.ts +539 -0
- package/package.json +63 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
# SpecVerse Core Prompts v3.0
|
|
2
|
+
|
|
3
|
+
## Three-Layer Architecture
|
|
4
|
+
|
|
5
|
+
Version 3.0 introduces a fundamental architectural improvement: **complete separation of concerns through three distinct specification layers**. This addresses the critical gap identified in v2 where implementation details were conflated with logical architecture.
|
|
6
|
+
|
|
7
|
+
### The Three Layers
|
|
8
|
+
|
|
9
|
+
#### 1. Component Specification (WHAT)
|
|
10
|
+
**File**: `.specly`
|
|
11
|
+
**Purpose**: Defines the logical architecture - what the system does
|
|
12
|
+
**Contains**:
|
|
13
|
+
- Models with attributes and relationships
|
|
14
|
+
- Supports array types: `String[]`, `Integer[]`, `Boolean[]` etc.
|
|
15
|
+
- Controllers with CURED operations
|
|
16
|
+
- Services with business operations
|
|
17
|
+
- Behaviors with **detailed algorithmic steps**
|
|
18
|
+
- Events and their payloads
|
|
19
|
+
- Views and UI structure
|
|
20
|
+
|
|
21
|
+
#### 2. Manifest Specification (HOW)
|
|
22
|
+
**File**: `.yaml`
|
|
23
|
+
**Purpose**: Defines implementation details - how to build the system
|
|
24
|
+
**Contains**:
|
|
25
|
+
- Technology stack selections
|
|
26
|
+
- Database schema mappings
|
|
27
|
+
- API patterns and formats
|
|
28
|
+
- File structure and organization
|
|
29
|
+
- Implementation-specific algorithms (SQL queries, etc.)
|
|
30
|
+
- Error handling patterns
|
|
31
|
+
- External service integrations
|
|
32
|
+
|
|
33
|
+
#### 3. Deployment Specification (WHERE)
|
|
34
|
+
**File**: `.specly` (deployments section)
|
|
35
|
+
**Purpose**: Defines runtime topology - where and how the system runs
|
|
36
|
+
**Contains**:
|
|
37
|
+
- Runtime instances configuration
|
|
38
|
+
- Environment-specific settings
|
|
39
|
+
- Scaling parameters
|
|
40
|
+
- Infrastructure components
|
|
41
|
+
- Monitoring and logging setup
|
|
42
|
+
|
|
43
|
+
## Prompt Improvements in v3
|
|
44
|
+
|
|
45
|
+
### Key Innovation: Behavior Steps as Implementation Guide
|
|
46
|
+
|
|
47
|
+
The most significant improvement in v3 is the use of **behavior steps** as a bridge between logical design and technical implementation:
|
|
48
|
+
|
|
49
|
+
```yaml
|
|
50
|
+
# In Component Spec (WHAT):
|
|
51
|
+
behaviors:
|
|
52
|
+
checkBookingConflict:
|
|
53
|
+
steps:
|
|
54
|
+
- "Query bookings for same room"
|
|
55
|
+
- "Check if new.check_in < existing.check_out"
|
|
56
|
+
- "Check if new.check_out > existing.check_in"
|
|
57
|
+
- "Return true if both conditions match"
|
|
58
|
+
|
|
59
|
+
# In Manifest (HOW):
|
|
60
|
+
business_logic_implementation:
|
|
61
|
+
booking_conflict_detection:
|
|
62
|
+
sql: "SELECT * FROM bookings WHERE room_id = $1 AND check_in < $3 AND check_out > $2"
|
|
63
|
+
|
|
64
|
+
# In Generated Code:
|
|
65
|
+
async function checkBookingConflict(roomId, checkIn, checkOut) {
|
|
66
|
+
// Step 1: Query bookings for same room
|
|
67
|
+
const result = await db.query(
|
|
68
|
+
// Step 2 & 3: Check if dates overlap (from manifest SQL)
|
|
69
|
+
'SELECT * FROM bookings WHERE room_id = $1 AND check_in < $3 AND check_out > $2',
|
|
70
|
+
[roomId, checkIn, checkOut]
|
|
71
|
+
);
|
|
72
|
+
|
|
73
|
+
// Step 4: Return true if both conditions match
|
|
74
|
+
return result.rows.length > 0;
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Prompt Usage Guide
|
|
79
|
+
|
|
80
|
+
### 1. `analyse.prompt.yaml` - Extract from Existing Code
|
|
81
|
+
|
|
82
|
+
**Purpose**: Reverse-engineer existing applications into three-layer specifications
|
|
83
|
+
|
|
84
|
+
**Workflow**:
|
|
85
|
+
```
|
|
86
|
+
Existing Code → analyse → Component + Manifest + Deployment Specs
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
**Key Features**:
|
|
90
|
+
- Extracts actual algorithms into behavior steps
|
|
91
|
+
- Captures SQL queries and technical patterns in manifest
|
|
92
|
+
- Preserves existing technology choices
|
|
93
|
+
- Documents actual implementation details
|
|
94
|
+
|
|
95
|
+
### 2. `create.prompt.yaml` - Generate from Requirements
|
|
96
|
+
|
|
97
|
+
**Purpose**: Create new specifications from natural language requirements
|
|
98
|
+
|
|
99
|
+
**Workflow**:
|
|
100
|
+
```
|
|
101
|
+
Requirements → create → Component + Manifest + Deployment Specs
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**Key Features**:
|
|
105
|
+
- Generates detailed behavior steps for business logic
|
|
106
|
+
- Recommends appropriate technology stack in manifest
|
|
107
|
+
- Scales architecture to requirements (personal/business/enterprise)
|
|
108
|
+
- Includes implementation guidance
|
|
109
|
+
|
|
110
|
+
### 3. `materialise.prompt.yaml` - Clean Implementation from Extracted Specs
|
|
111
|
+
|
|
112
|
+
**Purpose**: Generate fresh implementation from extracted specs for comparison
|
|
113
|
+
|
|
114
|
+
**Workflow**:
|
|
115
|
+
```
|
|
116
|
+
Extracted Specs → materialise → Clean Implementation + Comparison Report
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**Key Features**:
|
|
120
|
+
- Uses behavior steps as implementation blueprint
|
|
121
|
+
- Follows manifest patterns exactly
|
|
122
|
+
- Generates comparison report with original
|
|
123
|
+
- Identifies technical debt and improvements
|
|
124
|
+
|
|
125
|
+
### 4. `realize.prompt.yaml` - Full Implementation from Created Specs
|
|
126
|
+
|
|
127
|
+
**Purpose**: Generate complete application from created specifications
|
|
128
|
+
|
|
129
|
+
**Workflow**:
|
|
130
|
+
```
|
|
131
|
+
Created Specs → realize → Complete Application + Documentation
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Key Features**:
|
|
135
|
+
- Generates manifest if not provided
|
|
136
|
+
- Transforms behavior steps into commented code
|
|
137
|
+
- Creates full application scaffolding
|
|
138
|
+
- Includes tests based on behavior specs
|
|
139
|
+
|
|
140
|
+
## Migration from v2
|
|
141
|
+
|
|
142
|
+
### For Existing v2 Users
|
|
143
|
+
|
|
144
|
+
The main changes when migrating from v2 to v3:
|
|
145
|
+
|
|
146
|
+
1. **Behavior Steps are Required**: All behaviors, operations, and actions must include detailed `steps` arrays
|
|
147
|
+
2. **Manifest is Mandatory**: Technical details must be in a separate manifest, not mixed with components
|
|
148
|
+
3. **Clear Layer Separation**: Keep logical, technical, and operational concerns strictly separated
|
|
149
|
+
|
|
150
|
+
### Breaking Changes
|
|
151
|
+
|
|
152
|
+
- Component specs no longer contain technical implementation details
|
|
153
|
+
- Manifests are now required (not optional)
|
|
154
|
+
- Behavior steps must be detailed algorithms, not high-level descriptions
|
|
155
|
+
|
|
156
|
+
## Examples
|
|
157
|
+
|
|
158
|
+
### Complete Three-Layer Specification
|
|
159
|
+
|
|
160
|
+
```yaml
|
|
161
|
+
# component.specly
|
|
162
|
+
components:
|
|
163
|
+
MySystem:
|
|
164
|
+
models:
|
|
165
|
+
User:
|
|
166
|
+
attributes:
|
|
167
|
+
email: Email required unique
|
|
168
|
+
roles: String[] optional
|
|
169
|
+
tags: String[] optional
|
|
170
|
+
behaviors:
|
|
171
|
+
authenticate:
|
|
172
|
+
steps:
|
|
173
|
+
- "Hash provided password"
|
|
174
|
+
- "Query user by email"
|
|
175
|
+
- "Compare hashed passwords"
|
|
176
|
+
- "Generate JWT if match"
|
|
177
|
+
- "Return token or error"
|
|
178
|
+
|
|
179
|
+
# manifest.yaml
|
|
180
|
+
manifest:
|
|
181
|
+
technology_stack:
|
|
182
|
+
backend:
|
|
183
|
+
framework: "Express"
|
|
184
|
+
auth: "JWT with bcrypt"
|
|
185
|
+
|
|
186
|
+
business_logic_implementation:
|
|
187
|
+
password_hashing:
|
|
188
|
+
algorithm: "bcrypt"
|
|
189
|
+
rounds: 10
|
|
190
|
+
token_generation:
|
|
191
|
+
secret: "from environment"
|
|
192
|
+
expiry: "24h"
|
|
193
|
+
|
|
194
|
+
# deployment in component.specly
|
|
195
|
+
deployments:
|
|
196
|
+
production:
|
|
197
|
+
instances:
|
|
198
|
+
controllers:
|
|
199
|
+
apiServer:
|
|
200
|
+
component: "MySystem"
|
|
201
|
+
scale: 3
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
## Best Practices
|
|
205
|
+
|
|
206
|
+
### 1. Writing Behavior Steps
|
|
207
|
+
|
|
208
|
+
**Good**:
|
|
209
|
+
```yaml
|
|
210
|
+
steps:
|
|
211
|
+
- "Query database for user with email"
|
|
212
|
+
- "If user not found, return error 404"
|
|
213
|
+
- "Compare provided password with stored hash"
|
|
214
|
+
- "If passwords don't match, return error 401"
|
|
215
|
+
- "Generate JWT with user ID and roles"
|
|
216
|
+
- "Return token with 200 status"
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
**Bad**:
|
|
220
|
+
```yaml
|
|
221
|
+
steps:
|
|
222
|
+
- "Authenticate user"
|
|
223
|
+
- "Return result"
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### 2. Manifest Completeness
|
|
227
|
+
|
|
228
|
+
Always include in manifests:
|
|
229
|
+
- Complete technology stack
|
|
230
|
+
- Database schema mappings
|
|
231
|
+
- API response formats
|
|
232
|
+
- Error handling patterns
|
|
233
|
+
- File structure organization
|
|
234
|
+
- Environment configurations
|
|
235
|
+
|
|
236
|
+
### 3. Layer Separation
|
|
237
|
+
|
|
238
|
+
**Component**: Business logic only (no SQL, no framework specifics)
|
|
239
|
+
**Manifest**: All technical details (SQL, frameworks, libraries)
|
|
240
|
+
**Deployment**: Runtime only (scaling, monitoring, infrastructure)
|
|
241
|
+
|
|
242
|
+
## Validation
|
|
243
|
+
|
|
244
|
+
All v3 prompts include validation to ensure:
|
|
245
|
+
|
|
246
|
+
1. **Component specs** validate against SpecVerse v3.1 schema
|
|
247
|
+
2. **Manifests** include all required sections
|
|
248
|
+
3. **Behavior steps** are detailed and actionable
|
|
249
|
+
4. **Generated code** traces back to specification steps
|
|
250
|
+
|
|
251
|
+
## Performance Considerations
|
|
252
|
+
|
|
253
|
+
v3 prompts are configured for:
|
|
254
|
+
- **Higher token limits** (12000-15000) to handle three layers
|
|
255
|
+
- **Lower temperature** (0.2-0.4) for consistent generation
|
|
256
|
+
- **Structured outputs** for reliable parsing
|
|
257
|
+
|
|
258
|
+
## Future Roadmap
|
|
259
|
+
|
|
260
|
+
Planned improvements for v3.x:
|
|
261
|
+
- Automated manifest library management
|
|
262
|
+
- Behavior step validation and linting
|
|
263
|
+
- Cross-layer consistency checking
|
|
264
|
+
- Test generation from behavior specs
|
|
265
|
+
- Migration path automation from v2
|
|
266
|
+
|
|
267
|
+
## Support
|
|
268
|
+
|
|
269
|
+
For issues or questions about v3 prompts:
|
|
270
|
+
- Review examples in each prompt file
|
|
271
|
+
- Check validation errors carefully
|
|
272
|
+
- Ensure proper layer separation
|
|
273
|
+
- Verify behavior steps are detailed
|
|
274
|
+
|
|
275
|
+
## Version History
|
|
276
|
+
|
|
277
|
+
- **v3.0.0** (2024-01-XX): Three-layer architecture, behavior steps as code
|
|
278
|
+
- **v2.0.0** (2024-01-01): Consolidated prompts, reference-based
|
|
279
|
+
- **v1.0.0** (2023-12-01): Initial prompt structure
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
name: analyse
|
|
2
|
+
version: "3.0.0"
|
|
3
|
+
description: Extract complete SpecVerse specifications from existing application code with three-layer architecture
|
|
4
|
+
author: SpecVerse Team
|
|
5
|
+
tags: [analysis, extraction, reverse-engineering, v3, three-layer]
|
|
6
|
+
|
|
7
|
+
system:
|
|
8
|
+
role: |
|
|
9
|
+
You are a SpecVerse specification extractor that analyzes existing applications.
|
|
10
|
+
You extract THREE distinct layers following SpecVerse v3.1 architecture:
|
|
11
|
+
1. COMPONENT SPEC (.specly): Logical architecture - WHAT the system does
|
|
12
|
+
2. MANIFEST SPEC (.yaml): Implementation details - HOW it's built
|
|
13
|
+
3. DEPLOYMENT SPEC (in .specly): Runtime topology - WHERE it runs
|
|
14
|
+
|
|
15
|
+
You preserve actual implementation logic with precise detail at each layer.
|
|
16
|
+
|
|
17
|
+
context: |
|
|
18
|
+
THREE-LAYER EXTRACTION PRINCIPLE:
|
|
19
|
+
|
|
20
|
+
COMPONENT LAYER (Logical - WHAT):
|
|
21
|
+
- Models with attributes and relationships
|
|
22
|
+
- Controllers with CURED operations
|
|
23
|
+
- Services with business operations
|
|
24
|
+
- Behaviors with detailed steps (algorithms in plain language)
|
|
25
|
+
- Events and their payloads
|
|
26
|
+
- Views and their structure
|
|
27
|
+
- Array syntax supported: String[], Integer[], Boolean[] etc.
|
|
28
|
+
|
|
29
|
+
MANIFEST LAYER (Technical - HOW):
|
|
30
|
+
- Technology stack and frameworks
|
|
31
|
+
- Database schemas and migrations
|
|
32
|
+
- API patterns and formats
|
|
33
|
+
- Code mappings and file structures
|
|
34
|
+
- Implementation-specific algorithms
|
|
35
|
+
- Error handling patterns
|
|
36
|
+
- External integrations
|
|
37
|
+
|
|
38
|
+
DEPLOYMENT LAYER (Operational - WHERE):
|
|
39
|
+
- Runtime instances and configuration
|
|
40
|
+
- Infrastructure components
|
|
41
|
+
- Scaling and performance settings
|
|
42
|
+
- Environment-specific settings
|
|
43
|
+
|
|
44
|
+
Extract what EXISTS, not what SHOULD BE.
|
|
45
|
+
Use detailed behavior steps to capture business logic.
|
|
46
|
+
Document actual technical patterns in manifests.
|
|
47
|
+
|
|
48
|
+
capabilities:
|
|
49
|
+
- Detect multiple programming languages and frameworks
|
|
50
|
+
- Extract data models with precise attributes and relationships
|
|
51
|
+
- Map API endpoints to controller patterns
|
|
52
|
+
- Identify deployment configurations and infrastructure
|
|
53
|
+
- Apply SpecVerse convention syntax accurately
|
|
54
|
+
- DEEP EXTRACTION:
|
|
55
|
+
- Analyze function bodies for algorithm steps
|
|
56
|
+
- Extract SQL queries and database operations
|
|
57
|
+
- Capture validation rules and patterns
|
|
58
|
+
- Document state transitions completely
|
|
59
|
+
- Extract configuration and constants
|
|
60
|
+
- Identify error handling patterns
|
|
61
|
+
|
|
62
|
+
constraints:
|
|
63
|
+
- Extract actual implementation only
|
|
64
|
+
- Preserve existing naming conventions
|
|
65
|
+
- Maintain implemented relationship cardinality
|
|
66
|
+
- Generate valid v3.1 specifications using reference patterns
|
|
67
|
+
- Keep clear separation between three layers
|
|
68
|
+
- Use behavior steps for logic documentation
|
|
69
|
+
- Place technical details in manifests only
|
|
70
|
+
|
|
71
|
+
user:
|
|
72
|
+
template: |
|
|
73
|
+
Analyze this application codebase and extract complete SpecVerse specifications:
|
|
74
|
+
|
|
75
|
+
Application Path: {{applicationPath}}
|
|
76
|
+
Framework: {{frameworkType}}
|
|
77
|
+
|
|
78
|
+
Directory Structure:
|
|
79
|
+
{{directoryStructure}}
|
|
80
|
+
|
|
81
|
+
Key Files:
|
|
82
|
+
{{filesContent}}
|
|
83
|
+
|
|
84
|
+
Extract THREE specification layers:
|
|
85
|
+
|
|
86
|
+
1. COMPONENT SPECIFICATION:
|
|
87
|
+
- Models, Controllers, Services, Views, Events
|
|
88
|
+
- Use behavior 'steps' to document algorithms
|
|
89
|
+
- Keep it logical, not technical
|
|
90
|
+
|
|
91
|
+
2. MANIFEST SPECIFICATION:
|
|
92
|
+
- Technology mappings
|
|
93
|
+
- Database schemas
|
|
94
|
+
- API formats and patterns
|
|
95
|
+
- Implementation details
|
|
96
|
+
- Code-to-spec mappings
|
|
97
|
+
|
|
98
|
+
3. DEPLOYMENT SPECIFICATION:
|
|
99
|
+
- Runtime instances
|
|
100
|
+
- Environment configurations
|
|
101
|
+
- Infrastructure components
|
|
102
|
+
|
|
103
|
+
IMPORTANT: Extract actual algorithms into behavior steps, not just "validates X".
|
|
104
|
+
Example: Instead of "validates conflicts", extract:
|
|
105
|
+
steps:
|
|
106
|
+
- "Query bookings WHERE room_id = target"
|
|
107
|
+
- "Check if new.check_in < existing.check_out"
|
|
108
|
+
- "Check if new.check_out > existing.check_in"
|
|
109
|
+
- "Return true if both conditions match"
|
|
110
|
+
|
|
111
|
+
variables:
|
|
112
|
+
- name: applicationPath
|
|
113
|
+
type: string
|
|
114
|
+
required: true
|
|
115
|
+
description: Path to application being analyzed
|
|
116
|
+
|
|
117
|
+
- name: frameworkType
|
|
118
|
+
type: string
|
|
119
|
+
required: false
|
|
120
|
+
default: "auto-detect"
|
|
121
|
+
description: Framework type or auto-detect
|
|
122
|
+
|
|
123
|
+
- name: directoryStructure
|
|
124
|
+
type: string
|
|
125
|
+
required: true
|
|
126
|
+
description: Application directory tree
|
|
127
|
+
|
|
128
|
+
- name: filesContent
|
|
129
|
+
type: string
|
|
130
|
+
required: true
|
|
131
|
+
description: Key application file contents
|
|
132
|
+
|
|
133
|
+
context:
|
|
134
|
+
includes:
|
|
135
|
+
- resource: schema/SPECVERSE-COMPLETE-GUIDE.md
|
|
136
|
+
section: "Deployment Patterns,Structure Reference,Best Practices"
|
|
137
|
+
- resource: schema/MINIMAL-SYNTAX-REFERENCE.specly
|
|
138
|
+
description: "Syntax patterns for extraction"
|
|
139
|
+
- resource: schema/SPECVERSE-V3.1-SCHEMA-AI.yaml
|
|
140
|
+
section: "instance types,deployment examples"
|
|
141
|
+
max_tokens: 12000
|
|
142
|
+
temperature: 0.2
|
|
143
|
+
top_p: 0.95
|
|
144
|
+
|
|
145
|
+
validation:
|
|
146
|
+
input:
|
|
147
|
+
- rule: Application path must be provided
|
|
148
|
+
required: true
|
|
149
|
+
- rule: Directory structure required
|
|
150
|
+
required: true
|
|
151
|
+
- rule: At least one source file must be included
|
|
152
|
+
required: true
|
|
153
|
+
|
|
154
|
+
output:
|
|
155
|
+
- rule: Must generate valid component specification
|
|
156
|
+
validator: schema/SPECVERSE-SCHEMA.json
|
|
157
|
+
- rule: Must include deployment specification if config exists
|
|
158
|
+
format: yaml
|
|
159
|
+
- rule: Must generate complete implementation manifest
|
|
160
|
+
format: yaml
|
|
161
|
+
required_sections:
|
|
162
|
+
- technology_stack
|
|
163
|
+
- implementation_patterns
|
|
164
|
+
- business_logic_implementation
|
|
165
|
+
- data_mappings
|
|
166
|
+
|
|
167
|
+
examples:
|
|
168
|
+
- name: Next.js Guesthouse Analysis
|
|
169
|
+
input:
|
|
170
|
+
applicationPath: /apps/guesthouse
|
|
171
|
+
frameworkType: nextjs
|
|
172
|
+
directoryStructure: |
|
|
173
|
+
guesthouse/
|
|
174
|
+
├── app/api/bookings/route.ts
|
|
175
|
+
├── app/api/rooms/route.ts
|
|
176
|
+
├── lib/db.ts
|
|
177
|
+
├── schema.sql
|
|
178
|
+
└── package.json
|
|
179
|
+
filesContent: |
|
|
180
|
+
=== schema.sql ===
|
|
181
|
+
CREATE TABLE bookings (
|
|
182
|
+
id SERIAL PRIMARY KEY,
|
|
183
|
+
room_id INTEGER REFERENCES rooms(id),
|
|
184
|
+
guest_name VARCHAR(255) NOT NULL,
|
|
185
|
+
check_in DATE NOT NULL,
|
|
186
|
+
check_out DATE NOT NULL
|
|
187
|
+
);
|
|
188
|
+
|
|
189
|
+
=== lib/db.ts ===
|
|
190
|
+
export async function checkConflicts(roomId, checkIn, checkOut) {
|
|
191
|
+
const result = await query(
|
|
192
|
+
'SELECT * FROM bookings WHERE room_id = $1 AND check_in < $3 AND check_out > $2',
|
|
193
|
+
[roomId, checkIn, checkOut]
|
|
194
|
+
);
|
|
195
|
+
return result.rows.length > 0;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
output: |
|
|
199
|
+
--- # component.specly
|
|
200
|
+
components:
|
|
201
|
+
GuesthouseSystem:
|
|
202
|
+
version: "3.1.0"
|
|
203
|
+
models:
|
|
204
|
+
Booking:
|
|
205
|
+
attributes:
|
|
206
|
+
id: Integer required unique auto=serial
|
|
207
|
+
room_id: Integer required
|
|
208
|
+
guest_name: String required
|
|
209
|
+
check_in: Date required
|
|
210
|
+
check_out: Date required
|
|
211
|
+
tags: String[] optional
|
|
212
|
+
amenities: String[] optional
|
|
213
|
+
relationships:
|
|
214
|
+
room: belongsTo Room
|
|
215
|
+
behaviors:
|
|
216
|
+
checkConflicts:
|
|
217
|
+
description: "Check for booking overlaps"
|
|
218
|
+
parameters:
|
|
219
|
+
roomId: Integer required
|
|
220
|
+
checkIn: Date required
|
|
221
|
+
checkOut: Date required
|
|
222
|
+
returns: Boolean
|
|
223
|
+
steps:
|
|
224
|
+
- "Query database for bookings with same room_id"
|
|
225
|
+
- "Filter WHERE check_in < new_checkout"
|
|
226
|
+
- "AND check_out > new_checkin"
|
|
227
|
+
- "If any records found, conflict exists"
|
|
228
|
+
- "Return true if conflicts, false otherwise"
|
|
229
|
+
|
|
230
|
+
--- # manifest.yaml
|
|
231
|
+
manifest:
|
|
232
|
+
name: "GuesthouseSystem-NextJS-Implementation"
|
|
233
|
+
version: "1.0.0"
|
|
234
|
+
|
|
235
|
+
technology_stack:
|
|
236
|
+
backend:
|
|
237
|
+
framework: "Next.js 14"
|
|
238
|
+
api: "App Router API routes"
|
|
239
|
+
database: "PostgreSQL"
|
|
240
|
+
orm: "none (raw SQL)"
|
|
241
|
+
|
|
242
|
+
implementation_patterns:
|
|
243
|
+
api_routes:
|
|
244
|
+
location: "app/api/[resource]/route.ts"
|
|
245
|
+
methods: ["GET", "POST", "PUT", "DELETE"]
|
|
246
|
+
request_parsing: "await request.json()"
|
|
247
|
+
response_format: "NextResponse.json(data)"
|
|
248
|
+
|
|
249
|
+
database:
|
|
250
|
+
connection: "pg Pool"
|
|
251
|
+
query_method: "parameterized SQL"
|
|
252
|
+
transaction_support: false
|
|
253
|
+
|
|
254
|
+
business_logic_implementation:
|
|
255
|
+
booking_conflict_detection:
|
|
256
|
+
function: "checkConflicts"
|
|
257
|
+
location: "lib/db.ts"
|
|
258
|
+
sql_query: |
|
|
259
|
+
SELECT * FROM bookings
|
|
260
|
+
WHERE room_id = $1
|
|
261
|
+
AND check_in < $3
|
|
262
|
+
AND check_out > $2
|
|
263
|
+
parameters_order: ["roomId", "checkIn", "checkOut"]
|
|
264
|
+
returns: "boolean (rows.length > 0)"
|
|
265
|
+
timezone_handling: "DATE type, no timezone"
|
|
266
|
+
|
|
267
|
+
data_mappings:
|
|
268
|
+
models_to_tables:
|
|
269
|
+
Booking:
|
|
270
|
+
table: "bookings"
|
|
271
|
+
columns:
|
|
272
|
+
id: "SERIAL PRIMARY KEY"
|
|
273
|
+
room_id: "INTEGER REFERENCES rooms(id)"
|
|
274
|
+
guest_name: "VARCHAR(255) NOT NULL"
|
|
275
|
+
check_in: "DATE NOT NULL"
|
|
276
|
+
check_out: "DATE NOT NULL"
|
|
277
|
+
indexes:
|
|
278
|
+
- "rooms(house_id)"
|
|
279
|
+
- "bookings(room_id)"
|
|
280
|
+
- "bookings(check_in, check_out)"
|
|
281
|
+
|
|
282
|
+
--- # deployment section in component.specly
|
|
283
|
+
deployments:
|
|
284
|
+
production:
|
|
285
|
+
version: "3.1.0"
|
|
286
|
+
environment: production
|
|
287
|
+
instances:
|
|
288
|
+
controllers:
|
|
289
|
+
apiServer:
|
|
290
|
+
component: "GuesthouseSystem"
|
|
291
|
+
advertises: "api.*"
|
|
292
|
+
scale: 1
|
|
293
|
+
storage:
|
|
294
|
+
mainDb:
|
|
295
|
+
component: "GuesthouseSystem"
|
|
296
|
+
type: "relational"
|
|
297
|
+
provider: "postgresql"
|
|
298
|
+
persistence: "durable"
|
|
299
|
+
|
|
300
|
+
metadata:
|
|
301
|
+
created: "2024-01-01T00:00:00Z"
|
|
302
|
+
updated: "2024-01-01T00:00:00Z"
|
|
303
|
+
improvements_v3:
|
|
304
|
+
- "Three-layer architecture: Component, Manifest, Deployment"
|
|
305
|
+
- "Detailed behavior steps for algorithm documentation"
|
|
306
|
+
- "Complete manifest with technical implementation details"
|
|
307
|
+
- "Clear separation of logical vs technical concerns"
|
|
308
|
+
- "SQL queries and database mappings captured"
|
|
309
|
+
- "API patterns and response formats documented"
|