@devtrack-solution/codesdd 1.2.2 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.sdd/skills/curated/api-clean-flask-langgraph/SKILL.md +17 -17
- package/.sdd/skills/curated/devtrack-api/SKILL.md +160 -28
- package/.sdd/skills/curated/devtrack-api/agents/openai.yaml +1 -1
- package/.sdd/skills/curated/devtrack-api/references/architecture-governance.md +8 -7
- package/.sdd/skills/curated/devtrack-api/references/consumer-sync-policy.md +93 -0
- package/.sdd/skills/curated/devtrack-api/references/contract-pack.yaml +317 -0
- package/.sdd/skills/curated/devtrack-api/references/field-validation-protocol.md +95 -0
- package/.sdd/skills/curated/devtrack-api/references/foundation-layout.md +295 -0
- package/.sdd/skills/curated/devtrack-api/references/implementation-checklist.md +4 -4
- package/.sdd/skills/curated/devtrack-api/references/imports-lint.md +4 -0
- package/.sdd/skills/curated/devtrack-api/references/testing-validation.md +2 -2
- package/LICENSE +1 -1
- package/README.md +243 -51
- package/bin/codesdd.js +3 -2
- package/dist/cli/index.d.ts +2 -2
- package/dist/cli/index.js +11 -558
- package/dist/cli/program.d.ts +14 -0
- package/dist/cli/program.js +645 -0
- package/dist/commands/change.js +5 -5
- package/dist/commands/completion.d.ts +1 -1
- package/dist/commands/completion.js +9 -2
- package/dist/commands/config.js +159 -20
- package/dist/commands/feedback.js +1 -1
- package/dist/commands/schema.d.ts +63 -0
- package/dist/commands/schema.js +12 -12
- package/dist/commands/sdd/backlog.d.ts +3 -0
- package/dist/commands/sdd/backlog.js +54 -0
- package/dist/commands/sdd/execution.js +147 -16
- package/dist/commands/sdd/plugin.d.ts +3 -0
- package/dist/commands/sdd/plugin.js +153 -0
- package/dist/commands/sdd/shared.js +2 -23
- package/dist/commands/sdd/skills.js +7 -0
- package/dist/commands/sdd.js +69 -12
- package/dist/commands/spec.js +9 -9
- package/dist/commands/validate.js +6 -6
- package/dist/commands/workflow/instructions.js +6 -6
- package/dist/commands/workflow/new-change.js +3 -3
- package/dist/commands/workflow/shared.d.ts +1 -1
- package/dist/commands/workflow/shared.js +4 -4
- package/dist/core/archive.js +15 -5
- package/dist/core/artifact-graph/instruction-loader.d.ts +1 -1
- package/dist/core/artifact-graph/instruction-loader.js +3 -3
- package/dist/core/artifact-graph/resolver.d.ts +4 -4
- package/dist/core/artifact-graph/resolver.js +6 -6
- package/dist/core/branding.js +3 -3
- package/dist/core/cli/command-matrix.js +10 -1
- package/dist/core/cli-command-quality.d.ts +27 -0
- package/dist/core/cli-command-quality.js +171 -0
- package/dist/core/command-generation/adapters/costrict.d.ts +1 -1
- package/dist/core/command-generation/adapters/costrict.js +2 -2
- package/dist/core/command-generation/types.d.ts +1 -1
- package/dist/core/completions/command-registry.d.ts +1 -1
- package/dist/core/completions/command-registry.js +155 -12
- package/dist/core/completions/completion-provider.d.ts +14 -1
- package/dist/core/completions/completion-provider.js +29 -1
- package/dist/core/completions/generators/bash-generator.d.ts +1 -1
- package/dist/core/completions/generators/bash-generator.js +20 -12
- package/dist/core/completions/generators/fish-generator.d.ts +9 -1
- package/dist/core/completions/generators/fish-generator.js +39 -25
- package/dist/core/completions/generators/powershell-generator.d.ts +1 -1
- package/dist/core/completions/generators/powershell-generator.js +21 -11
- package/dist/core/completions/generators/zsh-generator.d.ts +3 -6
- package/dist/core/completions/generators/zsh-generator.js +21 -42
- package/dist/core/completions/installers/bash-installer.js +6 -6
- package/dist/core/completions/installers/fish-installer.js +1 -1
- package/dist/core/completions/installers/powershell-installer.js +14 -14
- package/dist/core/completions/installers/zsh-installer.d.ts +7 -1
- package/dist/core/completions/installers/zsh-installer.js +36 -8
- package/dist/core/completions/templates/bash-templates.d.ts +1 -1
- package/dist/core/completions/templates/bash-templates.js +12 -6
- package/dist/core/completions/templates/fish-templates.d.ts +2 -2
- package/dist/core/completions/templates/fish-templates.js +20 -9
- package/dist/core/completions/templates/powershell-templates.d.ts +1 -1
- package/dist/core/completions/templates/powershell-templates.js +13 -4
- package/dist/core/completions/templates/zsh-templates.d.ts +1 -1
- package/dist/core/completions/templates/zsh-templates.js +18 -9
- package/dist/core/config-schema.d.ts +3 -1
- package/dist/core/config-schema.js +26 -1
- package/dist/core/config.d.ts +3 -3
- package/dist/core/config.js +4 -4
- package/dist/core/global-config.d.ts +41 -12
- package/dist/core/global-config.js +344 -27
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.js +2 -2
- package/dist/core/init.d.ts +6 -1
- package/dist/core/init.js +99 -77
- package/dist/core/legacy-cleanup.d.ts +17 -17
- package/dist/core/legacy-cleanup.js +96 -79
- package/dist/core/list.js +18 -4
- package/dist/core/migration.d.ts +3 -1
- package/dist/core/migration.js +7 -8
- package/dist/core/parsers/change-parser.js +1 -1
- package/dist/core/parsers/markdown-parser.js +2 -2
- package/dist/core/profile-sync-drift.d.ts +1 -1
- package/dist/core/profile-sync-drift.js +13 -13
- package/dist/core/project-config.d.ts +4 -4
- package/dist/core/project-config.js +11 -11
- package/dist/core/schemas/change.schema.d.ts +1 -1
- package/dist/core/schemas/change.schema.js +1 -1
- package/dist/core/schemas/spec.schema.d.ts +1 -1
- package/dist/core/schemas/spec.schema.js +1 -1
- package/dist/core/sdd/adr.js +23 -1
- package/dist/core/sdd/agent-binding.d.ts +346 -0
- package/dist/core/sdd/agent-binding.js +343 -0
- package/dist/core/sdd/backlog-cli.d.ts +16 -0
- package/dist/core/sdd/backlog-cli.js +146 -0
- package/dist/core/sdd/backlog-conflict-policy.d.ts +58 -0
- package/dist/core/sdd/backlog-conflict-policy.js +230 -0
- package/dist/core/sdd/backlog-projection.d.ts +8 -0
- package/dist/core/sdd/backlog-projection.js +89 -0
- package/dist/core/sdd/backlog-provider-contract.d.ts +252 -0
- package/dist/core/sdd/backlog-provider-contract.js +158 -0
- package/dist/core/sdd/bootstrap.js +2 -2
- package/dist/core/sdd/check.d.ts +42 -0
- package/dist/core/sdd/check.js +22 -22
- package/dist/core/sdd/contract.d.ts +13 -0
- package/dist/core/sdd/contract.js +36 -0
- package/dist/core/sdd/coordination/coordination-adapters.d.ts +38 -0
- package/dist/core/sdd/coordination/coordination-adapters.js +139 -1
- package/dist/core/sdd/deepagent-contracts.d.ts +276 -0
- package/dist/core/sdd/deepagent-contracts.js +173 -0
- package/dist/core/sdd/deepagents/adr-governor.d.ts +2 -0
- package/dist/core/sdd/deepagents/adr-governor.js +30 -0
- package/dist/core/sdd/deepagents/backend.d.ts +63 -0
- package/dist/core/sdd/deepagents/backend.js +174 -0
- package/dist/core/sdd/deepagents/codesdd-tools.d.ts +39 -0
- package/dist/core/sdd/deepagents/codesdd-tools.js +83 -0
- package/dist/core/sdd/deepagents/evidence-mapper.d.ts +86 -0
- package/dist/core/sdd/deepagents/evidence-mapper.js +178 -0
- package/dist/core/sdd/deepagents/model-provider.d.ts +53 -0
- package/dist/core/sdd/deepagents/model-provider.js +379 -0
- package/dist/core/sdd/deepagents/policy-enforcement.d.ts +30 -0
- package/dist/core/sdd/deepagents/policy-enforcement.js +90 -0
- package/dist/core/sdd/deepagents/policy.d.ts +75 -0
- package/dist/core/sdd/deepagents/policy.js +358 -0
- package/dist/core/sdd/deepagents/quality-witness.d.ts +3 -0
- package/dist/core/sdd/deepagents/quality-witness.js +77 -0
- package/dist/core/sdd/deepagents/reversa-subagents.d.ts +75 -0
- package/dist/core/sdd/deepagents/reversa-subagents.js +182 -0
- package/dist/core/sdd/deepagents/runtime-factory.d.ts +90 -0
- package/dist/core/sdd/deepagents/runtime-factory.js +231 -0
- package/dist/core/sdd/deepagents/runtime-loader.d.ts +16 -0
- package/dist/core/sdd/deepagents/runtime-loader.js +65 -0
- package/dist/core/sdd/default-bootstrap-files.d.ts +2 -2
- package/dist/core/sdd/default-bootstrap-files.js +36 -2
- package/dist/core/sdd/default-skills.d.ts +30 -0
- package/dist/core/sdd/default-skills.js +181 -5
- package/dist/core/sdd/devtrack-api-appliance.d.ts +84 -0
- package/dist/core/sdd/devtrack-api-appliance.js +257 -0
- package/dist/core/sdd/devtrack-api-architecture.d.ts +31 -0
- package/dist/core/sdd/devtrack-api-architecture.js +608 -0
- package/dist/core/sdd/devtrack-api-import-boundary.d.ts +19 -0
- package/dist/core/sdd/devtrack-api-import-boundary.js +32 -0
- package/dist/core/sdd/diagnose.d.ts +59 -0
- package/dist/core/sdd/diagnose.js +37 -37
- package/dist/core/sdd/docs-sync.js +33 -5
- package/dist/core/sdd/domain/post-active-validation.d.ts +7 -0
- package/dist/core/sdd/domain/post-active-validation.js +61 -0
- package/dist/core/sdd/domain/transition-engine.js +1 -0
- package/dist/core/sdd/entity-reference.d.ts +5 -0
- package/dist/core/sdd/entity-reference.js +22 -0
- package/dist/core/sdd/governance-backfill.d.ts +31 -0
- package/dist/core/sdd/governance-backfill.js +359 -0
- package/dist/core/sdd/governance-parser.d.ts +21 -0
- package/dist/core/sdd/governance-parser.js +91 -0
- package/dist/core/sdd/governance-schemas.d.ts +245 -0
- package/dist/core/sdd/governance-schemas.js +143 -0
- package/dist/core/sdd/{import-openspec.d.ts → import-legacy-spec.d.ts} +7 -7
- package/dist/core/sdd/{import-openspec.js → import-legacy-spec.js} +21 -29
- package/dist/core/sdd/init.d.ts +3 -0
- package/dist/core/sdd/init.js +6 -3
- package/dist/core/sdd/json-schema.js +100 -6
- package/dist/core/sdd/knowledge-graph.d.ts +45 -0
- package/dist/core/sdd/knowledge-graph.js +288 -0
- package/dist/core/sdd/legacy-operations.js +431 -43
- package/dist/core/sdd/lenses.d.ts +1 -0
- package/dist/core/sdd/lenses.js +29 -1
- package/dist/core/sdd/migrate-workspace.js +56 -2
- package/dist/core/sdd/migrate.d.ts +1 -1
- package/dist/core/sdd/migrate.js +36 -2
- package/dist/core/sdd/package-structure-gate.d.ts +83 -0
- package/dist/core/sdd/package-structure-gate.js +362 -0
- package/dist/core/sdd/parallel-feat-automation.d.ts +152 -0
- package/dist/core/sdd/parallel-feat-automation.js +212 -0
- package/dist/core/sdd/plugin-broker.d.ts +558 -0
- package/dist/core/sdd/plugin-broker.js +482 -0
- package/dist/core/sdd/plugin-certification.d.ts +79 -0
- package/dist/core/sdd/plugin-certification.js +453 -0
- package/dist/core/sdd/plugin-cli.d.ts +109 -0
- package/dist/core/sdd/plugin-cli.js +198 -0
- package/dist/core/sdd/plugin-evidence.d.ts +275 -0
- package/dist/core/sdd/plugin-evidence.js +307 -0
- package/dist/core/sdd/plugin-manifest.d.ts +164 -0
- package/dist/core/sdd/plugin-manifest.js +215 -0
- package/dist/core/sdd/plugin-policy-pack.d.ts +88 -0
- package/dist/core/sdd/plugin-policy-pack.js +236 -0
- package/dist/core/sdd/plugin-policy.d.ts +68 -0
- package/dist/core/sdd/plugin-policy.js +212 -0
- package/dist/core/sdd/plugin-registry.d.ts +311 -0
- package/dist/core/sdd/plugin-registry.js +138 -0
- package/dist/core/sdd/plugin-skill-binding.d.ts +151 -0
- package/dist/core/sdd/plugin-skill-binding.js +339 -0
- package/dist/core/sdd/quality-artifact-manifest-validator.d.ts +28 -0
- package/dist/core/sdd/quality-artifact-manifest-validator.js +167 -0
- package/dist/core/sdd/quality-evidence-renderer.d.ts +65 -0
- package/dist/core/sdd/quality-evidence-renderer.js +218 -0
- package/dist/core/sdd/quality-scenario-runner.d.ts +42 -0
- package/dist/core/sdd/quality-scenario-runner.js +613 -0
- package/dist/core/sdd/quality-validation.d.ts +547 -0
- package/dist/core/sdd/quality-validation.js +239 -0
- package/dist/core/sdd/resolve-project-root.d.ts +2 -2
- package/dist/core/sdd/resolve-project-root.js +11 -5
- package/dist/core/sdd/sanitize.d.ts +30 -1
- package/dist/core/sdd/sanitize.js +23 -23
- package/dist/core/sdd/services/agent-run.service.d.ts +65 -0
- package/dist/core/sdd/services/agent-run.service.js +189 -0
- package/dist/core/sdd/services/breakdown.service.js +2 -1
- package/dist/core/sdd/services/context.service.js +18 -16
- package/dist/core/sdd/services/debate.service.js +15 -2
- package/dist/core/sdd/services/feature-lint.service.d.ts +22 -0
- package/dist/core/sdd/services/feature-lint.service.js +105 -5
- package/dist/core/sdd/services/finalize.service.d.ts +80 -0
- package/dist/core/sdd/services/finalize.service.js +323 -24
- package/dist/core/sdd/services/frontend-gap.service.js +22 -7
- package/dist/core/sdd/services/governance-control-plane-runtime-adapters.d.ts +17 -0
- package/dist/core/sdd/services/governance-control-plane-runtime-adapters.js +38 -0
- package/dist/core/sdd/services/governance-control-plane.service.d.ts +66 -0
- package/dist/core/sdd/services/governance-control-plane.service.js +134 -0
- package/dist/core/sdd/services/ingest-deposito.service.js +1 -1
- package/dist/core/sdd/services/legacy-capability.service.d.ts +10 -7
- package/dist/core/sdd/services/legacy-capability.service.js +38 -21
- package/dist/core/sdd/services/mcp-runtime.service.d.ts +123 -8
- package/dist/core/sdd/services/mcp-runtime.service.js +1085 -33
- package/dist/core/sdd/services/onboard.service.js +2 -1
- package/dist/core/sdd/services/rebuild.service.js +6 -1
- package/dist/core/sdd/services/skills-sync.service.d.ts +17 -5
- package/dist/core/sdd/services/skills-sync.service.js +55 -2
- package/dist/core/sdd/services/start.service.js +6 -4
- package/dist/core/sdd/skill-bundles-curation-schema.d.ts +66 -0
- package/dist/core/sdd/skill-bundles-curation-schema.js +52 -0
- package/dist/core/sdd/skill-evidence.d.ts +19 -0
- package/dist/core/sdd/skill-evidence.js +38 -0
- package/dist/core/sdd/skill-policy-pool.d.ts +46 -0
- package/dist/core/sdd/skill-policy-pool.js +185 -0
- package/dist/core/sdd/state.d.ts +22 -0
- package/dist/core/sdd/state.js +66 -41
- package/dist/core/sdd/structural-health.d.ts +42 -42
- package/dist/core/sdd/types.d.ts +33 -7
- package/dist/core/sdd/types.js +17 -0
- package/dist/core/sdd/upgrade-to-codesdd.d.ts +45 -0
- package/dist/core/sdd/upgrade-to-codesdd.js +179 -0
- package/dist/core/sdd/workspace-schemas.d.ts +285 -14
- package/dist/core/sdd/workspace-schemas.js +148 -0
- package/dist/core/sdd/write-manifest.js +22 -4
- package/dist/core/shared/skill-generation.d.ts +1 -1
- package/dist/core/shared/skill-generation.js +15 -15
- package/dist/core/shared/tool-detection.d.ts +3 -3
- package/dist/core/shared/tool-detection.js +14 -14
- package/dist/core/specs-apply.js +6 -6
- package/dist/core/templates/index.d.ts +1 -1
- package/dist/core/templates/index.js +1 -1
- package/dist/core/templates/workflows/apply-change.js +14 -14
- package/dist/core/templates/workflows/archive-change.js +32 -32
- package/dist/core/templates/workflows/bulk-archive-change.js +25 -25
- package/dist/core/templates/workflows/continue-change.js +12 -12
- package/dist/core/templates/workflows/explore.js +29 -29
- package/dist/core/templates/workflows/feedback.js +6 -6
- package/dist/core/templates/workflows/ff-change.js +24 -24
- package/dist/core/templates/workflows/new-change.js +20 -20
- package/dist/core/templates/workflows/onboard.js +33 -33
- package/dist/core/templates/workflows/propose.js +23 -23
- package/dist/core/templates/workflows/sdd.js +8 -8
- package/dist/core/templates/workflows/sync-specs.js +19 -19
- package/dist/core/templates/workflows/verify-change.js +17 -17
- package/dist/core/update.d.ts +2 -2
- package/dist/core/update.js +16 -15
- package/dist/core/validation/constants.d.ts +1 -1
- package/dist/core/validation/constants.js +1 -1
- package/dist/core/view.js +11 -11
- package/dist/telemetry/config.d.ts +2 -1
- package/dist/telemetry/config.js +17 -8
- package/dist/telemetry/index.d.ts +10 -2
- package/dist/telemetry/index.js +40 -7
- package/dist/ui/ascii-patterns.d.ts +2 -2
- package/dist/ui/ascii-patterns.js +2 -2
- package/dist/ui/welcome-screen.js +2 -2
- package/dist/utils/change-metadata.d.ts +4 -4
- package/dist/utils/change-metadata.js +6 -6
- package/dist/utils/change-utils.d.ts +3 -3
- package/dist/utils/change-utils.js +5 -5
- package/dist/utils/file-system.js +1 -1
- package/dist/utils/interactive.js +1 -1
- package/dist/utils/item-discovery.js +4 -4
- package/dist/utils/legacy-spec-compat.d.ts +2 -0
- package/dist/utils/legacy-spec-compat.js +2 -0
- package/dist/utils/shell-detection.d.ts +1 -0
- package/dist/utils/shell-detection.js +16 -0
- package/package.json +27 -17
- package/schemas/sdd/1-spec.schema.json +1 -1
- package/schemas/sdd/2-plan.schema.json +73 -1
- package/schemas/sdd/3-tasks.schema.json +73 -1
- package/schemas/sdd/4-changelog.schema.json +1 -1
- package/schemas/sdd/5-quality.schema.json +442 -2
- package/schemas/sdd/adr.schema.json +148 -0
- package/schemas/sdd/agent-binding-adapter.schema.json +210 -0
- package/schemas/sdd/agent-binding-resolution.schema.json +338 -0
- package/schemas/sdd/backlog-projection-plan.schema.json +180 -0
- package/schemas/sdd/backlog-provider-contract.schema.json +260 -0
- package/schemas/sdd/codesdd-plugin.schema.json +474 -0
- package/schemas/sdd/debate.schema.json +244 -0
- package/schemas/sdd/deepagent-decision-evidence.schema.json +58 -0
- package/schemas/sdd/deepagent-env-contract.schema.json +143 -0
- package/schemas/sdd/deepagent-quality-evidence.schema.json +108 -0
- package/schemas/sdd/deepagent-run-evidence.schema.json +192 -0
- package/schemas/sdd/deepagent-run-plan.schema.json +197 -0
- package/schemas/sdd/deepagent-run-request.schema.json +321 -0
- package/schemas/sdd/deepagent-subagent-evidence.schema.json +110 -0
- package/schemas/sdd/deepagent-tool-call-evidence.schema.json +78 -0
- package/schemas/sdd/discarded.schema.json +127 -0
- package/schemas/sdd/epic.schema.json +147 -0
- package/schemas/sdd/insight.schema.json +136 -0
- package/schemas/sdd/parallel-feat-automation-plan.schema.json +215 -0
- package/schemas/sdd/parallel-feat-automation-request.schema.json +109 -0
- package/schemas/sdd/plugin-artifact-manifest.schema.json +150 -0
- package/schemas/sdd/plugin-compliance-index.schema.json +136 -0
- package/schemas/sdd/plugin-dry-run-plan.schema.json +260 -0
- package/schemas/sdd/plugin-evidence-manifest.schema.json +569 -0
- package/schemas/sdd/plugin-policy-evaluation.schema.json +92 -0
- package/schemas/sdd/plugin-policy-pack-evaluation.schema.json +94 -0
- package/schemas/sdd/plugin-policy-pack.schema.json +196 -0
- package/schemas/sdd/plugin-registry.schema.json +558 -0
- package/schemas/sdd/plugin-rollback-manifest.schema.json +87 -0
- package/schemas/sdd/plugin-runtime-invocation-plan.schema.json +845 -0
- package/schemas/sdd/plugin-skill-binding-resolution.schema.json +305 -0
- package/schemas/sdd/plugin-skill-binding.schema.json +88 -0
- package/schemas/sdd/plugin-validation-manifest.schema.json +123 -0
- package/schemas/sdd/quality-architecture-schema.schema.json +216 -0
- package/schemas/sdd/quality-evidence-bundle.schema.json +1228 -0
- package/schemas/sdd/quality-run.schema.json +197 -0
- package/schemas/sdd/quality-scenario.schema.json +252 -0
- package/schemas/sdd/workspace-catalog.schema.json +9841 -22
- package/schemas/spec-driven/schema.yaml +4 -4
- package/schemas/spec-driven/templates/proposal.md +1 -1
- package/dist/utils/openspec-compat.d.ts +0 -2
- package/dist/utils/openspec-compat.js +0 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# CodeSDD
|
|
2
2
|
|
|
3
|
-
CodeSDD e uma
|
|
3
|
+
CodeSDD e uma plataforma de memoria operacional, planejamento rastreavel e handoff entre agentes.
|
|
4
4
|
|
|
5
5
|
O objetivo nao e apenas criar specs. O objetivo e permitir que um projeto grande continue compreensivel ao longo do tempo, mesmo quando:
|
|
6
6
|
- novas ideias aparecem no meio da implementacao;
|
|
@@ -9,6 +9,30 @@ O objetivo nao e apenas criar specs. O objetivo e permitir que um projeto grande
|
|
|
9
9
|
- um agente novo entra no repositorio sem contexto previo;
|
|
10
10
|
- o sistema ja existe e precisa ser absorvido sem reler todo o codigo.
|
|
11
11
|
|
|
12
|
+
## Identidade canonica
|
|
13
|
+
|
|
14
|
+
CodeSDD e a nomenclatura canonica do produto, do pacote npm e da CLI. O binario
|
|
15
|
+
oficial publicado e `codesdd`. Estruturas historicas de especificacao devem ser
|
|
16
|
+
tratadas como corpus importavel por `codesdd sdd import-legacy-spec`, nunca como
|
|
17
|
+
fonte operacional paralela ao estado `.sdd`.
|
|
18
|
+
|
|
19
|
+
O relatorio formal de revisao, mapa de referencias, plano de migracao,
|
|
20
|
+
excecoes e exemplos por tipo de comando ficam em
|
|
21
|
+
[docs/codesdd-formal-review.md](docs/codesdd-formal-review.md).
|
|
22
|
+
|
|
23
|
+
Backlog provider integration is documented as a projection-only boundary in
|
|
24
|
+
[docs/backlog-provider-integration.md](docs/backlog-provider-integration.md):
|
|
25
|
+
Azure DevOps is the first provider target, and `.sdd/state/*.yaml` remains the
|
|
26
|
+
canonical operational state.
|
|
27
|
+
|
|
28
|
+
## Creditos, notices e posicionamento
|
|
29
|
+
|
|
30
|
+
Os documentos canonicos desta fronteira ficam em `docs/`:
|
|
31
|
+
|
|
32
|
+
- [docs/CREDITS.md](docs/CREDITS.md): reconhecimento conceitual e fronteira clean-room (fora do fluxo operacional).
|
|
33
|
+
- [docs/THIRD_PARTY_NOTICES.md](docs/THIRD_PARTY_NOTICES.md): notices tecnicos/licencas para dependencias runtime.
|
|
34
|
+
- [positioning.md](positioning.md): narrativa de posicionamento enterprise do CodeSDD.
|
|
35
|
+
|
|
12
36
|
## O que o CodeSDD faz
|
|
13
37
|
|
|
14
38
|
O CodeSDD organiza o desenvolvimento em 4 camadas:
|
|
@@ -42,11 +66,85 @@ O CodeSDD organiza o desenvolvimento em 4 camadas:
|
|
|
42
66
|
- Artefatos tecnicos de compatibilidade, historicos ou produto nao substituem o estado CodeSDD.
|
|
43
67
|
- Se uma anotacao legada tiver informacao util, migre a decisao para CodeSDD e remova ou depreque o legado.
|
|
44
68
|
|
|
69
|
+
## Arquitetura DeepAgents governada (FEAT-0240)
|
|
70
|
+
|
|
71
|
+
Para a iniciativa EPIC-0065, o projeto formaliza a seguinte fronteira canonica:
|
|
72
|
+
|
|
73
|
+
- CodeSDD e o control plane soberano: estado canonico (`.sdd/state/*.yaml`), lifecycle, EPIC/FEAT, ADR, politicas, qualidade, evidencia e finalize.
|
|
74
|
+
- DeepAgents e execution plane governado: planejamento tatico, delegacao de subagentes, execucao em sandbox, memoria tatica controlada e coleta de evidencia estruturada.
|
|
75
|
+
- Plugins operam como plano de construcao deterministico via broker e envelopes; Reversa opera como pipeline especializado de engenharia reversa.
|
|
76
|
+
- Nenhum runtime de agente pode virar fonte paralela de verdade para o estado operacional do projeto.
|
|
77
|
+
|
|
78
|
+
Pacote ADR obrigatorio da iniciativa:
|
|
79
|
+
|
|
80
|
+
1. Adocao oficial do runtime DeepAgents governado.
|
|
81
|
+
2. Fronteira control plane (CodeSDD) vs execution plane (DeepAgents).
|
|
82
|
+
3. Autoridade de filesystem/memoria e regra sem fonte paralela de estado.
|
|
83
|
+
4. Politica de sandbox e worktree isolada.
|
|
84
|
+
5. Politica HITL e mapeamento de `interrupt_on`.
|
|
85
|
+
6. Interoperabilidade com plugin broker.
|
|
86
|
+
7. Interoperabilidade MCP e exposicao de ferramentas.
|
|
87
|
+
8. Interoperabilidade Reversa e evidencia de engenharia reversa.
|
|
88
|
+
9. Politica de execucao autonoma por tiers de risco.
|
|
89
|
+
10. Politica de `.env`, segredos e fingerprint de configuracao.
|
|
90
|
+
11. Contratos de evidencia estruturada e retencao.
|
|
91
|
+
|
|
92
|
+
O ADR charter desta formalizacao esta em `.sdd/core/adrs/ADR-FEAT-0240.md`.
|
|
93
|
+
|
|
94
|
+
O runtime DeepAgents e opt-in. A configuracao segura permanece desligada por
|
|
95
|
+
padrao (`CODESDD_DEEPAGENTS_ENABLED=false` e
|
|
96
|
+
`CODESDD_DEEPAGENTS_RUNTIME=disabled`), com modo `fake` para testes
|
|
97
|
+
deterministicos sem credenciais e modo `deepagents-js` para a implementacao
|
|
98
|
+
nativa Node/TypeScript carregada sob politica, HITL e contrato de modelo.
|
|
99
|
+
O pacote npm `deepagents` e carregado de forma dinamica, apenas quando esse
|
|
100
|
+
modo real passa nos checks de prontidao.
|
|
101
|
+
A fronteira Node/TypeScript passa pela factory
|
|
102
|
+
`src/core/sdd/deepagents/runtime-factory.ts`, que entrega adapters separados
|
|
103
|
+
para `disabled`, `fake` e `deepagents-js` sem transformar DeepAgents em fonte
|
|
104
|
+
canonica de estado.
|
|
105
|
+
As tools CodeSDD para DeepAgents sao uma projecao governada do registro MCP em
|
|
106
|
+
`src/core/sdd/deepagents/codesdd-tools.ts`, e o enforcement de env, rede, HITL e
|
|
107
|
+
writes planejados passa por `src/core/sdd/deepagents/policy-enforcement.ts`
|
|
108
|
+
antes de qualquer instanciacao real.
|
|
109
|
+
As saidas do runtime sao normalizadas por
|
|
110
|
+
`src/core/sdd/deepagents/evidence-mapper.ts` para os contratos
|
|
111
|
+
`deepagent-run-*`, `deepagent-tool-call-*`, `deepagent-subagent-*`,
|
|
112
|
+
`deepagent-decision-*` e `deepagent-quality-*`.
|
|
113
|
+
O comando `codesdd sdd agent run <FEAT-ID> --provider deepagents` ja consome
|
|
114
|
+
essa fronteira TypeScript: no modo `disabled`, ele registra evidencia de runtime
|
|
115
|
+
bloqueado sem instanciar agente; no modo `fake`, executa o adapter
|
|
116
|
+
deterministico sem credenciais; e no modo `deepagents-js`, so materializa o
|
|
117
|
+
adapter nativo quando os feature toggles, modelo, credencial de launcher e
|
|
118
|
+
politicas passam. Falhas de prontidao viram evidencia estruturada fail-closed.
|
|
119
|
+
O smoke operacional padrao esta em `pnpm run test:deepagents-smoke`, cobrindo
|
|
120
|
+
`disabled` e `fake` sem segredos nem rede; o smoke real de provedor so roda com
|
|
121
|
+
`CODESDD_DEEPAGENTS_PROVIDER_SMOKE=1`, modelo, chave de launcher e dominio de
|
|
122
|
+
rede explicitamente liberado.
|
|
123
|
+
Para diagnostico local, `codesdd config doctor --json` executa preflight
|
|
124
|
+
operacional e reporta status `disabled|ready|blocked` para runtime/provider,
|
|
125
|
+
modelo, variaveis obrigatorias, endpoint e politica de rede sem imprimir
|
|
126
|
+
credenciais.
|
|
127
|
+
Modelos hospedados na Azure e endpoints OpenAI-compatible usam provider
|
|
128
|
+
profiles governados (`azure-openai:`, `azure-ai:`, `openai-compatible:`,
|
|
129
|
+
`xai:`/`grok:`, `moonshot:`/`kimi:` e `cohere:`/`coyers:`). Credenciais e
|
|
130
|
+
endpoints podem vir de variaveis nomeadas por
|
|
131
|
+
`CODESDD_DEEPAGENTS_CREDENTIAL_ENV` e `CODESDD_DEEPAGENTS_ENDPOINT_ENV`; o
|
|
132
|
+
CodeSDD registra apenas nomes, presenca e fingerprints, nunca valores de
|
|
133
|
+
segredo.
|
|
134
|
+
Saidas de diagnostico/configuracao tambem aplicam redaction por chave sensivel
|
|
135
|
+
(`*key*`, `*secret*`, `*token*`, `*password*`, `*credential*`, `*private*`,
|
|
136
|
+
`*auth*`) para evitar leakage acidental em stdout, JSON e contratos de
|
|
137
|
+
evidencia.
|
|
138
|
+
Para Azure OpenAI, aliases de deployment divergentes (`AZURE_OPENAI_DEPLOYMENT`
|
|
139
|
+
vs `AZURE_OPENAI_DEPLOYMENT_NAME`) entram em fail-fast e bloqueiam o runtime;
|
|
140
|
+
a precedencia valida usa `AZURE_OPENAI_DEPLOYMENT_NAME`, depois
|
|
141
|
+
`AZURE_OPENAI_DEPLOYMENT`, depois `AZURE_OPENAI_API_DEPLOYMENT_NAME`.
|
|
142
|
+
|
|
45
143
|
## Coordenacao opcional com Redis
|
|
46
144
|
|
|
47
145
|
Redis e uma fronteira opcional para coordenacao tecnica de locks, cache, filas e eventos. Ele nao substitui a autoridade operacional de `.sdd/state/*.yaml`.
|
|
48
146
|
|
|
49
|
-
Por padrao, CodeSDD usa locks em filesystem
|
|
147
|
+
Por padrao, CodeSDD usa locks em filesystem, cache L1 em memoria e cache L2 em `~/.codesdd/cache/projects/<fingerprint>/coordination`. A fabrica `createFilesystemFirstCoordinationAdapters` em `src/core/sdd/coordination/` mantem esse comportamento mesmo quando Redis e solicitado, ate que um adaptador Redis real seja instalado.
|
|
50
148
|
|
|
51
149
|
Variaveis reconhecidas:
|
|
52
150
|
|
|
@@ -57,11 +155,15 @@ Variaveis reconhecidas:
|
|
|
57
155
|
|
|
58
156
|
Enquanto o cliente Redis nao existir no runtime, o status exposto e `requested-unavailable` e os defaults filesystem-first continuam autoritativos.
|
|
59
157
|
|
|
158
|
+
`codesdd config list` exibe o status atual da fronteira Redis e o namespace efetivo sem imprimir segredos.
|
|
159
|
+
|
|
60
160
|
## Contrato de nomenclatura
|
|
61
161
|
|
|
62
|
-
O contrato canonico de identidade do produto vive em `.sdd/state/naming-contract.yaml
|
|
63
|
-
|
|
64
|
-
|
|
162
|
+
O contrato canonico de identidade do produto vive em `.sdd/state/naming-contract.yaml`
|
|
163
|
+
quando persistido no projeto; se o arquivo ainda nao existir, a CLI usa o
|
|
164
|
+
contrato padrao de CodeSDD definido em `src/core/sdd/state.ts`. Ele declara a
|
|
165
|
+
identidade atual, a identidade alvo, as regras de rename por fase e o gate de
|
|
166
|
+
residuo zero usado por `codesdd sdd scan-naming`.
|
|
65
167
|
|
|
66
168
|
Durante a migracao para CodeSDD, esse contrato permite manter uma janela de
|
|
67
169
|
compatibilidade rastreavel sem perder o objetivo final: remover termos legados
|
|
@@ -92,18 +194,18 @@ Depois do bootstrap, o projeto passa a ter:
|
|
|
92
194
|
- `.sdd/planning/`
|
|
93
195
|
- `.sdd/active/`
|
|
94
196
|
- `.sdd/archived/`
|
|
95
|
-
- `.sdd/templates/`
|
|
197
|
+
- `.sdd/templates/` (YAML workspace templates)
|
|
96
198
|
- `.sdd/skills/curated/`
|
|
97
199
|
- `.sdd/sources/`
|
|
98
200
|
- `.sdd/prompts/`
|
|
99
201
|
|
|
100
|
-
Projetos CodeSDD-native nao devem criar `
|
|
101
|
-
Quando um projeto legado ainda tiver `
|
|
102
|
-
`.sdd/sources/legacy/spec-corpus` com `codesdd sdd import-
|
|
202
|
+
Projetos CodeSDD-native nao devem criar `legacy-spec/` como estrutura operacional.
|
|
203
|
+
Quando um projeto legado ainda tiver `legacy-spec/`, importe o corpus para
|
|
204
|
+
`.sdd/sources/legacy/spec-corpus` com `codesdd sdd import-legacy-spec` antes de
|
|
103
205
|
remover a pasta antiga. O acesso de compatibilidade a esse corpus deve passar
|
|
104
206
|
pelo servico CodeSDD de legacy capability em
|
|
105
207
|
`src/core/sdd/services/legacy-capability.service.ts`; utilitarios antigos, como
|
|
106
|
-
`src/utils/
|
|
208
|
+
`src/utils/legacy-spec-compat.ts`, existem apenas como shim.
|
|
107
209
|
|
|
108
210
|
Dentro de `.sdd/` ficam:
|
|
109
211
|
|
|
@@ -127,8 +229,7 @@ A instalacao global oficial e feita via npm:
|
|
|
127
229
|
npm install -g @devtrack-solution/codesdd
|
|
128
230
|
```
|
|
129
231
|
|
|
130
|
-
O binario
|
|
131
|
-
compatibilidade, `codesdd` continua publicado como shim. Depois de instalar,
|
|
232
|
+
O binario principal publicado pelo pacote e `codesdd`. Depois de instalar,
|
|
132
233
|
confira:
|
|
133
234
|
|
|
134
235
|
```bash
|
|
@@ -137,6 +238,36 @@ codesdd --version
|
|
|
137
238
|
|
|
138
239
|
Se o terminal nao encontrar `codesdd`, a instalacao provavelmente foi concluida, mas o diretorio global do npm nao esta no `PATH` da sua sessao. Nesses casos, adicione o alias abaixo para o seu sistema operacional.
|
|
139
240
|
|
|
241
|
+
### Configuracao global do CodeSDD
|
|
242
|
+
|
|
243
|
+
- Caminho canonico: `~/.codesdd/config.toml`
|
|
244
|
+
- Compatibilidade de leitura: `~/.config/codesdd/config.json` (somente fallback)
|
|
245
|
+
- O comando `codesdd config path` sempre exibe o caminho canonico atual.
|
|
246
|
+
- Cache global: `~/.codesdd/cache` com tiers logicos `providers`, `projects`, `schemas`, `deepagents` e `plugins`.
|
|
247
|
+
- O tier `projects` usa fingerprint por raiz de projeto para evitar colisao de cache entre repositorios.
|
|
248
|
+
- `codesdd config init` cria/normaliza `~/.codesdd/config.toml`, `~/.codesdd/cache/**` e `~/.codesdd/env.zsh` com conteudo nao secreto.
|
|
249
|
+
- Em shell Zsh, `codesdd config init` garante um bloco idempotente no `~/.zshrc` para `source ~/.codesdd/env.zsh`.
|
|
250
|
+
- O perfil gerado por `codesdd config init` e fail-closed: DeepAgents fica
|
|
251
|
+
desabilitado, runtime `disabled`, provider smoke `0` e rede `disabled` ate
|
|
252
|
+
que um operador habilite explicitamente um provedor live.
|
|
253
|
+
|
|
254
|
+
Fluxo seguro recomendado:
|
|
255
|
+
|
|
256
|
+
```bash
|
|
257
|
+
codesdd config init
|
|
258
|
+
codesdd config path
|
|
259
|
+
codesdd config list
|
|
260
|
+
codesdd config doctor --json
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
Para validar o modo deterministico sem credenciais:
|
|
264
|
+
|
|
265
|
+
```bash
|
|
266
|
+
CODESDD_DEEPAGENTS_ENABLED=true \
|
|
267
|
+
CODESDD_DEEPAGENTS_RUNTIME=fake \
|
|
268
|
+
codesdd config doctor --json
|
|
269
|
+
```
|
|
270
|
+
|
|
140
271
|
### Windows PowerShell
|
|
141
272
|
|
|
142
273
|
```powershell
|
|
@@ -148,13 +279,6 @@ Add-Content $PROFILE "`nfunction codesdd { & '$target' @args }"
|
|
|
148
279
|
codesdd --version
|
|
149
280
|
```
|
|
150
281
|
|
|
151
|
-
Se voce tambem precisar manter scripts legados que chamam `openspec`, adicione o alias de compatibilidade no mesmo perfil:
|
|
152
|
-
|
|
153
|
-
```powershell
|
|
154
|
-
Add-Content $PROFILE "`nfunction openspec { codesdd @args }"
|
|
155
|
-
. $PROFILE
|
|
156
|
-
```
|
|
157
|
-
|
|
158
282
|
### Linux
|
|
159
283
|
|
|
160
284
|
Para Bash:
|
|
@@ -175,14 +299,6 @@ printf "\nalias codesdd='%s'\n" "$(npm prefix -g)/bin/codesdd" >> ~/.zshrc
|
|
|
175
299
|
codesdd --version
|
|
176
300
|
```
|
|
177
301
|
|
|
178
|
-
Alias legado opcional:
|
|
179
|
-
|
|
180
|
-
```bash
|
|
181
|
-
printf "\nalias openspec='codesdd'\n" >> ~/.bashrc
|
|
182
|
-
# ou, se usar Zsh:
|
|
183
|
-
printf "\nalias openspec='codesdd'\n" >> ~/.zshrc
|
|
184
|
-
```
|
|
185
|
-
|
|
186
302
|
### macOS / MacBook
|
|
187
303
|
|
|
188
304
|
O shell padrao atual do macOS e Zsh:
|
|
@@ -194,12 +310,6 @@ printf "\nalias codesdd='%s'\n" "$(npm prefix -g)/bin/codesdd" >> ~/.zshrc
|
|
|
194
310
|
codesdd --version
|
|
195
311
|
```
|
|
196
312
|
|
|
197
|
-
Alias legado opcional para comandos antigos:
|
|
198
|
-
|
|
199
|
-
```bash
|
|
200
|
-
printf "\nalias openspec='codesdd'\n" >> ~/.zshrc
|
|
201
|
-
```
|
|
202
|
-
|
|
203
313
|
Se voce estiver desenvolvendo este fork localmente:
|
|
204
314
|
|
|
205
315
|
```bash
|
|
@@ -213,10 +323,12 @@ Atalhos uteis de manutencao local:
|
|
|
213
323
|
```bash
|
|
214
324
|
pnpm run cleanup
|
|
215
325
|
pnpm run cleanup:install
|
|
326
|
+
pnpm run quality:review
|
|
216
327
|
```
|
|
217
328
|
|
|
218
329
|
- `cleanup`: remove artefatos de build/cache local, rastros de ambiente (`.DS_Store`, `.idea/`, `.claude/`), stores legados de contexto local e logs de falha de compilacao/execucao.
|
|
219
330
|
- `cleanup:install`: faz a limpeza acima e tambem remove `node_modules/` e lockfiles alternativos locais (`package-lock.json`, `yarn.lock`, `bun.lock*`), preservando o `pnpm-lock.yaml` versionado.
|
|
331
|
+
- `quality:review`: executa build, lint, testes, cobertura, validacao SDD e pack-version sem remover `node_modules/` nem executar `pnpm install`; use em revisoes/auditorias que nao devem limpar o workspace.
|
|
220
332
|
|
|
221
333
|
## Como iniciar em um projeto novo
|
|
222
334
|
|
|
@@ -274,7 +386,7 @@ Atalhos em portugues no CLI:
|
|
|
274
386
|
Se o projeto ja esta em andamento, o primeiro passo depois do `install` e inicializar o contexto:
|
|
275
387
|
|
|
276
388
|
```bash
|
|
277
|
-
codesdd sdd init-context
|
|
389
|
+
codesdd sdd init-context --frontend --lang en-US --layout en-US
|
|
278
390
|
codesdd sdd check --render
|
|
279
391
|
codesdd sdd onboard system
|
|
280
392
|
```
|
|
@@ -288,6 +400,13 @@ O `init-context` serve para:
|
|
|
288
400
|
|
|
289
401
|
Em projetos grandes, esse bootstrap inicial nao substitui consolidacao progressiva. Ele cria uma base inicial para que o processo passe a evoluir de forma rastreavel.
|
|
290
402
|
|
|
403
|
+
Para reconfigurar um projeto ja inicializado com os artefatos, templates, skills
|
|
404
|
+
e views da versao instalada do CLI, use:
|
|
405
|
+
|
|
406
|
+
```bash
|
|
407
|
+
codesdd reload --tools none --lang en-US --layout en-US
|
|
408
|
+
```
|
|
409
|
+
|
|
291
410
|
## Como usar no dia a dia
|
|
292
411
|
|
|
293
412
|
Fluxo principal:
|
|
@@ -328,16 +447,16 @@ contadores e pode ser executado em `--dry-run` antes de gravar.
|
|
|
328
447
|
Para absorver o corpus legado de especificacoes antes da remocao da pasta formal:
|
|
329
448
|
|
|
330
449
|
```bash
|
|
331
|
-
codesdd sdd import-
|
|
332
|
-
codesdd sdd import-
|
|
333
|
-
codesdd sdd import-
|
|
450
|
+
codesdd sdd import-legacy-spec --dry-run
|
|
451
|
+
codesdd sdd import-legacy-spec
|
|
452
|
+
codesdd sdd import-legacy-spec --remove --yes
|
|
334
453
|
```
|
|
335
454
|
|
|
336
|
-
O `import-
|
|
455
|
+
O `import-legacy-spec` copia todos os arquivos de `legacy-spec/` para
|
|
337
456
|
`.sdd/sources/legacy/spec-corpus`, calcula SHA-256 e tamanho de cada fonte,
|
|
338
457
|
registra cada item em `.sdd/state/source-index.yaml` e grava um relatorio em
|
|
339
|
-
`.sdd/sources/legacy/spec-corpus/
|
|
340
|
-
so e aceita junto de `--yes` e remove `
|
|
458
|
+
`.sdd/sources/legacy/spec-corpus/_legacy-spec-import-report.yaml`. A opcao `--remove`
|
|
459
|
+
so e aceita junto de `--yes` e remove `legacy-spec/` apenas depois de concluir a
|
|
341
460
|
copia e a verificacao de checksum.
|
|
342
461
|
|
|
343
462
|
If there is no ready FEAT, onboarding now returns guided steps such as creating an insight, opening a debate, deciding, and breaking down an EPIC instead of leaving `next_steps` empty.
|
|
@@ -448,19 +567,69 @@ workspace ativa.
|
|
|
448
567
|
codesdd sdd context FEAT-0001
|
|
449
568
|
```
|
|
450
569
|
|
|
451
|
-
4.1 Expor
|
|
570
|
+
4.1 Expor a fundacao MCP para agentes externos
|
|
571
|
+
|
|
572
|
+
No repositorio local, use o entrypoint versionado do checkout atual para validar
|
|
573
|
+
o contrato antes de empacotar ou publicar:
|
|
574
|
+
|
|
575
|
+
```bash
|
|
576
|
+
node bin/codesdd.js --no-telemetry sdd mcp-manifest --provider codex --json
|
|
577
|
+
node bin/codesdd.js --no-telemetry sdd mcp-call codesdd.next --provider claude-code --json
|
|
578
|
+
node bin/codesdd.js --no-telemetry sdd mcp-call codesdd.context --provider open-code --ref FEAT-0001 --json
|
|
579
|
+
node bin/codesdd.js --no-telemetry sdd mcp-call codesdd.finalize --provider kimmy-code --ref FEAT-0001 --json
|
|
580
|
+
```
|
|
581
|
+
|
|
582
|
+
Depois da instalacao, os mesmos contratos ficam disponiveis pelo binario
|
|
583
|
+
publico:
|
|
584
|
+
|
|
585
|
+
```bash
|
|
586
|
+
codesdd sdd mcp-manifest --provider codex --json
|
|
587
|
+
codesdd sdd mcp-call codesdd.context --provider codex --ref FEAT-0001 --json
|
|
588
|
+
```
|
|
589
|
+
|
|
590
|
+
### Codex Live seguro
|
|
591
|
+
|
|
592
|
+
Para Codex, os prompts sao gerados no home global do cliente
|
|
593
|
+
(`$CODEX_HOME/prompts` ou `~/.codex/prompts`) e nao viram fonte operacional do
|
|
594
|
+
projeto. O estado canonico continua em `.sdd/state/*.yaml`.
|
|
595
|
+
|
|
596
|
+
Exemplo de configuracao local sem provedor live:
|
|
452
597
|
|
|
453
598
|
```bash
|
|
599
|
+
codesdd install --tools codex
|
|
600
|
+
codesdd config init
|
|
454
601
|
codesdd sdd mcp-manifest --provider codex --json
|
|
455
|
-
codesdd sdd mcp-call codesdd.next --provider
|
|
456
|
-
|
|
457
|
-
|
|
602
|
+
codesdd sdd mcp-call codesdd.next --provider codex --json
|
|
603
|
+
```
|
|
604
|
+
|
|
605
|
+
Exemplo de smoke live OpenAI, com credencial somente no launcher:
|
|
606
|
+
|
|
607
|
+
```bash
|
|
608
|
+
export CODESDD_DEEPAGENTS_PROVIDER_SMOKE=1
|
|
609
|
+
export CODESDD_AGENT_PROVIDER=deepagents
|
|
610
|
+
export CODESDD_DEEPAGENTS_ENABLED=true
|
|
611
|
+
export CODESDD_DEEPAGENTS_RUNTIME=deepagents-js
|
|
612
|
+
export CODESDD_DEEPAGENTS_MODEL=openai:gpt-4o-mini
|
|
613
|
+
export CODESDD_AGENT_NETWORK_POLICY=restricted
|
|
614
|
+
export CODESDD_AGENT_ALLOWED_DOMAINS=api.openai.com
|
|
615
|
+
export OPENAI_API_KEY="<secret-from-manager>"
|
|
616
|
+
codesdd config doctor --json
|
|
458
617
|
```
|
|
459
618
|
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
619
|
+
A fundacao MCP do CodeSDD e agnostica a provedor e publica o envelope
|
|
620
|
+
`codesdd-mcp-bridge/v1` para as ferramentas canonicas `codesdd.next`,
|
|
621
|
+
`codesdd.context`, `codesdd.query`, `codesdd.read` e os demais nomes
|
|
622
|
+
`codesdd.*` documentados pelo manifest.
|
|
623
|
+
|
|
624
|
+
Perfis aceitos por `--provider`: `codex`, `claude-code`, `kimmy-code`,
|
|
625
|
+
`kilo-code`, `open-code` e `generic`. Para OpenCode/Open Code, o bridge MCP usa
|
|
626
|
+
o identificador `open-code`; `opencode` aparece em contratos antigos de
|
|
627
|
+
agent-binding e nao e aceito por `sdd mcp-manifest` neste runtime.
|
|
628
|
+
|
|
629
|
+
Matriz de provedores: consulte
|
|
630
|
+
[docs/mcp-provider-compatibility.md](docs/mcp-provider-compatibility.md),
|
|
631
|
+
mantida por FEAT-0164/Worker 4, para a tabela de clientes, IDs MCP, aliases,
|
|
632
|
+
evidencias esperadas e a diferenca entre `open-code` e `opencode`.
|
|
464
633
|
|
|
465
634
|
5. Implementar
|
|
466
635
|
|
|
@@ -636,6 +805,8 @@ The SDD bootstrap installs local curation in:
|
|
|
636
805
|
```
|
|
637
806
|
|
|
638
807
|
The default curation currently includes 66 skills across 8 bundles (canonical source: `.sdd/state/skill-catalog.yaml`).
|
|
808
|
+
Skill catalog entries now follow the v2 metadata contract with `token_budget`, `integrity_hash`, `deterministic_pair`, `deprecated_at`, and `superseded_by` for routing governance and lifecycle traceability.
|
|
809
|
+
`codesdd sdd skills sync` now enforces SHA-256 drift detection by layer: canonical curated skills block sync on `missing/modified` manifest hash, while user-extension skills emit non-blocking alerts so local customization remains possible.
|
|
639
810
|
|
|
640
811
|
Entre elas:
|
|
641
812
|
|
|
@@ -647,7 +818,15 @@ Entre elas:
|
|
|
647
818
|
- `api-clean-flask-langgraph` (bundle `python-agentic-backend`)
|
|
648
819
|
- `devtrack-api` (bundle `architecture-backend`, canonical DevTrack/NestJS/TypeORM API architecture)
|
|
649
820
|
|
|
650
|
-
Skill routing is operational, not decorative. When `codesdd sdd context <FEAT-ID>` returns `recommended_skills`, or when a user explicitly directs a skill, the agent must read and follow that skill before implementation and record one `skill_evidence` entry per required skill in `.sdd/active/<FEAT-ID>/5-quality.yaml` before finalize. For
|
|
821
|
+
Skill routing is operational, not decorative. When `codesdd sdd context <FEAT-ID>` returns `recommended_skills`, or when a user explicitly directs a skill, the agent must read and follow that skill before implementation and record one `skill_evidence` entry per required skill in `.sdd/active/<FEAT-ID>/5-quality.yaml` before finalize. For API/backend work without an explicit alternative skill/profile, `devtrack-api` is the default architecture and naming source. Explicit Python/Flask API work remains routed to `api-clean-flask-langgraph`.
|
|
822
|
+
|
|
823
|
+
The `devtrack-api` skill has a Foundation-layout conformance test. When the Foundation checkout is not at `/Volumes/WORKSPACE/DEVTRACK_TOOLS/devtrack-foundation-api`, set `CODESDD_FOUNDATION_API_ROOT=/path/to/devtrack-foundation-api` before running `pnpm test -- test/specs/devtrack-api-foundation-layout.test.ts`.
|
|
824
|
+
|
|
825
|
+
The executable `devtrack-api` contract pack lives in `.sdd/skills/curated/devtrack-api/references/contract-pack.yaml`. It defines the `prototype`, `foundation-compatible`, and `enterprise-strict` profiles, P0/P1/P2 severity semantics, early package-preview expectations, import/alias and TypeORM drift rules, and the `codesdd-validate` plus field-evidence drift maps consumed by later governance gates.
|
|
826
|
+
|
|
827
|
+
Consumer copies of `devtrack-api` are one-way CodeSDD materializations, not durable edit targets. The sync policy lives in `.sdd/skills/curated/devtrack-api/references/consumer-sync-policy.md`: update the consumer project through its CodeSDD update/bootstrap flow, compare the consumer copy with the canonical CodeSDD source, and record source version plus diff evidence in the consumer FEAT quality or handoff.
|
|
828
|
+
|
|
829
|
+
Field validation for `devtrack-api` is governed by `.sdd/skills/curated/devtrack-api/references/field-validation-protocol.md`. A consumer project must keep its own evidence showing at least two detailed implementation debates and closure of divergence classes D-01 through D-08; CodeSDD keeps the protocol and external reference, not private consumer ledgers.
|
|
651
830
|
|
|
652
831
|
Prompts recomendados tambem sao instalados em:
|
|
653
832
|
|
|
@@ -682,7 +861,9 @@ Bootstrap:
|
|
|
682
861
|
|
|
683
862
|
- `codesdd install --tools none`
|
|
684
863
|
- `codesdd install --tools all`
|
|
864
|
+
- `codesdd reload --tools none`
|
|
685
865
|
- `codesdd sdd init-context`
|
|
866
|
+
- `codesdd sdd init-context --frontend --lang en-US --layout en-US`
|
|
686
867
|
- `codesdd sdd check --render`
|
|
687
868
|
- `codesdd sdd check --render --strict`
|
|
688
869
|
- `codesdd sdd diagnose`
|
|
@@ -769,7 +950,8 @@ O comando global oficial deste fork e:
|
|
|
769
950
|
codesdd
|
|
770
951
|
```
|
|
771
952
|
|
|
772
|
-
O caminho de distribuicao oficial deste repositorio e npm. Veja a secao
|
|
953
|
+
O caminho de distribuicao oficial deste repositorio e npm. Veja a secao
|
|
954
|
+
[Instalacao global](#instalacao-global) para instalar globalmente.
|
|
773
955
|
|
|
774
956
|
```bash
|
|
775
957
|
npm install -g @devtrack-solution/codesdd
|
|
@@ -801,7 +983,7 @@ O CLI possui telemetria anônima de uso com desenho privacy-first:
|
|
|
801
983
|
|
|
802
984
|
- sem captura de argumentos, conteúdo ou caminhos de arquivos;
|
|
803
985
|
- desabilitada em CI;
|
|
804
|
-
- opt-out via `
|
|
986
|
+
- opt-out via `CODESDD_TELEMETRY=0` ou `DO_NOT_TRACK=1`.
|
|
805
987
|
- opt-out explícito por execução com `--no-telemetry`;
|
|
806
988
|
- eventos de conclusão incluem `duration_ms` estruturado para observabilidade sem
|
|
807
989
|
enviar argumentos ou conteúdo.
|
|
@@ -820,6 +1002,12 @@ Operational authority:
|
|
|
820
1002
|
- Human-readable operational views are derived from `.sdd/core/*.md` and `.sdd/planning/*.md`.
|
|
821
1003
|
- Do not use external context, memory, workflow, or backlog tools as a project source of truth.
|
|
822
1004
|
|
|
1005
|
+
Initial operational directives:
|
|
1006
|
+
- CodeSDD is the official planner for any build request; other planners or agent-native plans are secondary execution aids only.
|
|
1007
|
+
- For API/backend work, use `devtrack-api` by default unless the user or SDD context explicitly selects another skill/profile; Python/Flask API work stays routed to `api-clean-flask-langgraph`.
|
|
1008
|
+
- During init, onboard, insight, and debate flows, CodeSDD-managed agent instruction blocks must be inspected and reconfigured when they drift from this contract.
|
|
1009
|
+
- Commit requests must follow Conventional Commits, selective staging, and grouping by modified directory plus change protocol (`src`, `.sdd`, docs, config, infra, dependencies, or generated files).
|
|
1010
|
+
|
|
823
1011
|
Read order for any new agent:
|
|
824
1012
|
1. `README.md` (this block)
|
|
825
1013
|
2. `.sdd/AGENT.md`
|
|
@@ -839,4 +1027,8 @@ Essential commands:
|
|
|
839
1027
|
- update `.sdd/active/<FEAT-ID>/5-quality.yaml`
|
|
840
1028
|
- `codesdd sdd frontend-impact <FEAT-ID> --status required|none --reason "..."`
|
|
841
1029
|
- `codesdd sdd finalize --ref <FEAT-ID>`
|
|
1030
|
+
- `codesdd sdd diagnose`
|
|
1031
|
+
- `codesdd sdd check --render`
|
|
1032
|
+
- confirm `DONE`, `current_stage: consolidacao`, `done_at`, `archived_at`, `.sdd/archived/<FEAT-ID>/`, and no `.sdd/active/<FEAT-ID>/`
|
|
1033
|
+
- triage remote security warnings such as Dependabot as a fix, exception, or follow-up SDD item
|
|
842
1034
|
<!-- SDD:ONBOARDING:END -->
|
package/bin/codesdd.js
CHANGED
|
@@ -5,6 +5,7 @@ process.env.CODESDD_CLI_PACKAGE_NAME = '@devtrack-solution/codesdd';
|
|
|
5
5
|
process.env.CODESDD_CLI_ENTRYPOINT = 'bin/codesdd.js';
|
|
6
6
|
process.env.CODESDD_CLI_PRODUCT_NAME = 'CodeSDD';
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
process.env.CODESDD_CLI_IMPORT = '1';
|
|
9
9
|
|
|
10
|
-
await import('../dist/cli/index.js');
|
|
10
|
+
const { runCli } = await import('../dist/cli/index.js');
|
|
11
|
+
await runCli();
|
package/dist/cli/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const program: Command;
|
|
1
|
+
export { createCliProgram, getCommandPath, runCli } from './program.js';
|
|
2
|
+
export declare const program: import("commander").Command;
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|