vstack 3.0.0__tar.gz → 3.1.1__tar.gz
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.
- {vstack-3.0.0 → vstack-3.1.1}/PKG-INFO +87 -12
- {vstack-3.0.0 → vstack-3.1.1}/README-pypi.md +81 -10
- {vstack-3.0.0 → vstack-3.1.1}/pyproject.toml +19 -2
- vstack-3.1.1/src/vstack/_migrations/README.md +44 -0
- vstack-3.1.1/src/vstack/_migrations/v2_to_v3.yaml +39 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/architect/config.yaml +13 -11
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/architect/template.md +2 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/designer/config.yaml +16 -14
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/designer/template.md +2 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/engineer/config.yaml +15 -16
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/engineer/template.md +2 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/product/config.yaml +15 -12
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/product/template.md +2 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/release/config.yaml +10 -7
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/release/template.md +2 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/tester/config.yaml +11 -12
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/tester/template.md +2 -0
- vstack-3.1.1/src/vstack/_templates/project/.vstack/config.yaml +96 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/adr/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/analyse/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/architecture/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/aws-cli/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/cicd/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/cloudformation/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/code-review/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/codeql/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/concise/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/consult/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/container/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/conventional-commit/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/debug/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/dependabot/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/dependency/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/design/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/docs/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/explore/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/gdpr/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/gh-issues/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/gh-release/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/guardrails/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/helm/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/incident/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/inspect/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/k8s/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/migrate/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/onboard/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/openapi/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/performance/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/postmortem/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/pr/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/rancher/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/rca/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/refactor/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/release-notes/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/requirements/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/secret-scan/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/security/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/terraform/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/terragrunt/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/threat-model/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/verify/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/vision/config.yaml +1 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/agents/config.py +1 -1
- vstack-3.1.1/src/vstack/agents/generator.py +355 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/base.py +5 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/catalog.py +10 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/init.py +46 -10
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/interface.py +99 -18
- vstack-3.1.1/src/vstack/cli/migrate.py +232 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/parser.py +31 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/service.py +18 -2
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/uninstall.py +4 -8
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/constants.py +1 -0
- vstack-3.1.1/src/vstack/frontmatter/parser.py +98 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/frontmatter/serializer.py +34 -3
- vstack-3.1.1/src/vstack/manifest/__init__.py +71 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/manifest/store.py +35 -40
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/skills/config.py +2 -0
- vstack-3.1.1/src/vstack/utils.py +20 -0
- vstack-3.0.0/src/vstack/_templates/project/.vstack/config.yaml +0 -28
- vstack-3.0.0/src/vstack/agents/generator.py +0 -194
- vstack-3.0.0/src/vstack/cli/helpers.py +0 -8
- vstack-3.0.0/src/vstack/cli/registry.py +0 -15
- vstack-3.0.0/src/vstack/frontmatter/parser.py +0 -272
- vstack-3.0.0/src/vstack/manifest/__init__.py +0 -25
- {vstack-3.0.0 → vstack-3.1.1}/LICENSE +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/__main__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/_partials/agent-skill-boundary.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/architect/artifacts/adr/NNN-template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/architect/artifacts/overview.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/designer/artifacts/overview.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/engineer/artifacts/issues/postmortem.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/engineer/artifacts/issues/rca.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/product/artifacts/changes/change-request.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/product/artifacts/issues/issue.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/product/artifacts/requirements.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/product/artifacts/roadmap.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/product/artifacts/vision.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/release/artifacts/release-summary.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/tester/artifacts/performance-baseline.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/tester/artifacts/security-report.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/agents/tester/artifacts/test-report.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/git/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/git/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/helm/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/helm/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/java/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/java/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/k8s/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/k8s/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/markdown/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/markdown/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/python/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/python/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/rancher/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/rancher/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/security/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/security/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/terraform/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/terraform/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/terragrunt/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/terragrunt/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/testing/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/testing/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/typescript/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/instructions/typescript/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/api-design-review/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/api-design-review/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/architecture-risk/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/architecture-risk/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/code-review/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/code-review/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/dependency-audit/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/dependency-audit/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/incident-timeline/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/incident-timeline/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/migration-safety/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/migration-safety/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/release-readiness/config.yaml +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/prompts/release-readiness/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/_partials/base-branch.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/_partials/observability-checklist.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/_partials/run-tests.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/_partials/skill-context.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/adr/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/analyse/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/architecture/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/aws-cli/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/cicd/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/cloudformation/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/code-review/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/codeql/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/concise/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/consult/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/container/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/conventional-commit/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/debug/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/dependabot/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/dependency/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/design/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/docs/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/explore/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/gdpr/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/gh-issues/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/gh-release/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/guardrails/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/helm/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/incident/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/inspect/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/k8s/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/migrate/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/onboard/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/openapi/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/performance/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/postmortem/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/pr/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/rancher/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/rca/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/refactor/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/release-notes/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/requirements/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/secret-scan/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/security/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/terraform/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/terragrunt/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/threat-model/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/verify/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/_templates/skills/vision/template.md +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/agents/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/agents/constants.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/artifacts/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/artifacts/config.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/artifacts/constants.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/artifacts/generator.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/artifacts/models.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/artifacts/protocol.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/constants.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/install.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/manifest.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/report.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/status.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/validate.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/cli/verify.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/frontmatter/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/frontmatter/schema.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/instructions/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/instructions/config.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/instructions/constants.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/instructions/generator.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/main.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/models.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/prompts/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/prompts/config.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/prompts/constants.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/prompts/generator.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/skills/__init__.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/skills/constants.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/skills/generator.py +0 -0
- {vstack-3.0.0 → vstack-3.1.1}/src/vstack/skills/models.py +0 -0
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vstack
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.1.1
|
|
4
4
|
Summary: VS Code-native AI engineering workflow system for microservices, libraries, and backend systems.
|
|
5
5
|
License-Expression: MIT
|
|
6
6
|
License-File: LICENSE
|
|
7
|
-
Keywords: github-copilot,vscode,ai-workflows,developer-tools,devx,engineering-workflow,copilot-agent-mode,backend,microservices,api,workflow-automation,release-engineering
|
|
7
|
+
Keywords: github-copilot,vscode,ai-workflows,developer-tools,devx,engineering-workflow,copilot-agent-mode,backend,microservices,api,workflow-automation,release-engineering,agentic-workflow,agentic-ai,ai-agent,llm,llm-agents,prompt-engineering,code-generation,scaffolding,cli,agents
|
|
8
8
|
Requires-Python: >=3.11,<3.15
|
|
9
|
+
Classifier: Development Status :: 4 - Beta
|
|
9
10
|
Classifier: License :: OSI Approved :: MIT License
|
|
10
11
|
Classifier: Programming Language :: Python :: 3
|
|
11
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -15,7 +16,10 @@ Classifier: Programming Language :: Python :: 3.14
|
|
|
15
16
|
Classifier: Environment :: Console
|
|
16
17
|
Classifier: Intended Audience :: Developers
|
|
17
18
|
Classifier: Topic :: Software Development :: Build Tools
|
|
19
|
+
Classifier: Topic :: Software Development :: Code Generators
|
|
18
20
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
21
|
+
Classifier: Topic :: Utilities
|
|
22
|
+
Requires-Dist: pyyaml (>=6.0)
|
|
19
23
|
Project-URL: Changelog, https://github.com/eschaar/vstack/blob/main/CHANGELOG.md
|
|
20
24
|
Project-URL: Documentation, https://github.com/eschaar/vstack/blob/main/README.md
|
|
21
25
|
Project-URL: Discussions, https://github.com/eschaar/vstack/discussions
|
|
@@ -33,7 +37,7 @@ Description-Content-Type: text/markdown
|
|
|
33
37
|
[](https://github.com/eschaar/vstack/blob/main/pyproject.toml)
|
|
34
38
|
[](https://github.com/eschaar/vstack/actions/workflows/verify.yml)
|
|
35
39
|
[](https://github.com/eschaar/vstack/actions/workflows/security.yml)
|
|
36
|
-
[](https://github.com/eschaar/vstack/blob/main/pyproject.toml)
|
|
37
41
|
[](https://github.com/eschaar/vstack/blob/main/LICENSE)
|
|
38
42
|
[](https://github.com/eschaar/vstack/discussions)
|
|
39
43
|
|
|
@@ -54,7 +58,7 @@ It provides a fixed role model for end-to-end software delivery: `product`, `arc
|
|
|
54
58
|
- Fixed role model: `product`, `architect`, `designer`, `engineer`, `tester`, `release`
|
|
55
59
|
- Template-driven install model from `src/vstack/_templates/`
|
|
56
60
|
- Backend-first verification, security, and release discipline
|
|
57
|
-
-
|
|
61
|
+
- One runtime dependency: PyYAML
|
|
58
62
|
|
|
59
63
|
## Building blocks
|
|
60
64
|
|
|
@@ -80,16 +84,23 @@ VS Code command palette (`Chat: Run Prompt File`) or the Copilot Chat attach but
|
|
|
80
84
|
| `migration-safety` | Review DB migration safety, rollback, and zero-downtime |
|
|
81
85
|
| `release-readiness` | Evaluate release readiness from reports and open blockers |
|
|
82
86
|
|
|
83
|
-
##
|
|
87
|
+
## Quickstart — fresh install
|
|
84
88
|
|
|
85
89
|
Install with `pipx`, then install vstack artifacts into your repository:
|
|
86
90
|
|
|
87
91
|
```bash
|
|
92
|
+
# Install the CLI once, globally
|
|
88
93
|
pipx install vstack
|
|
89
|
-
|
|
90
|
-
|
|
94
|
+
|
|
95
|
+
# Move to your repository root and run install — no --target needed
|
|
96
|
+
cd /path/to/your/project
|
|
97
|
+
vstack install # seeds .vstack/config.yaml and generates .github/ in the current directory
|
|
98
|
+
vstack validate # confirm no errors
|
|
91
99
|
```
|
|
92
100
|
|
|
101
|
+
When you omit `--target`, vstack uses the current working directory. The equivalent
|
|
102
|
+
explicit form is `vstack install --target /path/to/your/project`.
|
|
103
|
+
|
|
93
104
|
Run a first task in Copilot Agent Mode:
|
|
94
105
|
|
|
95
106
|
```text
|
|
@@ -101,6 +112,57 @@ Expected result:
|
|
|
101
112
|
- `vstack validate` reports no unresolved template tokens
|
|
102
113
|
- Agent command returns a concrete verification summary for your repository
|
|
103
114
|
|
|
115
|
+
## Quick upgrade
|
|
116
|
+
|
|
117
|
+
### Patch or minor version (e.g. v3.1 → v3.2, same major)
|
|
118
|
+
|
|
119
|
+
Docs paths never change within a major version. Only `.github/` artifacts are updated.
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
pipx upgrade vstack
|
|
123
|
+
|
|
124
|
+
cd /path/to/your/project
|
|
125
|
+
vstack init # idempotent — safe to run in CI
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Major version (e.g. v2 → v3)
|
|
129
|
+
|
|
130
|
+
Docs paths may change on a major version bump. Run `vstack migrate` before `vstack init`.
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
pipx upgrade vstack
|
|
134
|
+
|
|
135
|
+
cd /path/to/your/project
|
|
136
|
+
vstack migrate # moves docs files to their new paths (auto-detects installed version)
|
|
137
|
+
vstack init # regenerates .github/ artifacts
|
|
138
|
+
|
|
139
|
+
# Only if you see "Legacy manifest schema detected" in the output above:
|
|
140
|
+
vstack manifest upgrade
|
|
141
|
+
vstack init
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Preview the docs moves without touching any files:
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
vstack migrate --dry-run
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
For upgrades spanning multiple major versions (e.g. v1 → v3), `vstack migrate` chains
|
|
151
|
+
all intermediate steps automatically. Use `--from` and `--to` to specify the range
|
|
152
|
+
explicitly if auto-detection from the manifest fails:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
vstack migrate --from 1 --to 3
|
|
156
|
+
vstack init
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Force reinstall (overwrite local edits)
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
vstack install --force # overwrite all managed artifacts
|
|
163
|
+
vstack install --force-name agent/engineer # overwrite one specific artifact
|
|
164
|
+
```
|
|
165
|
+
|
|
104
166
|
## Why this helps
|
|
105
167
|
|
|
106
168
|
- Consistent role boundaries for planning, implementation, validation, and release
|
|
@@ -112,10 +174,17 @@ Expected result:
|
|
|
112
174
|
```bash
|
|
113
175
|
vstack --version
|
|
114
176
|
vstack validate
|
|
177
|
+
|
|
178
|
+
# Run from your repository root (--target defaults to the current directory)
|
|
179
|
+
vstack install
|
|
180
|
+
vstack init
|
|
181
|
+
vstack migrate
|
|
182
|
+
vstack manifest verify
|
|
183
|
+
vstack manifest status
|
|
184
|
+
vstack manifest upgrade
|
|
185
|
+
|
|
186
|
+
# Or specify a path explicitly
|
|
115
187
|
vstack install --target /path/to/your/project
|
|
116
|
-
vstack manifest verify --target /path/to/your/project
|
|
117
|
-
vstack manifest status --target /path/to/your/project
|
|
118
|
-
vstack manifest upgrade --target /path/to/your/project
|
|
119
188
|
```
|
|
120
189
|
|
|
121
190
|
## Common usage patterns
|
|
@@ -123,6 +192,11 @@ vstack manifest upgrade --target /path/to/your/project
|
|
|
123
192
|
Repository-scoped install (recommended for teams):
|
|
124
193
|
|
|
125
194
|
```bash
|
|
195
|
+
# Move to your repository root and install there
|
|
196
|
+
cd /path/to/your/project
|
|
197
|
+
vstack install
|
|
198
|
+
|
|
199
|
+
# Or specify a path explicitly from any directory
|
|
126
200
|
vstack install --target /path/to/your/project
|
|
127
201
|
```
|
|
128
202
|
|
|
@@ -149,7 +223,8 @@ exclude:
|
|
|
149
223
|
If you already have agents, skills, or other files in `.github/`, run a dry-run first to see what would be preserved before committing:
|
|
150
224
|
|
|
151
225
|
```bash
|
|
152
|
-
|
|
226
|
+
# Run from your repository root
|
|
227
|
+
vstack install --dry-run
|
|
153
228
|
```
|
|
154
229
|
|
|
155
230
|
The summary lists preserved files as `type/name` selectors (e.g. `agent/engineer`). Resolve each conflict with `--force-name type/name` to overwrite, `--adopt-name type/name` to take ownership without overwriting, or `--force` to overwrite everything.
|
|
@@ -157,7 +232,7 @@ The summary lists preserved files as `type/name` selectors (e.g. `agent/engineer
|
|
|
157
232
|
## Fast troubleshooting
|
|
158
233
|
|
|
159
234
|
- Command not found after install: ensure your `pipx` binary path is in `PATH`
|
|
160
|
-
- Validation error: rerun `vstack install
|
|
235
|
+
- Validation error: rerun `vstack install` from your repository root and then `vstack validate`
|
|
161
236
|
- Agent results look generic: explicitly invoke a role (for example `@tester`) before a skill
|
|
162
237
|
|
|
163
238
|
## Full documentation
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
[](https://github.com/eschaar/vstack/blob/main/pyproject.toml)
|
|
7
7
|
[](https://github.com/eschaar/vstack/actions/workflows/verify.yml)
|
|
8
8
|
[](https://github.com/eschaar/vstack/actions/workflows/security.yml)
|
|
9
|
-
[](https://github.com/eschaar/vstack/blob/main/pyproject.toml)
|
|
10
10
|
[](https://github.com/eschaar/vstack/blob/main/LICENSE)
|
|
11
11
|
[](https://github.com/eschaar/vstack/discussions)
|
|
12
12
|
|
|
@@ -27,7 +27,7 @@ It provides a fixed role model for end-to-end software delivery: `product`, `arc
|
|
|
27
27
|
- Fixed role model: `product`, `architect`, `designer`, `engineer`, `tester`, `release`
|
|
28
28
|
- Template-driven install model from `src/vstack/_templates/`
|
|
29
29
|
- Backend-first verification, security, and release discipline
|
|
30
|
-
-
|
|
30
|
+
- One runtime dependency: PyYAML
|
|
31
31
|
|
|
32
32
|
## Building blocks
|
|
33
33
|
|
|
@@ -53,16 +53,23 @@ VS Code command palette (`Chat: Run Prompt File`) or the Copilot Chat attach but
|
|
|
53
53
|
| `migration-safety` | Review DB migration safety, rollback, and zero-downtime |
|
|
54
54
|
| `release-readiness` | Evaluate release readiness from reports and open blockers |
|
|
55
55
|
|
|
56
|
-
##
|
|
56
|
+
## Quickstart — fresh install
|
|
57
57
|
|
|
58
58
|
Install with `pipx`, then install vstack artifacts into your repository:
|
|
59
59
|
|
|
60
60
|
```bash
|
|
61
|
+
# Install the CLI once, globally
|
|
61
62
|
pipx install vstack
|
|
62
|
-
|
|
63
|
-
|
|
63
|
+
|
|
64
|
+
# Move to your repository root and run install — no --target needed
|
|
65
|
+
cd /path/to/your/project
|
|
66
|
+
vstack install # seeds .vstack/config.yaml and generates .github/ in the current directory
|
|
67
|
+
vstack validate # confirm no errors
|
|
64
68
|
```
|
|
65
69
|
|
|
70
|
+
When you omit `--target`, vstack uses the current working directory. The equivalent
|
|
71
|
+
explicit form is `vstack install --target /path/to/your/project`.
|
|
72
|
+
|
|
66
73
|
Run a first task in Copilot Agent Mode:
|
|
67
74
|
|
|
68
75
|
```text
|
|
@@ -74,6 +81,57 @@ Expected result:
|
|
|
74
81
|
- `vstack validate` reports no unresolved template tokens
|
|
75
82
|
- Agent command returns a concrete verification summary for your repository
|
|
76
83
|
|
|
84
|
+
## Quick upgrade
|
|
85
|
+
|
|
86
|
+
### Patch or minor version (e.g. v3.1 → v3.2, same major)
|
|
87
|
+
|
|
88
|
+
Docs paths never change within a major version. Only `.github/` artifacts are updated.
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
pipx upgrade vstack
|
|
92
|
+
|
|
93
|
+
cd /path/to/your/project
|
|
94
|
+
vstack init # idempotent — safe to run in CI
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Major version (e.g. v2 → v3)
|
|
98
|
+
|
|
99
|
+
Docs paths may change on a major version bump. Run `vstack migrate` before `vstack init`.
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
pipx upgrade vstack
|
|
103
|
+
|
|
104
|
+
cd /path/to/your/project
|
|
105
|
+
vstack migrate # moves docs files to their new paths (auto-detects installed version)
|
|
106
|
+
vstack init # regenerates .github/ artifacts
|
|
107
|
+
|
|
108
|
+
# Only if you see "Legacy manifest schema detected" in the output above:
|
|
109
|
+
vstack manifest upgrade
|
|
110
|
+
vstack init
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Preview the docs moves without touching any files:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
vstack migrate --dry-run
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
For upgrades spanning multiple major versions (e.g. v1 → v3), `vstack migrate` chains
|
|
120
|
+
all intermediate steps automatically. Use `--from` and `--to` to specify the range
|
|
121
|
+
explicitly if auto-detection from the manifest fails:
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
vstack migrate --from 1 --to 3
|
|
125
|
+
vstack init
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Force reinstall (overwrite local edits)
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
vstack install --force # overwrite all managed artifacts
|
|
132
|
+
vstack install --force-name agent/engineer # overwrite one specific artifact
|
|
133
|
+
```
|
|
134
|
+
|
|
77
135
|
## Why this helps
|
|
78
136
|
|
|
79
137
|
- Consistent role boundaries for planning, implementation, validation, and release
|
|
@@ -85,10 +143,17 @@ Expected result:
|
|
|
85
143
|
```bash
|
|
86
144
|
vstack --version
|
|
87
145
|
vstack validate
|
|
146
|
+
|
|
147
|
+
# Run from your repository root (--target defaults to the current directory)
|
|
148
|
+
vstack install
|
|
149
|
+
vstack init
|
|
150
|
+
vstack migrate
|
|
151
|
+
vstack manifest verify
|
|
152
|
+
vstack manifest status
|
|
153
|
+
vstack manifest upgrade
|
|
154
|
+
|
|
155
|
+
# Or specify a path explicitly
|
|
88
156
|
vstack install --target /path/to/your/project
|
|
89
|
-
vstack manifest verify --target /path/to/your/project
|
|
90
|
-
vstack manifest status --target /path/to/your/project
|
|
91
|
-
vstack manifest upgrade --target /path/to/your/project
|
|
92
157
|
```
|
|
93
158
|
|
|
94
159
|
## Common usage patterns
|
|
@@ -96,6 +161,11 @@ vstack manifest upgrade --target /path/to/your/project
|
|
|
96
161
|
Repository-scoped install (recommended for teams):
|
|
97
162
|
|
|
98
163
|
```bash
|
|
164
|
+
# Move to your repository root and install there
|
|
165
|
+
cd /path/to/your/project
|
|
166
|
+
vstack install
|
|
167
|
+
|
|
168
|
+
# Or specify a path explicitly from any directory
|
|
99
169
|
vstack install --target /path/to/your/project
|
|
100
170
|
```
|
|
101
171
|
|
|
@@ -122,7 +192,8 @@ exclude:
|
|
|
122
192
|
If you already have agents, skills, or other files in `.github/`, run a dry-run first to see what would be preserved before committing:
|
|
123
193
|
|
|
124
194
|
```bash
|
|
125
|
-
|
|
195
|
+
# Run from your repository root
|
|
196
|
+
vstack install --dry-run
|
|
126
197
|
```
|
|
127
198
|
|
|
128
199
|
The summary lists preserved files as `type/name` selectors (e.g. `agent/engineer`). Resolve each conflict with `--force-name type/name` to overwrite, `--adopt-name type/name` to take ownership without overwriting, or `--force` to overwrite everything.
|
|
@@ -130,7 +201,7 @@ The summary lists preserved files as `type/name` selectors (e.g. `agent/engineer
|
|
|
130
201
|
## Fast troubleshooting
|
|
131
202
|
|
|
132
203
|
- Command not found after install: ensure your `pipx` binary path is in `PATH`
|
|
133
|
-
- Validation error: rerun `vstack install
|
|
204
|
+
- Validation error: rerun `vstack install` from your repository root and then `vstack validate`
|
|
134
205
|
- Agent results look generic: explicitly invoke a role (for example `@tester`) before a skill
|
|
135
206
|
|
|
136
207
|
## Full documentation
|
|
@@ -5,7 +5,7 @@ description = "VS Code-native AI engineering workflow system for microservices,
|
|
|
5
5
|
license = "MIT"
|
|
6
6
|
readme = "README-pypi.md"
|
|
7
7
|
requires-python = ">=3.11,<3.15"
|
|
8
|
-
dependencies = []
|
|
8
|
+
dependencies = ["pyyaml>=6.0"]
|
|
9
9
|
keywords = [
|
|
10
10
|
"github-copilot",
|
|
11
11
|
"vscode",
|
|
@@ -19,8 +19,19 @@ keywords = [
|
|
|
19
19
|
"api",
|
|
20
20
|
"workflow-automation",
|
|
21
21
|
"release-engineering",
|
|
22
|
+
"agentic-workflow",
|
|
23
|
+
"agentic-ai",
|
|
24
|
+
"ai-agent",
|
|
25
|
+
"llm",
|
|
26
|
+
"llm-agents",
|
|
27
|
+
"prompt-engineering",
|
|
28
|
+
"code-generation",
|
|
29
|
+
"scaffolding",
|
|
30
|
+
"cli",
|
|
31
|
+
"agents",
|
|
22
32
|
]
|
|
23
33
|
classifiers = [
|
|
34
|
+
"Development Status :: 4 - Beta",
|
|
24
35
|
"License :: OSI Approved :: MIT License",
|
|
25
36
|
"Programming Language :: Python :: 3",
|
|
26
37
|
"Programming Language :: Python :: 3.11",
|
|
@@ -30,9 +41,11 @@ classifiers = [
|
|
|
30
41
|
"Environment :: Console",
|
|
31
42
|
"Intended Audience :: Developers",
|
|
32
43
|
"Topic :: Software Development :: Build Tools",
|
|
44
|
+
"Topic :: Software Development :: Code Generators",
|
|
33
45
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
46
|
+
"Topic :: Utilities",
|
|
34
47
|
]
|
|
35
|
-
version = "3.
|
|
48
|
+
version = "3.1.1"
|
|
36
49
|
|
|
37
50
|
[project.urls]
|
|
38
51
|
Homepage = "https://github.com/eschaar/vstack"
|
|
@@ -55,6 +68,7 @@ vstack = "vstack:main"
|
|
|
55
68
|
packages = [{include = "vstack", from = "src"}]
|
|
56
69
|
include = [
|
|
57
70
|
{ path = "src/vstack/_templates", format = ["sdist", "wheel"] },
|
|
71
|
+
{ path = "src/vstack/_migrations", format = ["sdist", "wheel"] },
|
|
58
72
|
]
|
|
59
73
|
# Keep the placeholder version last because the plugin may remove/re-add it in
|
|
60
74
|
# PEP 621 mode, which otherwise causes noisy key reordering.
|
|
@@ -69,6 +83,7 @@ ruff = ">=0.15.12"
|
|
|
69
83
|
mypy = ">=1.20.2"
|
|
70
84
|
pre-commit = ">=4.6.0"
|
|
71
85
|
tox = ">=4.15"
|
|
86
|
+
types-PyYAML = ">=6.0"
|
|
72
87
|
|
|
73
88
|
|
|
74
89
|
# ---------------------------------------------------------------------------
|
|
@@ -163,6 +178,7 @@ package = skip
|
|
|
163
178
|
deps =
|
|
164
179
|
pytest>=9.0
|
|
165
180
|
pytest-cov>=6.0
|
|
181
|
+
pyyaml>=6.0
|
|
166
182
|
setenv =
|
|
167
183
|
PYTHONPATH = {tox_root}/src
|
|
168
184
|
commands =
|
|
@@ -181,6 +197,7 @@ description = Run mypy type checks
|
|
|
181
197
|
package = skip
|
|
182
198
|
deps =
|
|
183
199
|
mypy>=1.20
|
|
200
|
+
types-PyYAML>=6.0
|
|
184
201
|
commands =
|
|
185
202
|
mypy src tests
|
|
186
203
|
"""
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# vstack migration records
|
|
2
|
+
|
|
3
|
+
This directory contains machine-readable migration records for `docs/` artifact path
|
|
4
|
+
changes across major vstack version boundaries.
|
|
5
|
+
|
|
6
|
+
Each file covers one major version transition and is named `v{M}_to_v{N}.yaml` where
|
|
7
|
+
`M` is the source major version and `N` is the target major version.
|
|
8
|
+
|
|
9
|
+
These files are read by `vstack migrate` to relocate agent-owned docs files when their
|
|
10
|
+
paths change between major versions.
|
|
11
|
+
|
|
12
|
+
## Usage
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
vstack migrate [--target <dir>] [--from <major>] [--to <major>] [--dry-run]
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Run from the project root (or pass `--target`) after upgrading vstack to a new major
|
|
19
|
+
version. The command chains all necessary migration steps between the installed major
|
|
20
|
+
and the current package major.
|
|
21
|
+
|
|
22
|
+
| Flag | Description |
|
|
23
|
+
| ---------------- | --------------------------------------------------------------- |
|
|
24
|
+
| `--target <dir>` | Project root to migrate (default: current directory) |
|
|
25
|
+
| `--from <major>` | Source major version (default: read from `.vstack/vstack.json`) |
|
|
26
|
+
| `--to <major>` | Target major version (default: current vstack package major) |
|
|
27
|
+
| `--dry-run` | Print moves without touching the filesystem |
|
|
28
|
+
|
|
29
|
+
`vstack migrate` only moves files that exist at the old path; absent files are silently
|
|
30
|
+
skipped. It reads `artifacts.root` from `.vstack/config.yaml` and adjusts destination
|
|
31
|
+
paths when the project uses a custom docs root.
|
|
32
|
+
|
|
33
|
+
## Schema
|
|
34
|
+
|
|
35
|
+
```yaml
|
|
36
|
+
from_version: "3.x" # semver range for the source version
|
|
37
|
+
to_version: "4.0" # first minor of the target major
|
|
38
|
+
moves:
|
|
39
|
+
- old: docs/path/old.md # path relative to project root
|
|
40
|
+
new: docs/path/new.md # path relative to project root
|
|
41
|
+
type: docs # always "docs" for this directory
|
|
42
|
+
notes: > # optional: human-readable explanation
|
|
43
|
+
Why this path changed and what to do with the old file after migration.
|
|
44
|
+
```
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
from_version: "2.x"
|
|
2
|
+
to_version: "3.0"
|
|
3
|
+
moves:
|
|
4
|
+
- old: docs/architecture/architecture.md
|
|
5
|
+
new: docs/architecture/overview.md
|
|
6
|
+
type: docs
|
|
7
|
+
notes: >
|
|
8
|
+
architect role primary output renamed from architecture.md to overview.md
|
|
9
|
+
in v3 to align with the generic overview.md convention used by all roles.
|
|
10
|
+
Content is the same — only the filename changed.
|
|
11
|
+
|
|
12
|
+
- old: docs/design/design.md
|
|
13
|
+
new: docs/design/overview.md
|
|
14
|
+
type: docs
|
|
15
|
+
notes: >
|
|
16
|
+
designer role primary output renamed from design.md to overview.md in v3
|
|
17
|
+
to align with the generic overview.md convention used by all roles.
|
|
18
|
+
Content is the same — only the filename changed.
|
|
19
|
+
|
|
20
|
+
- old: docs/test-report.md
|
|
21
|
+
new: docs/reports/test-report.md
|
|
22
|
+
type: docs
|
|
23
|
+
notes: >
|
|
24
|
+
tester role reports moved from the docs/ root into docs/reports/ in v3.
|
|
25
|
+
This groups all tester outputs under a single subdirectory.
|
|
26
|
+
|
|
27
|
+
- old: docs/security-report.md
|
|
28
|
+
new: docs/reports/security-report.md
|
|
29
|
+
type: docs
|
|
30
|
+
notes: >
|
|
31
|
+
tester role reports moved from the docs/ root into docs/reports/ in v3.
|
|
32
|
+
This groups all tester outputs under a single subdirectory.
|
|
33
|
+
|
|
34
|
+
- old: docs/performance-baseline.md
|
|
35
|
+
new: docs/reports/performance-baseline.md
|
|
36
|
+
type: docs
|
|
37
|
+
notes: >
|
|
38
|
+
tester role reports moved from the docs/ root into docs/reports/ in v3.
|
|
39
|
+
This groups all tester outputs under a single subdirectory.
|
|
@@ -11,6 +11,7 @@ tools:
|
|
|
11
11
|
- read
|
|
12
12
|
- search
|
|
13
13
|
- edit
|
|
14
|
+
- execute
|
|
14
15
|
- web
|
|
15
16
|
- vscode
|
|
16
17
|
- todo
|
|
@@ -20,22 +21,23 @@ model:
|
|
|
20
21
|
- GPT-5.3-Codex (copilot)
|
|
21
22
|
- Claude Opus 4.7 (copilot)
|
|
22
23
|
agents: ["*"]
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
target: vscode
|
|
25
|
+
defaults:
|
|
26
|
+
handoffs:
|
|
26
27
|
prompt: >
|
|
27
28
|
Architecture outputs are approved. Assess the current state and produce
|
|
28
29
|
design specifications as needed. If your domain is not affected by
|
|
29
30
|
this change, assess and confirm that explicitly, then pass through to
|
|
30
31
|
the next stage.
|
|
31
|
-
artifacts:
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
32
|
+
artifacts:
|
|
33
|
+
dir: architecture
|
|
34
|
+
input:
|
|
35
|
+
- product/**/*.md
|
|
36
|
+
output:
|
|
37
|
+
- path: overview.md
|
|
38
|
+
baseline: true
|
|
39
|
+
- path: adr/*.md
|
|
40
|
+
baseline: true
|
|
39
41
|
user-invocable: true
|
|
40
42
|
|
|
41
43
|
# Optional when needed:
|
|
@@ -105,6 +105,8 @@ what work is needed:
|
|
|
105
105
|
|
|
106
106
|
{{AGENT_ARTIFACTS_OUTPUT}}
|
|
107
107
|
|
|
108
|
+
{{AGENT_ARTIFACTS_BASELINE}}
|
|
109
|
+
|
|
108
110
|
Agents do not write to artifacts owned by other roles. If you discover something
|
|
109
111
|
that requires changes to upstream artifacts, flag it and trigger a reverse handoff.
|
|
110
112
|
|
|
@@ -10,6 +10,7 @@ tools:
|
|
|
10
10
|
- read
|
|
11
11
|
- search
|
|
12
12
|
- edit
|
|
13
|
+
- execute
|
|
13
14
|
- web
|
|
14
15
|
- vscode
|
|
15
16
|
- todo
|
|
@@ -18,26 +19,27 @@ model:
|
|
|
18
19
|
- Claude Sonnet 4.6 (copilot)
|
|
19
20
|
- GPT-5.3-Codex (copilot)
|
|
20
21
|
agents: ["*"]
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
target: vscode
|
|
23
|
+
defaults:
|
|
24
|
+
handoffs:
|
|
24
25
|
prompt: >
|
|
25
26
|
Design outputs are approved. Assess the current state and implement
|
|
26
27
|
code and tests as needed. If your domain is not affected by this
|
|
27
28
|
change, assess and confirm that explicitly, then pass through to
|
|
28
29
|
engineering. If working on an issue, document findings in RCA or
|
|
29
30
|
post-mortem artifacts as relevant.
|
|
30
|
-
artifacts:
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
31
|
+
artifacts:
|
|
32
|
+
dir: design
|
|
33
|
+
input:
|
|
34
|
+
- architecture/**/*.md
|
|
35
|
+
output:
|
|
36
|
+
- path: overview.md
|
|
37
|
+
baseline: true
|
|
38
|
+
- path: ux.md
|
|
39
|
+
baseline: true
|
|
40
|
+
notes: frontend/fullstack scope only
|
|
41
|
+
- path: "**/*.md"
|
|
42
|
+
notes: additional detail docs per component, model, system, or domain (when scope warrants it)
|
|
41
43
|
user-invocable: true
|
|
42
44
|
|
|
43
45
|
# Optional when needed:
|
|
@@ -121,6 +121,8 @@ what work is needed:
|
|
|
121
121
|
|
|
122
122
|
{{AGENT_ARTIFACTS_OUTPUT}}
|
|
123
123
|
|
|
124
|
+
{{AGENT_ARTIFACTS_BASELINE}}
|
|
125
|
+
|
|
124
126
|
Agents do not write to artifacts owned by other roles. If you discover something
|
|
125
127
|
that requires changes to upstream artifacts, flag it and trigger a reverse handoff.
|
|
126
128
|
|
|
@@ -19,28 +19,27 @@ model:
|
|
|
19
19
|
- GPT-5.3-Codex (copilot)
|
|
20
20
|
- Claude Sonnet 4.6 (copilot)
|
|
21
21
|
agents: ["*"]
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
target: vscode
|
|
23
|
+
defaults:
|
|
24
|
+
handoffs:
|
|
25
25
|
prompt: >
|
|
26
26
|
Implementation is approved. Assess the current state and verify the
|
|
27
27
|
implementation as needed — run tests, security checks, and performance
|
|
28
28
|
analysis. If this is an issue (bug, problem, or incident), also produce
|
|
29
29
|
or update an RCA and, if stakeholder impact is significant, a
|
|
30
30
|
post-mortem.
|
|
31
|
-
artifacts:
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
target: vscode
|
|
31
|
+
artifacts:
|
|
32
|
+
input:
|
|
33
|
+
- product/**/*.md
|
|
34
|
+
- architecture/**/*.md
|
|
35
|
+
- design/**/*.md
|
|
36
|
+
output:
|
|
37
|
+
- path: ./src/**/*
|
|
38
|
+
- path: ./tests/**/*
|
|
39
|
+
- path: ./issues/{id}-{slug}-rca.md
|
|
40
|
+
notes: when working on an issue
|
|
41
|
+
- path: ./issues/{id}-{slug}-postmortem.md
|
|
42
|
+
notes: when stakeholder impact is significant
|
|
44
43
|
user-invocable: true
|
|
45
44
|
|
|
46
45
|
# Optional when needed:
|
|
@@ -112,6 +112,8 @@ what work is needed:
|
|
|
112
112
|
|
|
113
113
|
{{AGENT_ARTIFACTS_OUTPUT}}
|
|
114
114
|
|
|
115
|
+
{{AGENT_ARTIFACTS_BASELINE}}
|
|
116
|
+
|
|
115
117
|
Agents do not write to artifacts owned by other roles. If you discover something
|
|
116
118
|
that requires changes to upstream artifacts, flag it and trigger a reverse handoff.
|
|
117
119
|
|