agentic-devtools 0.2.74__tar.gz → 0.2.75__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.
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/create-spec-pr.sh +39 -2
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/speckit-issue-trigger.yml +1 -1
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/speckit-phase-progression.yml +1 -1
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/PKG-INFO +1 -1
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/_version.py +2 -2
- agentic_devtools-0.2.75/specs/1326-improve-error-handling-and/checklists/requirements.md +73 -0
- agentic_devtools-0.2.75/specs/1326-improve-error-handling-and/spec.md +356 -0
- agentic_devtools-0.2.74/specs/1326-improve-error-handling-and/spec.md +0 -171
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.devcontainer/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.devcontainer/devcontainer.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/ISSUE_TEMPLATE/speckit-test.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/MARKDOWN_LINTING.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.add-jira-comment.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.add-pull-request-comment.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.add-users-to-project-role-batch.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.add-users-to-project-role.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.address-copilot-review.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.advance-workflow.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.analyze-workflow.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.apply-pr-suggestions.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.approve-file.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.approve-pull-request.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.autonomous-issue-refinement.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.azure-context-current.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.azure-context-ensure-login.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.azure-context-status.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.azure-context-use.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.break-down-issue-into-subtasks.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.check-user-exists.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.check-users-exist.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.clear-workflow.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.clear.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.confirm-suggestion-addressed.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.copilot-auto-start.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-agdt-bug-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-agdt-documentation-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-agdt-feature-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-agdt-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-agdt-task-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-checklist.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-epic.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-issues-from-analysis.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-jira-epic.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-jira-issue.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-jira-subtask.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-pipeline.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-pull-request.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.create-subtask.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.delete.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.find-role-id-by-name.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-jira-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-next-workflow-prompt.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-pipeline-id.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-project-role-details.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-pull-request-details.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-pull-request-threads.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-run-details.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get-workflow.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.get.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.git-force-push.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.git-publish.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.git-push.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.git-save-work.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.git-stage.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.git-sync.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.list-pipelines.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.list-project-roles.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.mark-file-reviewed.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.mark-pull-request-draft.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.network-status.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.optimize-issue-for-ai-agent.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.parse-jira-error-report.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.pr-merge-manager.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.publish-pull-request.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.pull-request-review.completion.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.pull-request-review.decision.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.pull-request-review.file-review.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.pull-request-review.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.query-app-insights.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.query-fabric-dap-errors.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.query-fabric-dap-provisioning.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.query-fabric-dap-timeline.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.reject-suggestion-resolution.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.release-pypi.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.reply-to-pull-request-thread.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.request-changes-with-suggestion.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.request-changes.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.resolve-merge-conflicts.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.resolve-thread.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.review.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.run-e2e-tests-fabric.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.run-e2e-tests-synapse.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.run-wb-patch.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.set.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.setup-certs.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.setup-check.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.setup-copilot-cli.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.setup-gh-cli.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.setup-worktree-background.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.setup.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.show-checklist.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.show-other-incomplete-tasks.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.show.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.squash-commits.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.submit-file-review.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.task-log.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.task-status.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.task-wait.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.tasks-clean.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.tasks.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.test-file.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.test-pattern.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.test-quick.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.test.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.update-checklist.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.update-jira-issue.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.update-jira-issue.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.update-pipeline.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.vpn-off.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.vpn-on.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.vpn-run.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.vpn-status.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.wait-for-run.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.checklist-creation.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.commit.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.completion.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.implementation-review.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.implementation.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.initiate.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.planning.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.pull-request.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.retrieve.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.setup.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/agdt.work-on-jira-issue.verification.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/copilot-instructions.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/security-scan.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/senior-python-developer.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.analyze.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.checklist.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.clarify.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.constitution.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.implement.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.plan.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.specify.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.tasks.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/agents/speckit.taskstoissues.agent.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/copilot-instructions.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.add-jira-comment.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.add-pull-request-comment.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.add-users-to-project-role-batch.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.add-users-to-project-role.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.address-copilot-review.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.advance-workflow.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.analyze-workflow.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.apply-pr-suggestions.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.approve-file.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.approve-pull-request.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.autonomous-issue-refinement.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.azure-context-current.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.azure-context-ensure-login.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.azure-context-status.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.azure-context-use.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.break-down-issue-into-subtasks.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.check-user-exists.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.check-users-exist.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.clear-workflow.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.clear.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.confirm-suggestion-addressed.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.copilot-auto-start.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-agdt-bug-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-agdt-documentation-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-agdt-feature-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-agdt-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-agdt-task-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-checklist.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-epic.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-issues-from-analysis.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-jira-epic.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-jira-issue.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-jira-subtask.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-pipeline.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-pull-request.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.create-subtask.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.delete.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.find-role-id-by-name.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-jira-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-next-workflow-prompt.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-pipeline-id.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-project-role-details.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-pull-request-details.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-pull-request-threads.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-run-details.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get-workflow.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.get.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.git-force-push.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.git-publish.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.git-push.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.git-save-work.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.git-stage.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.git-sync.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.list-pipelines.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.list-project-roles.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.mark-file-reviewed.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.mark-pull-request-draft.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.network-status.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.optimize-issue-for-ai-agent.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.parse-jira-error-report.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.pr-merge-manager.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.publish-pull-request.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.pull-request-review.completion.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.pull-request-review.decision.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.pull-request-review.file-review.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.pull-request-review.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.query-app-insights.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.query-fabric-dap-errors.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.query-fabric-dap-provisioning.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.query-fabric-dap-timeline.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.reject-suggestion-resolution.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.release-pypi.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.reply-to-pull-request-thread.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.request-changes-with-suggestion.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.request-changes.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.resolve-merge-conflicts.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.resolve-thread.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.review.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.run-e2e-tests-fabric.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.run-e2e-tests-synapse.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.run-wb-patch.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.set.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.setup-certs.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.setup-check.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.setup-copilot-cli.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.setup-gh-cli.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.setup-worktree-background.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.setup.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.show-checklist.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.show-other-incomplete-tasks.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.show.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.squash-commits.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.submit-file-review.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.task-log.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.task-status.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.task-wait.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.tasks-clean.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.tasks.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.test-file.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.test-pattern.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.test-quick.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.test.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.update-checklist.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.update-jira-issue.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.update-jira-issue.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.update-pipeline.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.vpn-off.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.vpn-on.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.vpn-run.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.vpn-status.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.wait-for-run.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.checklist-creation.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.commit.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.completion.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.implementation-review.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.implementation.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.initiate.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.planning.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.pull-request.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.retrieve.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.setup.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/agdt.work-on-jira-issue.verification.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.analyze.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.checklist.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.clarify.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.constitution.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.implement.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.plan.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.specify.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.tasks.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/prompts/speckit.taskstoissues.prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/check-analysis-gate-cli.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/check-analysis-gate.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/check-idempotency.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/copilot_generate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/enforce_budget.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fix_markdown_deterministic.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-dynamic-header.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-empty.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-formatting-variants.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-malformed-no-table.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-metrics-zero-but-table-critical.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-mixed-resolved-unresolved.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-no-criticals.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-strikethrough-no-resolved.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-with-criticals.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/analysis-report-with-resolved-criticals.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/content-preservation/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/content-preservation/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/long-line.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/missing-heading.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/fixtures/trailing-whitespace.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/generate-spec-from-issue.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/post-issue-comment.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/sanitize-branch-name.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/templates/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/templates/already-processed.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/templates/completed.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/templates/failed.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/templates/spec-markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/templates/started.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/test_check_analysis_gate.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/test_content_preservation.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/test_markdownlint_validation.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/test_sc004_regression.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/validate-label.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/scripts/speckit-trigger/wrap_markdown_lines.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/auto-fix-on-failure.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/copilot-review-gate.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/copilot-setup-steps.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/lint.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/publish.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/release.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/scripts/check-release-exists.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/scripts/create-github-release.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/scripts/create-release-packages.ps1 +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/scripts/create-release-packages.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/scripts/generate-release-notes.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/scripts/get-next-version.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/scripts/update-version.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/security-scan-on-merge.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/speckit-implement-trigger.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/test.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/workflow-tests.yml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.gitignore +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.markdownlint-cli2.jsonc +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.push-trigger +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/SDD_QUICK_REFERENCE.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/memory/constitution.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/memory/markdown-rules.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/bash/check-prerequisites.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/bash/common.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/bash/create-new-feature.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/bash/setup-plan.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/bash/update-agent-context.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/powershell/check-prerequisites.ps1 +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/powershell/common.ps1 +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/powershell/create-new-feature.ps1 +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/powershell/setup-plan.ps1 +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/scripts/powershell/update-agent-context.ps1 +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/agent-file-template.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/checklist-template.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/analyze.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/checklist.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/clarify.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/constitution.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/implement.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/specify.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/commands/taskstoissues.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/plan-template.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/spec-template.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/tasks-template.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.specify/templates/vscode-settings.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.work-folder-info +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/AUDIT-LOG.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/CHANGELOG.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/COMMIT_CONVENTION.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/CONTRIBUTING.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/LICENSE +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/PR_DESCRIPTION.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/PR_INSTRUCTIONS.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/RELEASING.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/SECURITY_SCANNING.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/SOLUTION_SUMMARY.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/SPEC_DRIVEN_DEVELOPMENT.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/_bundled_skills/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/_bundled_skills/agents/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/_bundled_skills/prompts/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/_bundled_skills/workflow-analysis/SKILL.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/adapters/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/adapters/base.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/adapters/github_adapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/adapters/jira_adapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/adapters/markdown_adapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/agdt_gitignore.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/background_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/activity_log.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/analysis/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/analysis/context_resolver.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/analysis/external_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/analysis/identity_scanner.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure/app_insights_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure/auth.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure/config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_context/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_context/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_context/config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_context/management.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/approve_files.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/async_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/auth.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/batch_review_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/file_review_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/mark_reviewed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/marker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/pipeline_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/pr_summary_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/pull_request_details_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/request_changes_batch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_attribution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_jira.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_models_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_prompts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_scaffold.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/review_templates.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/run_details_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/status_cascade.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/suggestion_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/suggestion_verification.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/verdict_protocol.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/azure_devops/vpn_toggle.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/cert_utils.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/config/project_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/copilot/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/copilot/auto_start.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/copilot/session.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/git/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/git/agdt_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/git/async_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/git/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/git/core.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/git/diff.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/git/operations.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/async_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/copilot_review_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/issue_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/pr_approve.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/pr_checks_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/pr_merge.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/pr_poll_ready.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/pr_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/repo_resolution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/request_copilot_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/rerun_checks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/resolve_review_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/review_reply.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/github/state_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/adf.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/async_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/async_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/comment_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/create_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/formatting.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/get_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/parse_error_report.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/role_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/state_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/update_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/jira/vpn_wrapper.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/network/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/network/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/network/detection.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/release/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/release/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/release/helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/review/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/review/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/review/config_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/review/consolidate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/review/dispatch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/review/status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/runner.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/copilot_cli_installer.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/dependency_checker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/gh_cli_installer.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/platform_detection.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/pr_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/shell_profile.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/templates/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/templates/review-pr.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/templates/work-on-issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/setup/workflow_templates.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/cross_ref.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/constants.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/coverage_mapper.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/models.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/reporter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/spec_parser.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/task_classifier.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_e2/validator.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/classifier.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/constants.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/extractors/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/extractors/base.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/extractors/python_extractor.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/intent_detector.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/inventory.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/matcher.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/models.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/reference_extractor.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/pass_g/reporter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/speckit/validate_frs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/subprocess_utils.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/tasks/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/tasks/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/testing.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/vpn/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/vpn/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/vpn/runner.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/vscode_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/advancement.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/applied_suggestions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/base.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/checklist.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/manager.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/preflight.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/cli/workflows/worktree_setup.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/context/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/context/models.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/context/nodes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/context/retriever.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/context_budget.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/file_locking.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/mcp/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/mcp/server.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/orchestration/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/orchestration/checkpointing.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/orchestration/graph_builder.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/orchestration/pilot_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/orchestration/state_schema.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/apply-pull-request-review-suggestions/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/break-down-issue-into-subtasks/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/create-jira-epic/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/create-jira-issue/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/create-jira-subtask/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/loader.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/optimize-issue-for-ai-agent/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/pr-merge-orchestrator/default-init-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/pull-request-review/default-completion-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/pull-request-review/default-decision-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/pull-request-review/default-file-review-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/pull-request-review/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/pull-request-review/default-pull-request-overview-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/update-jira-issue/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/update-jira-issue/default-make-updates-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-checklist-creation-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-commit-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-completion-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-implementation-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-implementation-review-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-initiate-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-planning-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-pull-request-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-retrieve-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-setup-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/prompts/work-on-jira-issue/default-verification-prompt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/skill_injector.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/submission_manager.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/submission_processor.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/task_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/tools/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/tools/azure_devops.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/tools/git.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/agentic_devtools/tools/jira.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/01-introduction-and-goals.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/02-architecture-constraints.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/03-system-context.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/04-solution-strategy.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/05-building-blocks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/06-runtime-view.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/07-deployment-view.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/08-cross-cutting-concepts.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/09-architecture-decisions.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/10-quality-requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/11-risks-and-technical-debt.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/12-glossary.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/analysis/001-orchestration-framework-evaluation.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-001-state-management-single-json-file.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-002-parameterless-command-pattern.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-003-background-task-execution.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-004-multi-worktree-support.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-005-workflow-state-machine-pattern.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-006-mermaid-diagrams.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-007-argparse-cli.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-008-pyproject-toml.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-009-dynamic-versioning-git-tags.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-010-azure-devops-primary.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-011-test-coverage-requirement.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-012-cross-platform-file-locking.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/architecture-decisions/ADR-013-orchestration-framework-selection.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/copilot-commands.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/mcp-server.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/state-keys.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/docs/workflow-prompts.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/pipelines/ai-review-stage.yaml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/pyproject.toml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/scripts/run-pr-checks.sh +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/scripts/scaffold_tests.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/scripts/validate_test_structure.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/scripts/verify-agent-coverage.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-add-workflow-step-agents/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-add-workflow-step-agents/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-add-workflow-step-agents/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-add-workflow-step-agents/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-pypi-wheel-release/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-pypi-wheel-release/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-pypi-wheel-release/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-pypi-wheel-release/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-separate-docs/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-separate-docs/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-separate-docs/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-separate-docs/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-workflow-step-skills/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/001-workflow-step-skills/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/002-github-action-speckit-trigger/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/002-github-action-speckit-trigger/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/002-github-action-speckit-trigger/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/002-github-action-speckit-trigger/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/002-github-action-speckit-trigger/workflow-sequence-diagram.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/003-comprehensive-e2e-smoke-tests/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/003-comprehensive-e2e-smoke-tests/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/003-e2e-smoke-tests-cli/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/005-resolve-test-suite-warnings/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/005-resolve-test-suite-warnings/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/005-resolve-test-suite-warnings/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/005-resolve-test-suite-warnings/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/005-resolve-test-suite-warnings/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1175-plan-phase-fails-large/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1175-plan-phase-fails-large/checklists/checklist.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1175-plan-phase-fails-large/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1175-plan-phase-fails-large/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1175-plan-phase-fails-large/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1175-plan-phase-fails-large/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1176-use-issue-number-speckit/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1176-use-issue-number-speckit/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1176-use-issue-number-speckit/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1176-use-issue-number-speckit/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1176-use-issue-number-speckit/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1179-enhance-agdt-analyze-workflow/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1179-enhance-agdt-analyze-workflow/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1179-enhance-agdt-analyze-workflow/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1179-enhance-agdt-analyze-workflow/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1179-enhance-agdt-analyze-workflow/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1191-speckit-pipeline-markdownlint-validation/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1191-speckit-pipeline-markdownlint-validation/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1191-speckit-pipeline-markdownlint-validation/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1191-speckit-pipeline-markdownlint-validation/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1191-speckit-pipeline-markdownlint-validation/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1193-speckit-pipeline-enforce-line/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1193-speckit-pipeline-enforce-line/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1193-speckit-pipeline-enforce-line/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1193-speckit-pipeline-enforce-line/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1193-speckit-pipeline-enforce-line/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1194-speckit-prompts-require-language/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1194-speckit-prompts-require-language/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1194-speckit-prompts-require-language/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1194-speckit-prompts-require-language/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1194-speckit-prompts-require-language/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1194-speckit-prompts-require-language/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1195-speckit-clarification-step-overwrites/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1195-speckit-clarification-step-overwrites/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1195-speckit-clarification-step-overwrites/checklists/checklist.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1195-speckit-clarification-step-overwrites/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1195-speckit-clarification-step-overwrites/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1195-speckit-clarification-step-overwrites/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1195-speckit-clarification-step-overwrites/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1196-speckit-pipeline-auto-request/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1196-speckit-pipeline-auto-request/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1196-speckit-pipeline-auto-request/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1196-speckit-pipeline-auto-request/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1196-speckit-pipeline-auto-request/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1196-speckit-pipeline-auto-request/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1197-speckit-pipeline-gate-creation/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1197-speckit-pipeline-gate-creation/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1197-speckit-pipeline-gate-creation/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1197-speckit-pipeline-gate-creation/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1197-speckit-pipeline-gate-creation/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1197-speckit-pipeline-gate-creation/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1198-speckit-prompts-require-phase/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1198-speckit-prompts-require-phase/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1198-speckit-prompts-require-phase/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1198-speckit-prompts-require-phase/fr-coverage.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1198-speckit-prompts-require-phase/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1198-speckit-prompts-require-phase/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1198-speckit-prompts-require-phase/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1199-speckit-pipeline-validate-all/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1199-speckit-pipeline-validate-all/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1199-speckit-pipeline-validate-all/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1199-speckit-pipeline-validate-all/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1199-speckit-pipeline-validate-all/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1199-speckit-pipeline-validate-all/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1200-speckit-prompts-use-anchor/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1200-speckit-prompts-use-anchor/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1200-speckit-prompts-use-anchor/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1200-speckit-prompts-use-anchor/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1200-speckit-prompts-use-anchor/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1200-speckit-prompts-use-anchor/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1201-speckit-pipeline-task-deduplication/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1201-speckit-pipeline-task-deduplication/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1201-speckit-pipeline-task-deduplication/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1201-speckit-pipeline-task-deduplication/fr-coverage.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1201-speckit-pipeline-task-deduplication/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1201-speckit-pipeline-task-deduplication/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1201-speckit-pipeline-task-deduplication/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/fixtures/sc-001/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/fixtures/sc-001/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/fr-coverage.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1202-speckit-pipeline-validate-each/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1203-speckit-pipeline-validate-checklist/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1203-speckit-pipeline-validate-checklist/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1203-speckit-pipeline-validate-checklist/fr-coverage.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1203-speckit-pipeline-validate-checklist/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1203-speckit-pipeline-validate-checklist/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1203-speckit-pipeline-validate-checklist/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1204-speckit-pipeline-cross-reference/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1204-speckit-pipeline-cross-reference/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1204-speckit-pipeline-cross-reference/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1204-speckit-pipeline-cross-reference/fr-coverage.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1204-speckit-pipeline-cross-reference/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1204-speckit-pipeline-cross-reference/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1204-speckit-pipeline-cross-reference/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1215-fix-remove-invalid-yes/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1215-fix-remove-invalid-yes/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1215-fix-remove-invalid-yes/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1215-fix-remove-invalid-yes/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1215-fix-remove-invalid-yes/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1215-fix-remove-invalid-yes/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1258-use-pat-copilot-review/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1258-use-pat-copilot-review/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1258-use-pat-copilot-review/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1258-use-pat-copilot-review/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1258-use-pat-copilot-review/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1258-use-pat-copilot-review/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1270-finalize-review-workflow-automatic/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1270-finalize-review-workflow-automatic/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1270-finalize-review-workflow-automatic/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1283-update-workflow-use-github/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1283-update-workflow-use-github/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1283-update-workflow-use-github/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1283-update-workflow-use-github/fr-coverage.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1283-update-workflow-use-github/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1283-update-workflow-use-github/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1283-update-workflow-use-github/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1300-bug-agdt-copilot-auto/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1300-bug-agdt-copilot-auto/analysis-report.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1300-bug-agdt-copilot-auto/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1300-bug-agdt-copilot-auto/fr-coverage.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1300-bug-agdt-copilot-auto/plan.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1300-bug-agdt-copilot-auto/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1300-bug-agdt-copilot-auto/tasks.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1322-restructure-setup-dev-tools/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1322-restructure-setup-dev-tools/checklists/requirements.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1322-restructure-setup-dev-tools/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1324-pin-agentic-devtools-version/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1324-pin-agentic-devtools-version/spec.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/1326-improve-error-handling-and/.markdownlint.json +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/specs/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_context/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_context/test_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_context/test_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_context/test_management.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_async_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_auth.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_commands_api.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_commands_dry_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_file_review_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_mark_reviewed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_pipeline_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_pr_summary_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_pull_request_details_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_review_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_run_details_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/azure_devops/test_vpn_toggle.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/cli/test_azure_app_insights_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/cli/test_azure_auth.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/cli/test_azure_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/README.md +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/fixtures/cassettes/azure_devops_create_pr.yaml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/fixtures/cassettes/jira_add_comment.yaml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/fixtures/cassettes/jira_get_issue.yaml +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/test_azure_devops_commands_e2e.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/test_git_commands_e2e.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/e2e_smoke/test_jira_commands_e2e.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/network/test_detection.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/network/test_network_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_file_review_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_file_review_queue_management.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_git_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_git_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_git_core.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_git_diff.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_git_operations.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_git_utilities.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_no_scripts_temp_references.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_release_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_release_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_release_integration.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_scaffold_tests.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_validate_test_structure.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/test_version.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/__init__/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/__init__/test_get_adapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/base/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/base/test_issueadapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/github_adapter/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/github_adapter/test_githubissuesadapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/jira_adapter/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/jira_adapter/test_jiraadapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/markdown_adapter/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/adapters/markdown_adapter/test_markdownadapter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/agdt_gitignore/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/agdt_gitignore/test_ensure_agdt_gitignore.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/background_tasks/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/background_tasks/test_cleanup_old_logs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/background_tasks/test_create_log_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/background_tasks/test_get_task_log_content.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/background_tasks/test_run_function_in_background.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/background_tasks/test_run_in_background.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/background_tasks/test_wait_for_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/activity_log/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/activity_log/test_activity_log.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/activity_log/test_activity_log_entry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/activity_log/test_get_activity_log_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/activity_log/test_load_activity_log.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/activity_log/test_load_from_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/activity_log/test_save_activity_log.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/context_resolver/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/context_resolver/test_list_worktree_state_dirs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/context_resolver/test_resolve_analysis_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/context_resolver/test_resolve_analysis_context_edge_cases.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/context_resolver/test_resolve_analysis_context_errors.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/external_context/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/external_context/test__discover_worktrees.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/external_context/test__read_log_excerpt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/external_context/test_build_external_context_field.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/external_context/test_collect_external_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/identity_scanner/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/identity_scanner/test_format_evidence_prefix.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/identity_scanner/test_list_identity_directories.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/identity_scanner/test_scan_identity_logs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/identity_scanner/test_scan_identity_logs_determinism.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/analysis/identity_scanner/test_scan_identity_logs_performance.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_app_insights.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_app_insights_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_fabric_dap_errors.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_fabric_dap_errors_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_fabric_dap_provisioning.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_fabric_dap_provisioning_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_fabric_dap_timeline.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/app_insights_commands/test_query_fabric_dap_timeline_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/auth/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/auth/test_detect_account_type.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/auth/test_ensure_azure_account.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/auth/test_get_current_azure_account.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/auth/test_is_aza_account.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/auth/test_switch_azure_account.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/auth/test_verify_azure_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/config/test_get_account_for_environment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure/config/test_get_app_insights_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/commands/test_azure_context_current_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/commands/test_azure_context_ensure_login_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/commands/test_azure_context_status_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/commands/test_azure_context_use_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/config/test_get_context_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/test_check_login_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/test_ensure_logged_in.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/test_get_context_env.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/test_get_current_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/test_run_with_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/test_show_all_contexts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_context/management/test_switch_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/approve_files/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/approve_files/test_approve_files_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test__require_int_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_add_pull_request_comment_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_add_pull_request_comment_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_approve_file_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_approve_file_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_approve_pull_request_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_approve_pull_request_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_checkout_and_sync_branch_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_confirm_suggestion_addressed_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_create_pipeline_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_create_pull_request_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_create_pull_request_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_generate_review_prompts_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_get_pipeline_id_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_get_pull_request_details_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_get_pull_request_threads_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_get_pull_request_threads_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_get_run_details_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_list_pipelines_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_lookup_jira_issue_from_pr_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_lookup_pr_from_jira_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_mark_file_reviewed_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_mark_pull_request_draft_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_publish_pull_request_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_reject_suggestion_resolution_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_reply_to_pull_request_thread_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_reply_to_pull_request_thread_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_request_changes_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_request_changes_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_request_changes_with_suggestion_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_request_changes_with_suggestion_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_resolve_thread_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_resolve_thread_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_run_e2e_tests_fabric_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_run_e2e_tests_synapse_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_run_wb_patch_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_setup_pull_request_review_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_submit_reviews_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_submit_reviews_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_update_pipeline_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/async_commands/test_wait_for_run_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/auth/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/auth/test_get_auth_headers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/auth/test_get_pat.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/batch_review_helpers/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/batch_review_helpers/test__is_empty_or_whitespace.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/batch_review_helpers/test__validate_suggestion_fields.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/batch_review_helpers/test_resolve_batch_reviews.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/batch_review_helpers/test_validate_batch_reviews.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test__extract_issue_key_from_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_add_pull_request_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_approve_pull_request.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_create_pull_request.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_get_pull_request_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_mark_pull_request_draft.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_parse_bool_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_publish_pull_request.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_reply_to_pull_request_thread.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_require_content.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_resolve_thread.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/commands/test_update_review_narrative.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/config/test__parse_azure_devops_context_from_remote_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/config/test_azure_devops_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/config/test_constants.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/config/test_get_azure_devops_context_from_git_remote.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/config/test_get_repository_name_from_git_remote.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test__complete_active_session.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test__get_attribution_params.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test__get_queue_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test__process_file_parallel.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test__update_queue_after_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test__validate_suggestion_fields.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test_approve_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test_get_queue_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test_print_next_file_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test_request_changes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test_request_changes_with_suggestion.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test_submit_reviews.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/file_review_commands/test_trigger_in_progress_for_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test__get_repository_id_via_rest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_build_thread_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_convert_to_pull_request_title.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_find_jira_issue_from_pr.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_find_pr_from_jira_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_find_pull_request_by_issue_key.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_get_pull_request_details.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_get_pull_request_source_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_get_repository_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_parse_bool_from_state_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_parse_json_response.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_patch_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_patch_thread_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_print_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_require_content.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_require_requests.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_resolve_review_artifact_dir_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_resolve_thread_by_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/helpers/test_verify_az_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/mark_reviewed/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/mark_reviewed/test_cachedreviewercontext.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/mark_reviewed/test_fetch_reviewer_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/mark_reviewed/test_mark_file_reviewed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/mark_reviewed/test_mark_file_reviewed_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/mark_reviewed/test_normalize_repo_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/mark_reviewed/test_set_batch_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/marker/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/marker/test__get_first_comment_content.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/marker/test_build_marker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/marker/test_classify_agdt_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/marker/test_filter_agdt_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/marker/test_has_agdt_marker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/marker/test_parse_marker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/test_create_pipeline.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/test_get_pipeline_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/test_list_pipelines.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/test_run_e2e_tests_fabric.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/test_run_e2e_tests_synapse.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/test_run_wb_patch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pipeline_commands/test_update_pipeline.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pr_summary_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pr_summary_commands/test_generate_overarching_pr_comments.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pr_summary_commands/test_generate_overarching_pr_comments_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_change_tracking_id_for_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_current_user_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_iteration_change_tracking_map.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_iteration_changes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_pull_request_details.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_pull_request_iterations.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_pull_request_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_reviewer_payload.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_get_viewed_files_via_contribution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_invoke_ado_rest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/pull_request_details_commands/test_invoke_ado_rest_post.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/request_changes_batch/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/request_changes_batch/test_request_changes_batch_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/test_build_commit_file_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/test_build_commit_folder_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/test_build_commit_pr_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/test_format_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/test_get_model_icon.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/test_render_attribution_line.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_attribution/test_should_use_emoji.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_build_reviewed_paths_set.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_checkout_and_sync_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_convert_to_prompt_filename.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_extract_jira_issue_key_from_title.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_fetch_and_display_jira_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_fetch_pull_request_basic_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_filter_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_generate_review_prompts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_get_jira_issue_key_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_get_linked_pull_request_from_jira.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_get_pull_request_id_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_get_root_folder.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_get_threads_for_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_normalize_repo_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_print_review_instructions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_scaffold_threads_for_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_setup_pull_request_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_commands/test_write_file_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test__matches_pattern.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test__parse_int_field.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test_compute_mechanical_consensus.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test_default_review_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test_filter_files.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test_load_review_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test_resolve_trigger_overrides.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_config/test_reviewconfig.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_build_full_file_content_section.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_build_reviewed_paths_set.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_convert_to_prompt_filename.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_extract_jira_issue_key_from_title.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_filter_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_get_agdt_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_get_language_from_extension.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_get_root_folder.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_get_threads_for_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_is_binary_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_normalize_repo_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_helpers/test_resolve_repository_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test__get_jira_ssl_verify.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_display_jira_issue_summary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_extract_linked_pr_from_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_extract_pr_id_from_development_panel.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_fetch_and_display_jira_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_fetch_development_panel_prs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_fetch_jira_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_get_jira_credentials.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_get_linked_pull_request_from_jira.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_jira/test_get_pr_from_development_panel.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_models_config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_models_config/test_ensure_default_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_models_config/test_load_review_models_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_models_config/test_reviewmodelsconfig.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_prompts/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_prompts/test_build_file_prompt_content.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_prompts/test_generate_review_prompts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_prompts/test_generate_review_prompts_edge_cases.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_prompts/test_get_prompts_output_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_prompts/test_print_review_instructions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_prompts/test_write_file_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__append_path_to_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__build_pr_base_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__check_session_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__create_session.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__demote_main_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__format_activity_log_entry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__fresh_scaffold.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__get_file_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__get_folder_for_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__get_thread_comments.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__incremental_rescaffold.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__mark_stale_sessions_failed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__patch_comment_content.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__post_activity_log_entry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__post_reply.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__post_thread.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__print_dry_run_plan.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__update_activity_log_comment_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test__validate_with_git_diff.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test_detect_file_changes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test_filechangeresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test_scaffold_idempotency_scenarios.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_scaffold/test_scaffold_review_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test__atomic_write_json.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test__get_lock_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_add_suggestion_to_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_clear_suggestions_for_re_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_compute_aggregate_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_fileentry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_fileentry_multi_model.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_folderentry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_foldergroup.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_get_file_entry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_get_folder_entry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_get_review_state_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_load_from_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_load_review_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_locking_behavior.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_modelverdict.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_normalize_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_overallsummary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_read_modify_write_review_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_reviewsession.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_reviewstate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_reviewstate_multi_model.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_reviewstatus.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_save_review_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_skippedfile.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_suggestionentry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_sync_review_state_from_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_update_file_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_state/test_validate_and_deserialize.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_templates/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_templates/test_build_discussion_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_templates/test_render_file_summary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_templates/test_render_model_review_progress_table.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/review_templates/test_render_overall_summary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_fetch_build_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_fetch_build_timeline.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_fetch_failed_job_logs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_fetch_pipeline_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_fetch_task_log.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_get_failed_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_get_run_details.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_get_run_details_impl.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_is_run_finished.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_print_failed_logs_summary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_print_parameters.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_print_summary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_save_json.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_save_log_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_wait_for_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/run_details_commands/test_wait_for_run_impl.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/status_cascade/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/status_cascade/test_cascade_overall_summary_update.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/status_cascade/test_cascade_status_update.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/status_cascade/test_derive_overall_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/status_cascade/test_execute_cascade.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/status_cascade/test_patch_operation.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_commands/test_confirm_suggestion_addressed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_commands/test_reject_suggestion_resolution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_categorize_all_suggestions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_fetch_threads_lookup.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_has_unaddressed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_partition_results.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_render_abort_summary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_render_unaddressed_thread_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_suggestionverificationresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/suggestion_verification/test_verify_previous_suggestions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/verdict_protocol/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/verdict_protocol/test_compute_file_effective_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/verdict_protocol/test_evaluate_consolidation_need.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/verdict_protocol/test_initialize_model_verdicts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/verdict_protocol/test_record_verdict.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/verdict_protocol/test_render_consolidation_decision.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/verdict_protocol/test_render_reviewer_addendum.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_check_network_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_connect_vpn.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_disconnect_vpn.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_ensure_jira_vpn_access.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_get_corporate_network_test_host.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_get_vpn_hostnames.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_get_vpn_url_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_is_on_corporate_network.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_is_pulse_secure_installed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_is_vpn_connected.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_reconnect_vpn.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_smart_connect_vpn.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_vpn_off_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_vpn_off_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_vpn_on_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_vpn_on_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_vpn_status_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/azure_devops/vpn_toggle/test_vpn_status_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test__print_ssl_error_help.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test_count_certificates_in_pem.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test_ensure_ca_bundle.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test_ensure_ca_bundle_force.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test_fetch_certificate_chain_openssl.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test_fetch_certificate_chain_ssl.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test_get_ssl_verify.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/cert_utils/test_ssl_request_with_retry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/config/project_config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/config/project_config/test__get_config_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/config/project_config/test_get_project_config_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/config/project_config/test_load_project_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/config/project_config/test_save_project_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test__is_retryable_win_error.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test__is_run_triggered.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test__mark_run_triggered.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test__read_model_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test__run_copilot_with_retry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test__unmark_run_triggered.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test_copilot_auto_start_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/auto_start/test_retry_autostart_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test__build_copilot_args.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test__emit_log_marker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test__get_copilot_binary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test__get_jsonl_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test_build_copilot_args.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test_copilotsessionresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test_get_default_copilot_model.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test_is_gh_copilot_available.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/copilot/session/test_start_copilot_session.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__branch_exists_locally.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__branch_exists_remotely.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__discover_workflow_files.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__fetch_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__get_parent_sha.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__get_repo_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__has_matching_run_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__read_commit_message.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__read_tree_for_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__reset_dirty.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test__run_plumbing.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_build_tree.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_create_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_gitplumbingerror.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_hash_object.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_is_dirty.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_load_workflow_artifacts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_mark_dirty.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_persist_if_dirty.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_persist_workflow_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_persistresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_push_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_read_blob.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_read_branch_tree.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_resolve_worktree_key.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/agdt_branch/test_update_ref.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/_helpers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/test_amend_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/test_commit_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/test_force_push_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/test_publish_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/test_push_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/async_commands/test_stage_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test__get_issue_key_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test__mark_checklist_items_completed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test__sync_with_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test__trigger_implementation_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test_amend_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test_commit_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test_force_push_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test_publish_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test_push_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/commands/test_stage_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/core/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/core/test_get_bool_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/core/test_get_commit_message.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/core/test_get_current_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/core/test_run_git.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/core/test_temp_message_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test__is_diff_file_header.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_addedline.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_addedlinesinfo.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_diffentry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_difflinesinfo.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_get_added_lines_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_get_diff_entries.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_get_diff_lines_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_get_diff_patch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_get_removed_lines_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_normalize_ref_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_removedline.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_removedlinesinfo.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/diff/test_sync_git_ref.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_amend_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_branch_has_commits_ahead_of_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_branchsafetycheckresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_check_branch_safe_to_recreate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_checkout_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_checkoutresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_create_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_delete_local_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_fetch_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_fetch_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_force_push.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_get_commits_behind_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_get_files_changed_on_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_get_last_commit_message.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_get_short_commit_hash.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_has_local_changes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_last_commit_contains_issue_key.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_local_branch_matches_origin.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_publish_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_push.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_rebase_onto_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_rebaseresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_rename_local_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_reset_branch_to_origin.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_should_amend_instead_of_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/git/operations/test_stage_changes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_bug_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_bug_issue_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_documentation_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_documentation_issue_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_feature_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_feature_issue_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_issue_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_task_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/async_commands/test_create_agdt_task_issue_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/test__classify_review_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/test__count_inline_comments.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/test__count_suppressed_comments.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/test__fetch_reviews_for_pr.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/test__select_latest_copilot_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/test_copilot_review_status_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/copilot_review_status/test_get_copilot_review_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test__append_related_issues.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test__append_terminal_log.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test__build_gh_create_args.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test__check_gh_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test__get_environment_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test__gh_supports_issue_type.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test_create_agdt_bug_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test_create_agdt_documentation_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test_create_agdt_feature_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test_create_agdt_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/issue_commands/test_create_agdt_task_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/test__check_gh_available.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/test__resolve_current_user.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/test__submit_approval.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/test__validate_repo_format.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/test__verify_approval.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/test_approve_pr.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_approve/test_pr_approve_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test__classify_checks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test__fetch_check_suites.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test__fetch_pr_checks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test__normalize_repo.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test__reconcile_results.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test__verify_check_suites.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test_get_pr_checks_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_checks_status/test_pr_checks_status_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_merge/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_merge/test__check_gh_available.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_merge/test__classify_merge_error.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_merge/test__execute_merge.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_merge/test__verify_merge.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_merge/test_merge_pr.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_merge/test_pr_merge_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_poll_ready/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_poll_ready/test__evaluate_iteration.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_poll_ready/test__should_rerun_checks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_poll_ready/test_poll_pr_ready.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_poll_ready/test_pr_poll_ready_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_state/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_state/test__evaluate_terminal_condition.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_state/test__fetch_pr_with_retry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_state/test_get_pr_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/pr_state/test_pr_state_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/repo_resolution/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/repo_resolution/test__repo_from_git_remote.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/repo_resolution/test__resolve_repo_from_git_remote.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/repo_resolution/test__validate_repo_format.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/repo_resolution/test_resolve_github_repo.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/request_copilot_review/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/request_copilot_review/test__post_review_request.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/request_copilot_review/test__verify_reviewer_requested.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/request_copilot_review/test_request_copilot_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/request_copilot_review/test_request_copilot_review_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/rerun_checks/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/rerun_checks/test__fetch_workflow_runs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/rerun_checks/test__filter_failed_runs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/rerun_checks/test__rerun_single_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/rerun_checks/test_rerun_checks_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/rerun_checks/test_rerun_failed_checks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/test__fetch_review_comment_ids.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/test__fetch_review_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/test__map_comments_to_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/test__resolve_and_verify.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/test__resolve_thread.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/test_resolve_review_threads.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/resolve_review_threads/test_resolve_review_threads_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test__check_gh_available.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test__load_replies_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test__post_single_reply.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test__retry_failed_replies.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test__validate_reply_entries.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test__verify_replies.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test_reply_to_review_comments.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/review_reply/test_reply_to_review_comments_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/state_helpers/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/state_helpers/test_get_issue_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/github/state_helpers/test_set_issue_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/adf/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/adf/test__convert_adf_to_text.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/adf/test__process_adf_children.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_add_comment_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_add_comment_async_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_add_users_to_project_role_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_add_users_to_project_role_batch_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_check_user_exists_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_check_users_exist_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_create_epic_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_create_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_create_subtask_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_find_role_id_by_name_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_get_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_get_project_role_details_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_list_project_roles_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_commands/test_update_issue_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_status/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_status/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/async_status/test_write_async_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/comment_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/comment_commands/test_add_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/comment_commands/test_add_comment_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/config/test_build_jira_issue_pattern.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/config/test_get_jira_auth_header.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/config/test_get_jira_base_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/config/test_get_jira_headers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/config/test_get_jira_project_keys.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/create_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/create_commands/test_create_epic.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/create_commands/test_create_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/create_commands/test_create_issue_sync.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/create_commands/test_create_subtask.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/formatting/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/formatting/test_build_user_story_description.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/formatting/test_format_bullet_list.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/formatting/test_merge_labels.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/get_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/get_commands/test__fetch_epic.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/get_commands/test__fetch_parent_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/get_commands/test__fetch_remote_links.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/get_commands/test_get_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__count_certificates_in_pem.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__ensure_jira_pem.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__fetch_certificate_chain_openssl.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__fetch_certificate_chain_ssl.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__get_repo_jira_pem_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__get_requests.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__get_ssl_verify.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__get_temp_jira_pem_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__parse_comma_separated.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/helpers/test__parse_multiline_string.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_get_user_details.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_get_user_details_api_calls.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_parse_error_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_parse_error_file_combined_errors.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_parse_error_file_multiple_dataproducts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_parse_jira_error_report.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_parse_jira_error_report_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/parse_error_report/test_parse_jira_error_report_integration.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_add_users_to_project_role.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_add_users_to_project_role_additional_cases.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_add_users_to_project_role_batch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_check_user_exists.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_check_user_exists_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_check_users_exist.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_check_users_exist_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_check_users_exist_command_paths.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_find_role_id_by_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_get_project_role_details.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_get_project_role_details_command_paths.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_list_project_roles.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_list_project_roles_command_paths.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_role_commands_error_handling.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/role_commands/test_role_id_extraction.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/state_helpers/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/state_helpers/test_get_jira_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/state_helpers/test_set_jira_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/update_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/update_commands/test__build_update_payload.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/update_commands/test_update_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/vpn_wrapper/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/vpn_wrapper/test_with_jira_vpn_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/vpn_wrapper/test_with_jira_vpn_context_decorator.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/jira/vpn_wrapper/test_with_jira_vpn_context_integration.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/network/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/network/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/network/commands/test_network_status_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/network/detection/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/network/detection/test_detect_network_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/network/detection/test_get_network_context_display.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/commands/test_release_pypi_async.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/helpers/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/helpers/test_build_distribution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/helpers/test_compute_sha256.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/helpers/test_normalize_package_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/helpers/test_pypi_version_exists.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/helpers/test_upload_distribution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/release/helpers/test_validate_distribution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/commands/test_build_parser.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/commands/test_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/config_commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/config_commands/test__config_to_dict.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/config_commands/test__resolve_repo_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/config_commands/test_run_config_get.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/config_commands/test_run_config_validate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/consolidate/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/consolidate/test__apply_resolution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/consolidate/test__build_consolidation_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/consolidate/test__invoke_consolidator_model.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/consolidate/test__load_amendment_replies.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/consolidate/test_run_consolidate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/dispatch/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/dispatch/test__check_files_need_consolidation.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/dispatch/test__invoke_consolidation.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/dispatch/test__invoke_reviewer.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/dispatch/test__print_dispatch_plan.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/dispatch/test_run_dispatch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/status/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/review/status/test_run_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/runner/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/runner/test_command_map.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/runner/test_command_map_integrity.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/runner/test_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/runner/test_main_entry_point.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/runner/test_run_as_script.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/runner/test_run_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__build_unified_ca_bundle.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__persist_env_vars_to_profile.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__persist_single_var.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__prefetch_certs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__print_manual_instructions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__print_path_instructions_if_needed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__prompt_copilot_model.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__prompt_project_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__query_copilot_models.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test__valid_issue_adapters_fallback.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test_setup_certs_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test_setup_check_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test_setup_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test_setup_copilot_cli_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/commands/test_setup_gh_cli_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/copilot_cli_installer/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/copilot_cli_installer/test_detect_platform_asset.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/copilot_cli_installer/test_download_and_install.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/copilot_cli_installer/test_get_copilot_cli_binary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/copilot_cli_installer/test_get_installed_version.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/copilot_cli_installer/test_get_latest_release_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/copilot_cli_installer/test_install_copilot_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/dependency_checker/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/dependency_checker/test__find_binary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/dependency_checker/test__get_version.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/dependency_checker/test__run_version.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/dependency_checker/test_check_all_dependencies.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/dependency_checker/test_dependencystatus.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/dependency_checker/test_print_dependency_report.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/gh_cli_installer/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/gh_cli_installer/test_detect_platform_asset.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/gh_cli_installer/test_download_and_install.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/gh_cli_installer/test_get_gh_cli_binary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/gh_cli_installer/test_get_installed_version.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/gh_cli_installer/test_get_latest_release_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/gh_cli_installer/test_install_gh_cli.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/platform_detection/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/platform_detection/test__get_origin_remote_url.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/platform_detection/test_confirm_and_override.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/platform_detection/test_detect_platforms.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/platform_detection/test_detectionresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/pr_workflow/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/pr_workflow/test__resolve_branch_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/pr_workflow/test_run_setup_with_pr_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/shell_profile/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/shell_profile/test_detect_shell_profile.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/shell_profile/test_detect_shell_type.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/shell_profile/test_persist_env_var.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/shell_profile/test_persist_path_entry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/workflow_templates/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/workflow_templates/test_generate_default_templates.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/workflow_templates/test_list_available_templates.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/setup/workflow_templates/test_template_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test__load_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test__parse_args.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test__run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_analyze.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_checklist.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_clarify.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_constitution.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_implement.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_plan.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_specify.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/commands/test_speckit_taskstoissues.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/cross_ref/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/cross_ref/test_cross_ref_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/constants/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/constants/test_test_task_keywords.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/constants/test_test_type_keywords.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/coverage_mapper/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/coverage_mapper/test_evaluate_coverage.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/coverage_mapper/test_generate_task_scoped_findings.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/coverage_mapper/test_map_test_tasks_to_frs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/models/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/models/test_models.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/reporter/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/reporter/test_render_findings.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/reporter/test_render_test_coverage_summary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/spec_parser/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/spec_parser/test__extract_priority_from_section.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/spec_parser/test_build_us_to_fr_mapping.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/spec_parser/test_extract_frs_with_priority.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/spec_parser/test_parse_user_story_sections.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/task_classifier/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/task_classifier/test__build_multi_word_pattern.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/task_classifier/test_classify_test_types.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/task_classifier/test_detect_ambiguous_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/task_classifier/test_extract_task_fr_refs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/task_classifier/test_is_test_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/validator/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/validator/test__parse_tasks_from_content.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/validator/test__print_human_output.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/validator/test__safe_print.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/validator/test_test_coverage_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_e2/validator/test_validate_test_coverage.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/classifier/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/classifier/test__check_partial_match.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/classifier/test__should_skip.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/classifier/test_classify_references.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_disambiguation_margin.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_high_confidence_threshold.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_max_candidates_per_reference.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_new_symbol_noun_markers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_new_symbol_verb_markers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_performance_warning_seconds.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_protected_file_patterns.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/constants/test_suggestion_threshold.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/extractors/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/extractors/base/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/extractors/base/test_symbolextractor.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/extractors/python_extractor/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/extractors/python_extractor/test__file_to_module_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/extractors/python_extractor/test__parse_project_scripts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/extractors/python_extractor/test_pythonextractor.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/intent_detector/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/intent_detector/test_detect_new_symbol_intent.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/intent_detector/test_detect_new_symbol_intent_noun.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/inventory/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/inventory/test_build_inventory.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/inventory/test_build_inventory_extended.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/inventory/test_symbolinventory.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/matcher/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/matcher/test_classify_match_confidence.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/matcher/test_exact_match.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/matcher/test_fuzzy_match.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/matcher/test_fuzzy_match_extended.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/models/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/models/test_candidate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/models/test_finding.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/models/test_matchstatus.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/models/test_reference.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/models/test_referencekind.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reference_extractor/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reference_extractor/test_classify_reference_kind.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reference_extractor/test_extract_references.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reference_extractor/test_extract_references_extended.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reporter/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reporter/test_render_json.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reporter/test_render_markdown.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/pass_g/reporter/test_reporter_edge_cases.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test__coerce_max_retries.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test__resolve_max_retries.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test_check_coverage.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test_extract_frs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test_sort_fr_ids.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test_validate_frs.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test_validate_frs_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/speckit/validate_frs/test_validationresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/test_clear_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/test_clear_workflow_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/test_delete_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/test_get_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/test_get_workflow_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/test_set_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/state/test_show_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/subprocess_utils/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/subprocess_utils/test_run_safe.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/subprocess_utils/test_run_safe_integration.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_handle_task_completed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_helper_functions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_list_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_safe_print_unicode_error.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_show_other_incomplete_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_task_command_integration.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_task_id_argument.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_task_log.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_task_log_line_limits.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_task_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_task_wait.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_task_wait_value_error_handling.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_tasks_clean.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/tasks/commands/test_try_advance_pr_review_to_decision.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test__infer_test_file_from_source.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test__try_get_workspace_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_async_wrappers.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_create_test_file_parser.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_get_workspace_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_subprocess_with_streaming.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_tests.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_tests_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_tests_file_sync.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_tests_pattern.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_tests_quick.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_tests_quick_sync.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/testing/test_run_tests_sync.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/commands/test_vpn_run_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/runner/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/runner/test__detect_vpn_requirement_from_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/runner/test__execute_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/runner/test_run_with_vpn_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vpn/runner/test_vpnrequirement.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vscode_tasks/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/vscode_tasks/test_remove_auto_start_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/advancement/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/advancement/test_try_advance_workflow_after_branch_pushed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/advancement/test_try_advance_workflow_after_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/advancement/test_try_advance_workflow_after_jira_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/advancement/test_try_advance_workflow_after_jira_issue_retrieved.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/advancement/test_try_advance_workflow_after_pr_creation.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/advancement/test_try_advance_workflow_after_pr_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/applied_suggestions/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/applied_suggestions/test_appliedsuggestionentry.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/applied_suggestions/test_appliedsuggestionsstate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/applied_suggestions/test_get_applied_suggestions_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/applied_suggestions/test_load_applied_suggestions_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/applied_suggestions/test_load_from_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/applied_suggestions/test_save_applied_suggestions_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/base/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/base/test__state_key_to_variable_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/base/test_advance_workflow_step.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/base/test_clear_state_for_workflow_initiation.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/base/test_collect_variables_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/base/test_initiate_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/base/test_validate_required_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_checklist.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_checklistitem.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_get_checklist.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_get_checklist_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_initialize_checklist.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_mark_items_completed.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_parse_completed_items_arg.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/checklist/test_save_checklist.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__copy_review_state_to_apply_suggestions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__effective_argv.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__ensure_bootstrap_identity.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__execute_retrieve_step.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__fetch_issue_for_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__format_auto_setup_success_message.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__format_jira_issue_comments.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__format_jira_issue_prompt_fields.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__parse_bool_interactive.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test__stringify_jira_text_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_advance_pull_request_review_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_advance_work_on_jira_issue_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_advance_workflow_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_create_checklist_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_get_workflow_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_apply_pull_request_review_suggestions_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_break_down_issue_into_subtasks_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_create_jira_epic_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_create_jira_issue_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_create_jira_subtask_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_optimize_issue_for_ai_agent_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_pr_merge_orchestrator_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_pull_request_review_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_update_jira_issue_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_initiate_work_on_jira_issue_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_notify_workflow_event.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_setup_worktree_background_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_show_checklist_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/commands/test_update_checklist_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test__build_command_hint.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test__check_required_tasks_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test__render_failure_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test__render_step_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test__render_waiting_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test_get_next_step.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test_get_next_workflow_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test_get_next_workflow_prompt_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test_get_workflow_definition.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test_nextpromptresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test_notify_workflow_event.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/manager/test_promptstatus.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/preflight/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/preflight/test_check_worktree_and_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/preflight/test_generate_setup_instructions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/preflight/test_get_current_git_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/preflight/test_get_git_repo_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/preflight/test_perform_auto_setup.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/preflight/test_preflightresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__cleanup_pending_auto_start_marker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__detect_git_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__detect_python_scripts_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__focus_vscode_window.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__maybe_inject_auto_start_before_vscode.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__print_agent_instructions_block.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__prompt_file_relative_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__propagate_agdt_cache.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__resolve_state_context_in_worktree.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__run_auto_execute_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__setup_worktree_from_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__shell_quote.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_apply_pr_suggestions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_create_jira_epic.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_create_jira_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_create_jira_subtask.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_pr_review.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_update_jira_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_work_on_jira_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__start_copilot_session_for_workflow.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__try_terminal_send_fallback.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__wait_for_prompt_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__workflow_prompt_filenames.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__workflow_start_prompts.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test__write_pending_auto_start_marker.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_check_worktree_exists.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_create_placeholder_and_setup_worktree.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_create_placeholder_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_create_worktree.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_find_workspace_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_generate_workflow_branch_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_get_ai_agent_continuation_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_get_current_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_get_main_repo_root.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_get_repos_parent_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_get_worktree_continuation_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_inject_auto_start_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_inject_git_path_settings.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_inject_python_path_settings.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_inject_task_permission_settings.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_is_in_worktree.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_is_vscode_available.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_open_vscode_workspace.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_placeholderissueresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_run_worktree_setup_script.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_setup_worktree_environment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_setup_worktree_in_background_sync.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_start_worktree_setup_background.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_switch_to_main_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_worktreesetupresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/cli/workflows/worktree_setup/test_worktreestatecontext.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/config/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/config/test_load_platform_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/config/test_load_repo_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/config/test_load_review_focus_areas.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/config/test_save_platform_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context/models/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context/models/test_agentcontext.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context/nodes/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context/nodes/test_retrieve_context_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context/retriever/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context/retriever/test_issuecontextretriever.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_budgetresult.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_collapse_whitespace.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_contextbudgeterror.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_enforce_context_budget.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_hard_truncate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_reductionstage.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_remove_image_references.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_strip_markdown_formatting.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/context_budget/test_validate_content_shape.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_cross_platform_behavior.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_file_lock_error.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_lock_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_lock_functions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_locked_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_locked_file_edge_cases.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_locked_state_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_unix_file_locking.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_unlock_file.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/file_locking/test_windows_file_locking.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/mcp/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/mcp/server/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/mcp/server/test__load_azure_devops_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/mcp/server/test__load_jira_config.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/mcp/server/test_create_mcp_server.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/mcp/server/test_main.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/checkpointing/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/checkpointing/test_get_checkpointer.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/graph_builder/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/graph_builder/test_build_work_on_issue_graph.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test__utc_now.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_checklist_creation_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_commit_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_completion_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_get_mermaid_diagram.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_implementation_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_implementation_review_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_initiate_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_planning_gate_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_planning_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_pull_request_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_route_after_implementation.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_route_after_initiate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_route_after_plan.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_route_after_verify.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_setup_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/pilot_workflow/test_verification_node.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/state_schema/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/state_schema/test_workonissueevent.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/orchestration/state_schema/test_workonissuestate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_get_prompts_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_get_required_variables.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_get_temp_output_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_get_template_filename.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_get_template_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_load_and_render_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_load_prompt_template.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_log_prompt_with_save_notice.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_pr_review_file_review_prompt_rendering.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_pr_review_pull_request_overview_prompt_rendering.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_save_generated_prompt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_silentundefined.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_substitute_variables.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_substitute_variables_syntax_error.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_template_validation_error.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/prompts/loader/test_validate_template_variables.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__derive_fallback_description_from_markdown.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__ensure_github_gitignore_unignores_agdt.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__extract_description.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__flatten_filename.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__generate_readme.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__get_source_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__list_md_files.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test__parse_frontmatter.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/skill_injector/test_inject_skills.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test__get_git_email.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test__get_or_refresh_identity.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test__read_identity_cache.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test__resolve_identity.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test__sync_bootstrap_for_context_key.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test__update_bootstrap_worktree_key.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test__write_identity_cache.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_clear_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_clear_workflow_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_delete_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_all_keys.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_bootstrap_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_pull_request_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_pypi_dry_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_pypi_package_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_pypi_repository.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_pypi_version.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_state_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_state_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_thread_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_get_workflow_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_is_dry_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_is_safe_dir_segment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_is_workflow_active.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_load_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_load_state_locked.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_save_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_save_state_locked.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_bootstrap_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_context_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_dry_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_pull_request_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_pypi_dry_run.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_pypi_package_name.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_pypi_repository.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_pypi_version.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_resolve_thread.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_thread_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_value.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_set_workflow_state.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_should_resolve_thread.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_update_workflow_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_update_workflow_step.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/state/test_workflow_state_integration.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/test_create_submission_manager.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/test_faileditemsummary.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/test_failurereport.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/test_submissionitem.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/test_submissionmanager.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/test_submissionstatus.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_manager/test_transientsubmissionerror.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_processor/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_processor/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_processor/test__get_attribution_params.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_processor/test__validate_suggestions.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_processor/test_create_review_processor.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/submission_processor/test_process_submission.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test__update_task_in_all_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_add_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_background_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_cleanup_expired_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_duration_seconds.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_from_dict_invalid_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_active_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_all_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_all_tasks_file_path.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_background_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_background_tasks_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_failed_most_recent_per_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_incomplete_most_recent_per_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_logs_dir.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_most_recent_tasks_per_command.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_other_incomplete_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_recent_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_task_by_id.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_task_from_all_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_get_tasks_by_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_is_expired.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_print_task_tracking_info.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_remove_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_save_background_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_sort_tasks.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_task_lifecycle.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_task_status.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/task_state/test_update_task.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/test__escape_for_cmd.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/test__get_requests.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/test_add_pull_request_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/test_add_reviewer.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/test_create_pull_request.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/test_reply_to_pull_request_thread.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/azure_devops/test_update_review_narrative.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test__capture.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test__run_op.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_amend_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_create_commit.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_force_push.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_get_recent_changes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_publish_branch.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_push.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_save_work.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/git/test_stage_changes.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/jira/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/jira/test__fetch_remote_links.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/jira/test_add_comment.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/jira/test_create_epic.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/jira/test_create_issue.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/jira/test_create_subtask.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/unit/tools/jira/test_fetch_issue_context.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/vpn/test_vpn_commands.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/vpn/test_vpn_runner.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/workflows/__init__.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/workflows/conftest.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/workflows/test_copilot_generate.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/workflows/test_enforce_budget.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/workflows/test_fix_markdown_deterministic.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/workflows/test_workflow_end_to_end.py +0 -0
- {agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/tests/workflows/test_wrap_markdown_lines.py +0 -0
|
@@ -351,7 +351,9 @@ $MARKDOWNLINT_WARNINGS
|
|
|
351
351
|
fi
|
|
352
352
|
|
|
353
353
|
# Build gh pr create command arguments
|
|
354
|
+
REPO_SLUG="${GITHUB_REPOSITORY:-OWNER/REPO}"
|
|
354
355
|
GH_CREATE_ARGS=(
|
|
356
|
+
--repo "$REPO_SLUG"
|
|
355
357
|
--title "$PR_TITLE"
|
|
356
358
|
--body "$PR_BODY"
|
|
357
359
|
--base "$BASE_BRANCH"
|
|
@@ -367,10 +369,45 @@ fi
|
|
|
367
369
|
|
|
368
370
|
# Create the PR
|
|
369
371
|
PR_URL=$(gh pr create "${GH_CREATE_ARGS[@]}" 2>&1) || {
|
|
370
|
-
echo "
|
|
372
|
+
echo "" >&2
|
|
373
|
+
echo "❌ Failed to create PR automatically." >&2
|
|
371
374
|
echo "Error: $PR_URL" >&2
|
|
375
|
+
echo "" >&2
|
|
376
|
+
echo "To create this PR manually, run the following command locally:" >&2
|
|
377
|
+
echo "" >&2
|
|
378
|
+
echo " Prerequisites:" >&2
|
|
379
|
+
echo " - Ensure you are authenticated: gh auth login" >&2
|
|
380
|
+
echo " - Ensure the branch is pushed: git push origin $BRANCH_NAME" >&2
|
|
381
|
+
echo "" >&2
|
|
382
|
+
echo " Step 1: Save the PR body to a local file:" >&2
|
|
383
|
+
echo "" >&2
|
|
384
|
+
echo " cat > pr-body.md << 'SPECKIT_PR_BODY_EOF'" >&2
|
|
385
|
+
echo "$PR_BODY" >&2
|
|
386
|
+
echo "SPECKIT_PR_BODY_EOF" >&2
|
|
387
|
+
echo "" >&2
|
|
388
|
+
echo " Step 2: Create the PR:" >&2
|
|
389
|
+
echo "" >&2
|
|
390
|
+
echo " gh pr create \\" >&2
|
|
391
|
+
echo " --repo $REPO_SLUG \\" >&2
|
|
392
|
+
echo " --head \"$BRANCH_NAME\" \\" >&2
|
|
393
|
+
echo " --base \"$BASE_BRANCH\" \\" >&2
|
|
394
|
+
echo " --title \"$PR_TITLE\" \\" >&2
|
|
395
|
+
if [[ "$CREATE_DRAFT" == "true" ]]; then
|
|
396
|
+
echo " --draft \\" >&2
|
|
397
|
+
fi
|
|
398
|
+
echo " --body-file \"pr-body.md\"" >&2
|
|
399
|
+
echo "" >&2
|
|
400
|
+
# Show label instructions if labels are available
|
|
401
|
+
if [[ -n "$PHASE_NUMBER" ]]; then
|
|
402
|
+
echo " After creating the PR, apply labels manually:" >&2
|
|
403
|
+
echo " gh pr edit <PR_NUMBER> --add-label \"speckit:phase-${PHASE_NUMBER}\"" >&2
|
|
404
|
+
else
|
|
405
|
+
echo " After creating the PR, apply labels manually:" >&2
|
|
406
|
+
echo " gh pr edit <PR_NUMBER> --add-label \"speckit:spec\"" >&2
|
|
407
|
+
fi
|
|
408
|
+
echo "" >&2
|
|
372
409
|
echo "pr_url=" >> "${GITHUB_OUTPUT:-/dev/stdout}"
|
|
373
|
-
exit
|
|
410
|
+
exit 1
|
|
374
411
|
}
|
|
375
412
|
|
|
376
413
|
# Output draft status
|
{agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/speckit-issue-trigger.yml
RENAMED
|
@@ -324,7 +324,7 @@ jobs:
|
|
|
324
324
|
if: steps.validate-label.outputs.label_matches == 'true' && steps.idempotency.outputs.skipped != 'true' && vars.SPECKIT_CREATE_BRANCH != 'false' && vars.SPECKIT_CREATE_PR != 'false'
|
|
325
325
|
id: create-pr
|
|
326
326
|
env:
|
|
327
|
-
GH_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
|
|
327
|
+
GH_TOKEN: ${{ secrets.SPECKIT_PR_TOKEN || secrets.COPILOT_GITHUB_TOKEN }}
|
|
328
328
|
ISSUE_LABELS: ${{ steps.issue.outputs.labels }}
|
|
329
329
|
MARKDOWNLINT_WARNINGS: ${{ steps.generate.outputs.markdownlint_remaining_violations }}
|
|
330
330
|
run: |
|
{agentic_devtools-0.2.74 → agentic_devtools-0.2.75}/.github/workflows/speckit-phase-progression.yml
RENAMED
|
@@ -539,7 +539,7 @@ jobs:
|
|
|
539
539
|
if: steps.extract.outcome == 'success' && steps.extract.outputs.next_phase != '6' && steps.extract.outputs.next_phase != '0' && steps.idempotency.outputs.skipped != 'true' && vars.SPECKIT_CREATE_BRANCH != 'false' && vars.SPECKIT_CREATE_PR != 'false' && steps.commit.outcome == 'success' && (steps.generate.outputs.gate_result == 'pass' || vars.SPECKIT_CRITICAL_GATE_MODE == 'draft')
|
|
540
540
|
id: create-pr
|
|
541
541
|
env:
|
|
542
|
-
GH_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
|
|
542
|
+
GH_TOKEN: ${{ secrets.SPECKIT_PR_TOKEN || secrets.COPILOT_GITHUB_TOKEN }}
|
|
543
543
|
ISSUE_LABELS: ${{ steps.issue.outputs.labels }}
|
|
544
544
|
GATE_RESULT: ${{ steps.generate.outputs.gate_result }}
|
|
545
545
|
GATE_MODE: ${{ vars.SPECKIT_CRITICAL_GATE_MODE }}
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.2.
|
|
22
|
-
__version_tuple__ = version_tuple = (0, 2,
|
|
21
|
+
__version__ = version = '0.2.75'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 2, 75)
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Specification Quality Checklist: Resilient Error Handling and Retry Logic for SpecKit Pipeline Scripts
|
|
2
|
+
|
|
3
|
+
**Purpose**: Validate specification completeness before proceeding to planning
|
|
4
|
+
**Created**: 2026-05-05
|
|
5
|
+
**Feature**: [spec.md](../spec.md)
|
|
6
|
+
**Source Issue**: #1326
|
|
7
|
+
|
|
8
|
+
## Content Quality
|
|
9
|
+
|
|
10
|
+
- [ ] CHK001 Each user story clearly articulates value to a specific persona (maintainer, pipeline script developer, reliability engineer) rather than describing implementation mechanics
|
|
11
|
+
- [ ] CHK002 All four user stories follow "As a [role], I want [capability], so that [benefit]" format with explicit role, capability, and measurable benefit
|
|
12
|
+
- [ ] CHK003 Priority assignments (P1 for US1/US2, P2 for US3, P3 for US4) are justified with "Why this priority" rationale tied to real-world impact
|
|
13
|
+
- [ ] CHK004 Functional requirements FR-001 through FR-013 describe either observable runtime behaviours (exit codes, retry attempts, log output) or structural constraints verified via
|
|
14
|
+
static inspection (e.g., FR-007/FR-008 library creation, FR-012 shared library sourcing). Named internal functions are prescribed under two distinct rules:
|
|
15
|
+
(a) **shared integration points** reused across multiple scripts (e.g., `calculate_backoff_delay`, referenced in FR-005, FR-006, and Key Entities); and (b) **script-local wrappers** whose
|
|
16
|
+
behaviour must be explicitly specified for testability (e.g., `curl_with_retry` in FR-005, scoped to `post-issue-comment.sh`). Rule (b) does not make the function a shared integration point —
|
|
17
|
+
it remains local to one script but is named because its retry-decision contract (HTTP status classification, transport error handling, backoff delegation) must be verifiable
|
|
18
|
+
|
|
19
|
+
## Requirement Completeness
|
|
20
|
+
|
|
21
|
+
- [ ] CHK005 Each acceptance scenario in US1–US4 is independently testable without requiring live API access — via stubbed/mocked external commands (`gh`, `curl`) for network-dependent scripts, via
|
|
22
|
+
direct function invocation for shared library helpers (US3), via injected error conditions (invalid input, missing variables) for pure local scripts (US4), and via structural grep-based
|
|
23
|
+
inspection for code-organisation constraints (US1 scenario 7, US2 scenario 17)
|
|
24
|
+
- [ ] CHK006 Edge cases section covers rate limiting (429 and 403 with `Retry-After`), plain 429 without `Retry-After` (still retryable), plain 403 without `Retry-After` (non-retryable client
|
|
25
|
+
error), missing `gh` CLI (exit code 127), unset `GITHUB_OUTPUT`, DNS failure, and HTTP redirects with explicit expected behaviour for each — and US2 has matching acceptance scenarios for all
|
|
26
|
+
four rate-limit/403 permutations (429 with header, 429 without header, 403 with header, 403 without header)
|
|
27
|
+
- [ ] CHK007 All acceptance scenarios use Given/When/Then format with specific observable outcomes: HTTP codes, exit codes, or stderr patterns for runtime scenarios, and grep counts or
|
|
28
|
+
structural match results for static-inspection scenarios (US1 scenario 7, US2 scenario 17)
|
|
29
|
+
- [ ] CHK008 Success criteria SC-001 through SC-006 include concrete verification methods (CI run logs, grep commands, integration tests, end-to-end pipeline runs)
|
|
30
|
+
- [ ] CHK009 Scope boundaries explicitly exclude pure local scripts (`sanitize-branch-name.sh`, `validate-label.sh`, `check-idempotency.sh`) from retry logic while including them in exit-code
|
|
31
|
+
propagation audit
|
|
32
|
+
- [ ] CHK010 Dependencies on existing infrastructure are documented: `call_with_retry` in `generate-spec-from-issue.sh`, `GITHUB_OUTPUT` fallback to `/dev/stdout`, Bash 4.x+ on `ubuntu-latest` runners
|
|
33
|
+
|
|
34
|
+
## Feature Readiness
|
|
35
|
+
|
|
36
|
+
- [ ] CHK011 FR-001 and FR-002 (`create-spec-pr.sh` failure propagation and retry) have matching acceptance scenarios in US1 (scenarios 1–6) covering success-after-retry, exhausted retries,
|
|
37
|
+
non-retryable pattern detection, missing `gh` binary (exit code 127), and exponential backoff timing verification. FR-012 (shared library sourcing and no-duplication) is independently verified by
|
|
38
|
+
US1 scenario 7, which performs a four-part structural inspection: (a) confirms `create-spec-pr.sh` contains an actual `source`/`.` statement loading `lib/retry.sh` (excluding comments),
|
|
39
|
+
(b) confirms it does NOT define its own `call_with_retry` function (comment lines are excluded via `grep -v '^[[:space:]]*#'` before counting to avoid false positives), (c) confirms at
|
|
40
|
+
least **one** `call_with_retry` invocation exists on non-comment lines — proving the shared helper is actively used (without hard-coding a specific number of literal call sites, since
|
|
41
|
+
a compliant implementation may route multiple retry paths through a local wrapper), AND (d) confirms via context-aware inspection that the primary
|
|
42
|
+
`gh pr create` command is wrapped by `call_with_retry`, positively proving the shared helper is used for the PR creation path specifically
|
|
43
|
+
- [ ] CHK012 User scenarios cover the complete lifecycle: PR creation failure (US1), comment posting failure (US2), shared library extraction (US3), and remaining script hardening audit (US4)
|
|
44
|
+
- [ ] CHK013 Success criteria SC-001 through SC-004 define measurable pass/fail conditions (GitHub Actions step status, PR creation without intervention, retry-then-succeed behaviour, single
|
|
45
|
+
definition via grep pattern). SC-004's grep verifies both that `call_with_retry` is defined in exactly one file under `.github/scripts/` AND that the defining file is `lib/retry.sh`
|
|
46
|
+
specifically (e.g., via `grep -rlE 'call_with_retry[[:space:]]*(\(|\{)' .github/scripts/ | grep -x '.*/lib/retry\.sh'`). This pattern matches both `call_with_retry() {` and
|
|
47
|
+
`function call_with_retry {` declaration styles, ensuring no alternative syntax bypasses the check. The surviving definition is the shared library — not an inline copy in another script
|
|
48
|
+
- [ ] CHK014 NFR-001 through NFR-006 constrain timing (60s max), compatibility (Bash 4.x+), and backward compatibility without dictating internal algorithms beyond the exponential backoff formula
|
|
49
|
+
- [ ] CHK015 FR-011 (redirect handling with preserved POST semantics) has a matching acceptance scenario in US2 that validates all three redirect types (301, 302, 303) are exercised at the story
|
|
50
|
+
level, not only documented as an edge case
|
|
51
|
+
- [ ] CHK016 FR-010 (diagnostics in error messages) has matching acceptance scenarios in US2 covering both failure modes — HTTP status code diagnostics (scenario 13) and transport exit code
|
|
52
|
+
diagnostics (scenario 14) — and in US3 covering both the final exhausted-attempts message (scenario 2) and the intermediate per-attempt retry log (scenario 5), ensuring the diagnostics contract
|
|
53
|
+
is validated for both primary scripts and both log types (intermediate and terminal)
|
|
54
|
+
- [ ] CHK017 FR-009 (retry observability logging) has matching acceptance scenarios that verify retry logs include the attempt number, total configured attempts, and computed delay — directly
|
|
55
|
+
validated in US3 scenario 5 (for the shared `call_with_retry` helper) and in US2 scenario 18 (for `post-issue-comment.sh`'s HTTP-aware `curl_with_retry` loop), ensuring the
|
|
56
|
+
attempt/total/delay contract is independently testable at the story level for both primary retry mechanisms, not merely implied by timing assertions in other scenarios
|
|
57
|
+
- [ ] CHK018 FR-013 (ambiguous-success recovery for `create-spec-pr.sh`) has a matching acceptance scenario in US1 (scenario 8) covering the "already exists" recovery path, and SC-001 is scoped
|
|
58
|
+
to exclude this legitimate success path so that a recovered PR does not conflict with the failure-reporting criterion
|
|
59
|
+
- [ ] CHK019 FR-005's DRY requirement (`post-issue-comment.sh` reuses `calculate_backoff_delay` from the shared library) is independently verified by US2 scenario 17, which performs a four-part
|
|
60
|
+
structural inspection: (a) confirms `post-issue-comment.sh` contains an actual `source`/`.` statement loading `lib/retry.sh` (excluding comments), (b) confirms it does NOT define its own
|
|
61
|
+
`calculate_backoff_delay` function (comment lines are excluded via `grep -v '^[[:space:]]*#'` before counting to avoid false positives), (c) confirms `calculate_backoff_delay` is invoked
|
|
62
|
+
on non-comment lines, AND (d) confirms via `sed`-based function-body extraction (using a pattern that matches both `curl_with_retry() {` and `function curl_with_retry {` declaration
|
|
63
|
+
styles) that `calculate_backoff_delay` is called on a non-comment line inside `curl_with_retry` (or a helper directly called by it) — comment lines are excluded via
|
|
64
|
+
`grep -v '^[[:space:]]*#'` in the function-body grep step — positively proving the shared library's backoff computation is on the retry execution path rather than at an unrelated
|
|
65
|
+
call site
|
|
66
|
+
|
|
67
|
+
## Notes
|
|
68
|
+
|
|
69
|
+
- This checklist was generated from the specification content for issue #1326
|
|
70
|
+
- Items marked incomplete require spec updates before proceeding to planning
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
*Generated by Copilot SDK (claude-opus-4.6)*
|
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
# Feature Specification: Resilient Error Handling and Retry Logic for SpecKit Pipeline Scripts
|
|
2
|
+
|
|
3
|
+
**Feature Branch**: `speckit/1326/phase-2-clarify`
|
|
4
|
+
**Created**: 2026-05-04
|
|
5
|
+
**Status**: Draft
|
|
6
|
+
**Input**: GitHub Issue #1326
|
|
7
|
+
**Source Issue**: #1326 (<https://github.com/ayaiayorg/agentic-devtools/issues/1326>)
|
|
8
|
+
|
|
9
|
+
## Problem Statement
|
|
10
|
+
|
|
11
|
+
Several SpecKit pipeline shell scripts in `.github/scripts/speckit-trigger/` do not reliably propagate failures or handle transient errors. The most critical defect is in `create-spec-pr.sh`, where a
|
|
12
|
+
failed `gh pr create` (e.g., HTTP 504) logs a warning but exits with code 0, causing the GitHub Actions step to report success. Additionally, `post-issue-comment.sh` uses `curl -s` without inspecting
|
|
13
|
+
the HTTP response code or retrying on transient failures. A proven `call_with_retry` helper already exists in `generate-spec-from-issue.sh` but is not shared across scripts.
|
|
14
|
+
|
|
15
|
+
## Clarifications
|
|
16
|
+
|
|
17
|
+
### Session 2026-05-05
|
|
18
|
+
|
|
19
|
+
- Q: How should `create-spec-pr.sh` distinguish between retryable transient failures (e.g., HTTP 504, network timeout) and non-retryable failures (e.g., validation error "branch does not exist") given
|
|
20
|
+
that `gh pr create` only returns a non-zero exit code without structured error classification? → A: Inspect the combined stderr output (from both the shell and `gh`) for known non-retryable
|
|
21
|
+
patterns (e.g., "not found", "does not exist", "permission denied", "authentication", "command not found") using a simple grep check. Additionally, detect a missing `gh` binary
|
|
22
|
+
via exit code 127. If stderr matches a known non-retryable pattern or exit code is 127, fail immediately. All other non-zero exits are treated as retryable. This approach errs on the side of
|
|
23
|
+
retrying (safe default) and can be refined over time by adding patterns. Note: "already exists" is intentionally excluded from the non-retryable list because `gh pr create` may report
|
|
24
|
+
"already exists" when the PR was actually created on a previous attempt that timed out client-side — this is an ambiguous success, not a definitive failure (see Edge Cases).
|
|
25
|
+
- Q: Should the `call_with_retry` function in the shared library support an optional callback/hook for classifying errors as retryable vs. non-retryable (to support both `gh` exit-code-based and
|
|
26
|
+
`curl` HTTP-status-based retry decisions), or should `post-issue-comment.sh` implement its own retry loop for HTTP-aware retries? → A: The shared `call_with_retry` function should remain simple
|
|
27
|
+
(retry on any non-zero exit code, as it does today). For `post-issue-comment.sh`, implement an HTTP-aware wrapper function (e.g., `curl_with_retry`) that internally handles HTTP status
|
|
28
|
+
classification and calls `curl` in a retry loop with the same exponential backoff semantics. This wrapper can source the shared library for the backoff delay calculation helper but manages its own
|
|
29
|
+
retry decisions based on HTTP status codes and a defined set of retryable transport-level `curl` exit codes (6=DNS failure, 7=connection refused, 28=timeout, 35=TLS handshake,
|
|
30
|
+
52=empty reply, 56=receive failure).
|
|
31
|
+
- Q: For the `post-issue-comment.sh` HTTP 429 (rate limit) handling, should the script parse the `Retry-After` header value and sleep for exactly that duration, or should it use the maximum of the
|
|
32
|
+
`Retry-After` value and the calculated exponential backoff delay? → A: Use the maximum of the `Retry-After` header value and the calculated exponential backoff delay. This ensures the script never
|
|
33
|
+
sleeps less than what the API requires while still respecting the overall exponential backoff strategy. If `Retry-After` exceeds 60 seconds, fail immediately per NFR-002.
|
|
34
|
+
- Q: What constitutes the "primary external command" for scripts audited in User Story 4 — specifically, should scripts like `sanitize-branch-name.sh` and `validate-label.sh` that perform only local
|
|
35
|
+
operations (no API calls) be included in the hardening scope? → A: Only scripts that make external network calls (API requests via `gh`, `curl`, or similar) are in scope for retry logic. Pure local
|
|
36
|
+
scripts (`sanitize-branch-name.sh`, `validate-label.sh`, `check-idempotency.sh`) should still be audited for proper exit-code propagation (i.e., they must not mask failures) but do NOT need retry
|
|
37
|
+
logic since their failures are deterministic and not transient.
|
|
38
|
+
- Q: Should the shared retry library file (`.github/scripts/speckit-trigger/lib/retry.sh`) also export a `calculate_backoff_delay` utility function that `post-issue-comment.sh`'s HTTP-aware retry loop
|
|
39
|
+
can use, or should each script independently compute backoff delays? → A: Yes, the shared library should export a `calculate_backoff_delay` helper function (accepting retry number — 1-based, where
|
|
40
|
+
retry 1 is the first retry after the initial attempt fails — and initial delay, returning the computed delay via `initial_delay × 2^(retry_number-1)`) so that all scripts share identical backoff
|
|
41
|
+
arithmetic. For the default configuration (initial_delay=5): retry 1 → 5s, retry 2 → 10s, matching NFR-001. This keeps the exponential backoff logic DRY and ensures consistent delay behaviour
|
|
42
|
+
across `call_with_retry` and the HTTP-aware `curl_with_retry` wrapper.
|
|
43
|
+
|
|
44
|
+
## User Scenarios & Testing *(mandatory)*
|
|
45
|
+
|
|
46
|
+
### User Story 1 — PR Creation Failure Surfaces as a Failed Step (Priority: P1)
|
|
47
|
+
|
|
48
|
+
As a **maintainer relying on the SpecKit pipeline**, I want `create-spec-pr.sh` to exit with a non-zero code when `gh pr create` fails, so that the GitHub Actions step is marked as failed and I am
|
|
49
|
+
immediately notified instead of discovering hours later that the PR was never created.
|
|
50
|
+
|
|
51
|
+
**Why this priority**: This is the bug that motivated the issue — silent success on a critical mutation (PR creation) masks real failures and causes downstream pipeline steps to run on a nonexistent
|
|
52
|
+
PR.
|
|
53
|
+
|
|
54
|
+
**Independent Test**: Run `create-spec-pr.sh` in a test environment where `gh pr create` is stubbed to return a non-zero exit code (simulating a transient failure
|
|
55
|
+
such as an HTTP 504 timeout). Verify the script exits with a non-zero code and the GitHub Actions step status is "failure". Optionally assert that stderr contains the
|
|
56
|
+
underlying error context (e.g., an HTTP 504 message) for diagnostics.
|
|
57
|
+
|
|
58
|
+
**Acceptance Scenarios**:
|
|
59
|
+
|
|
60
|
+
1. **Given** a valid branch with committed spec artifacts, **When** `gh pr create` fails with a transient error (e.g., HTTP 504 timeout) on all retry attempts, **Then** `create-spec-pr.sh` exits
|
|
61
|
+
with a non-zero exit code and writes a descriptive error message (including the failing command and exit code) to stderr, consistent with FR-002's retry-then-fail behaviour.
|
|
62
|
+
2. **Given** a valid branch with committed spec artifacts, **When** `gh pr create` fails on the first attempt but succeeds on a subsequent retry, **Then** the script completes successfully, outputs
|
|
63
|
+
the PR URL, and sets `pr_url` / `pr_number` in `GITHUB_OUTPUT`.
|
|
64
|
+
3. **Given** a valid branch with committed spec artifacts, **When** `gh pr create` fails on all retry attempts, **Then** the script exits with a non-zero exit code, logs the number of attempts made
|
|
65
|
+
and the final error, and writes empty values (`pr_url=` and `pr_number=`) to `GITHUB_OUTPUT`, preserving both keys' presence per NFR-005.
|
|
66
|
+
4. **Given** a valid branch with committed spec artifacts, **When** `gh pr create` fails with stderr containing a non-retryable pattern (e.g., "not found", "does not exist",
|
|
67
|
+
"permission denied", or "authentication"), **Then** the script fails immediately without retrying and exits with a non-zero exit code.
|
|
68
|
+
5. **Given** a valid branch with committed spec artifacts, **When** `gh` is not installed (the shell returns exit code 127 with "command not found" in stderr), **Then** the script fails immediately
|
|
69
|
+
without retrying and exits with a non-zero exit code.
|
|
70
|
+
6. **Given** a valid branch with committed spec artifacts, **When** `gh pr create` fails on the first attempt with a transient error but succeeds on the second attempt, **Then** the script waits
|
|
71
|
+
with exponential backoff (5s delay before the first retry, as computed by `calculate_backoff_delay` from the shared retry library per FR-012) before the retry attempt, consistent with NFR-001.
|
|
72
|
+
7. **Given** the implementation of `create-spec-pr.sh`, **When** the script is inspected via four checks — (a) `grep -cE '^[[:space:]]*(source|\.)[[:space:]]+.*lib/retry\.sh' .github/scripts/speckit-trigger/create-spec-pr.sh`
|
|
73
|
+
returns at least 1, confirming it contains an actual `source` (or `.`) statement loading the shared library (excluding comments),
|
|
74
|
+
AND (b) `grep -v '^[[:space:]]*#' .github/scripts/speckit-trigger/create-spec-pr.sh | grep -cE 'call_with_retry[[:space:]]*(\(|\{)'`
|
|
75
|
+
returns 0, confirming it does NOT define its own `call_with_retry` function (comment lines are excluded via `grep -v '^[[:space:]]*#'` to avoid false positives),
|
|
76
|
+
AND (c) `grep -v '^[[:space:]]*#' .github/scripts/speckit-trigger/create-spec-pr.sh | grep -c 'call_with_retry '` returns at least **1**, confirming
|
|
77
|
+
at least one `call_with_retry` invocation exists on non-comment lines — proving the shared helper is actively used (not merely sourced). This check intentionally avoids
|
|
78
|
+
hard-coding a specific number of literal call sites, since a compliant implementation may route multiple retry paths through a local wrapper that delegates to `call_with_retry`,
|
|
79
|
+
AND (d) `grep -v '^[[:space:]]*#' .github/scripts/speckit-trigger/create-spec-pr.sh | grep -c 'call_with_retry.*gh pr create\|gh pr create.*call_with_retry'` returns at least 1,
|
|
80
|
+
OR the `call_with_retry` invocation on the line immediately preceding or wrapping the `gh pr create` call can be confirmed via context-aware inspection (e.g.,
|
|
81
|
+
`grep -v '^[[:space:]]*#' .github/scripts/speckit-trigger/create-spec-pr.sh | grep -B2 -A2 'gh pr create' | grep -c 'call_with_retry'` returns at least 1),
|
|
82
|
+
confirming the primary PR creation command is wrapped by `call_with_retry` — **Then** all four checks pass, verifying FR-012's structural requirement that retry logic
|
|
83
|
+
for the `gh pr create` path is provided exclusively by the shared library and is actively used (not only present for the recovery lookup).
|
|
84
|
+
8. **Given** a valid branch with committed spec artifacts, **When** `gh pr create` fails with stderr containing "already exists" (indicating the PR was created on a previous timed-out attempt),
|
|
85
|
+
**Then** the script treats this as an ambiguous success: it attempts to recover the existing PR URL and number (via `call_with_retry` wrapping
|
|
86
|
+
a recovery function that invokes `gh pr list --head <branch> --json url,number --jq '.[0]'` and treats an empty or null result as a non-zero
|
|
87
|
+
exit — i.e., the wrapper returns failure when `gh pr list` exits 0 but produces no output, so that `call_with_retry` retries the lookup to
|
|
88
|
+
accommodate GitHub's eventual consistency), and if recovery succeeds (non-empty JSON output), the script exits 0 and sets `pr_url` /
|
|
89
|
+
`pr_number` in `GITHUB_OUTPUT`; if recovery fails after exhausting retries, the script writes empty values (`pr_url=` / `pr_number=`) to
|
|
90
|
+
`GITHUB_OUTPUT` per NFR-005 and exits with a non-zero exit code (per FR-013).
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
### User Story 2 — Issue Comment Posting Validates HTTP Response and Retries (Priority: P1)
|
|
95
|
+
|
|
96
|
+
As a **maintainer relying on the SpecKit pipeline**, I want `post-issue-comment.sh` to detect HTTP errors from the GitHub API and retry on transient failures, so that comments are reliably posted and
|
|
97
|
+
the step fails visibly when the API is persistently unavailable.
|
|
98
|
+
|
|
99
|
+
**Why this priority**: Comment posting is used in every pipeline phase to communicate status back to the issue. A silently dropped comment leaves the issue without context and confuses human
|
|
100
|
+
reviewers.
|
|
101
|
+
|
|
102
|
+
**Independent Test**: Run `post-issue-comment.sh` with a mock HTTP endpoint that returns 502 on the first two calls and 201 on the third. Verify the comment is posted and the script exits 0. Then run
|
|
103
|
+
with a mock that always returns 500; verify the script exits non-zero.
|
|
104
|
+
|
|
105
|
+
**Acceptance Scenarios**:
|
|
106
|
+
|
|
107
|
+
1. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 201, **Then** the script exits 0 and prints a success message.
|
|
108
|
+
2. **Given** a valid issue number and template, **When** the GitHub API returns a transient error (5xx), **Then** the script retries with exponential backoff up to the configured maximum attempts.
|
|
109
|
+
3. **Given** a valid issue number and template, **When** the GitHub API returns a non-2xx status on all retry attempts, **Then** the script exits with a non-zero exit code and logs the HTTP status
|
|
110
|
+
code and response body to stderr.
|
|
111
|
+
4. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 422 (validation error / client error), **Then** the script does **not** retry (client errors are not transient) and
|
|
112
|
+
exits with a non-zero code immediately.
|
|
113
|
+
5. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 429 with a `Retry-After: 10` header, **Then** the script sleeps for the maximum of the `Retry-After` value and the
|
|
114
|
+
calculated exponential backoff delay before retrying.
|
|
115
|
+
6. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 429 with a `Retry-After` value exceeding 60 seconds, **Then** the script fails immediately without waiting, per
|
|
116
|
+
NFR-002.
|
|
117
|
+
7. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 429 without a `Retry-After` header (plain rate-limit response), **Then** the script retries using exponential
|
|
118
|
+
backoff (the calculated delay only, since no `Retry-After` value is present), consistent with FR-006's classification of 429 as always retryable regardless of header presence.
|
|
119
|
+
8. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 403 with a `Retry-After` header (secondary rate-limit response), **Then** the script treats it as a retryable
|
|
120
|
+
rate-limit response and sleeps for the maximum of the `Retry-After` value and the calculated exponential backoff delay before retrying, consistent with FR-006.
|
|
121
|
+
9. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 403 with a `Retry-After` value exceeding 60 seconds (secondary rate-limit response), **Then** the script fails
|
|
122
|
+
immediately without waiting, per NFR-002.
|
|
123
|
+
10. **Given** a valid issue number and template, **When** the GitHub API returns HTTP 403 without a `Retry-After` header (plain forbidden response, not a rate-limit), **Then** the script does NOT
|
|
124
|
+
retry (403 without `Retry-After` is a non-retryable client error per FR-006) and exits with a non-zero exit code immediately.
|
|
125
|
+
11. **Given** a valid issue number and template, **When** `curl` fails with a transport-level error (e.g., exit code 6 for DNS resolution failure, exit code 7 for connection refused, or exit code 28
|
|
126
|
+
for connection timeout) without producing an HTTP status code, **Then** the script treats the failure as a retryable transient error and retries with exponential backoff up to the configured
|
|
127
|
+
maximum attempts.
|
|
128
|
+
12. **Given** a valid issue number and template, **When** the GitHub API endpoint returns an HTTP redirect, **Then** `curl_with_retry` follows the redirect while preserving POST semantics
|
|
129
|
+
(using `curl -L --post301 --post302 --post303`) and evaluates only the final response status code for success/failure classification, per FR-011. This scenario MUST be validated
|
|
130
|
+
independently for each redirect type (301, 302, and 303) to ensure all three `--postNNN` flags are exercised.
|
|
131
|
+
13. **Given** a valid issue number and template, **When** the GitHub API returns a non-2xx status on all retry attempts, **Then** each retry-related error message logged to stderr includes the
|
|
132
|
+
failing command name (`curl`) and the HTTP status code, per FR-010.
|
|
133
|
+
14. **Given** a valid issue number and template, **When** `curl` fails with a transport-level error (e.g., exit code 6 for DNS resolution failure) on all retry attempts, **Then** each retry-related
|
|
134
|
+
error message logged to stderr includes the failing command name (`curl`) and the transport exit code, per FR-010.
|
|
135
|
+
15. **Given** a valid issue number and template, **When** `curl` fails with a transport-level error (e.g., exit code 6 for DNS resolution failure, exit code 7 for connection refused, or exit code 28
|
|
136
|
+
for connection timeout) on all retry attempts, **Then** the script exits with a non-zero exit code, consistent with FR-004's terminal failure requirement extended to transport errors.
|
|
137
|
+
16. **Given** a valid issue number and template, **When** `curl` fails with a non-retryable transport exit code (e.g., exit code 3 for malformed URL or exit code 60 for certificate verification
|
|
138
|
+
failure), **Then** `curl_with_retry` does NOT retry and the script fails immediately with a non-zero exit code, per FR-005's distinction between retryable transport errors (codes 6, 7, 28,
|
|
139
|
+
35, 52, 56) and deterministic local/configuration errors (all other non-zero `curl` exit codes).
|
|
140
|
+
17. **Given** the implementation of `post-issue-comment.sh`, **When** the script is inspected via four checks —
|
|
141
|
+
(a) `grep -cE '^[[:space:]]*(source|\.)[[:space:]]+.*lib/retry\.sh' .github/scripts/speckit-trigger/post-issue-comment.sh`
|
|
142
|
+
returns at least 1, confirming it contains an actual `source` (or `.`) statement loading the shared library (excluding comments),
|
|
143
|
+
AND (b) `grep -v '^[[:space:]]*#' .github/scripts/speckit-trigger/post-issue-comment.sh | grep -cE 'calculate_backoff_delay[[:space:]]*(\(|\{)'`
|
|
144
|
+
returns 0, confirming it does NOT define its own inline `calculate_backoff_delay` function (comment lines are excluded via `grep -v '^[[:space:]]*#'` to avoid false positives),
|
|
145
|
+
AND (c) `grep -v '^[[:space:]]*#' .github/scripts/speckit-trigger/post-issue-comment.sh | grep -c 'calculate_backoff_delay'`
|
|
146
|
+
returns at least 1, confirming `calculate_backoff_delay` is invoked on non-comment lines,
|
|
147
|
+
AND (d) `sed -nE '/^[[:space:]]*(function[[:space:]]+)?curl_with_retry[[:space:]]*[({]/,/^[[:space:]]*}/p' .github/scripts/speckit-trigger/post-issue-comment.sh |`
|
|
148
|
+
`grep -v '^[[:space:]]*#' | grep -c 'calculate_backoff_delay'`
|
|
149
|
+
returns at least 1 (proving `calculate_backoff_delay` is called on a non-comment line inside the `curl_with_retry` function body).
|
|
150
|
+
The `sed` pattern allows optional leading whitespace and matches both `curl_with_retry() {` and
|
|
151
|
+
`function curl_with_retry {` declaration styles (including indented declarations) so that alternative Bash syntax does not cause a false negative.
|
|
152
|
+
Comment lines are excluded via `grep -v '^[[:space:]]*#'` to avoid false positives from comments mentioning the function name.
|
|
153
|
+
OR if `curl_with_retry` delegates delay computation through a local helper,
|
|
154
|
+
then `sed -nE '/^[[:space:]]*(function[[:space:]]+)?<helper_name>[[:space:]]*[({]/,/^[[:space:]]*}/p' .github/scripts/speckit-trigger/post-issue-comment.sh |`
|
|
155
|
+
`grep -v '^[[:space:]]*#' | grep -c 'calculate_backoff_delay'` returns at least 1 for that helper AND
|
|
156
|
+
`sed -nE '/^[[:space:]]*(function[[:space:]]+)?curl_with_retry[[:space:]]*[({]/,/^[[:space:]]*}/p' .github/scripts/speckit-trigger/post-issue-comment.sh |`
|
|
157
|
+
`grep -v '^[[:space:]]*#' | grep -c '<helper_name>'` also returns at least 1 (proving the call chain),
|
|
158
|
+
confirming `calculate_backoff_delay` is reachable from `curl_with_retry`'s execution path rather than at an unrelated call site —
|
|
159
|
+
**Then** all four checks pass, verifying FR-005's mandate that the script's retry logic delegates backoff delay computation to the shared library's `calculate_backoff_delay`
|
|
160
|
+
function rather than duplicating the backoff arithmetic. This check intentionally avoids constraining which function body the call appears in, since a compliant implementation
|
|
161
|
+
may delegate through a small local delay helper that calls the shared function.
|
|
162
|
+
18. **Given** a valid issue number and template, **When** the GitHub API returns a transient error (5xx) on the first attempt and `curl_with_retry` retries, **Then** each intermediate retry log
|
|
163
|
+
written to stderr includes the attempt number, total configured attempts, and the computed delay before the next retry — satisfying FR-009's observability requirement independently for
|
|
164
|
+
`post-issue-comment.sh`'s HTTP-aware retry loop, not only for the shared `call_with_retry` helper validated in US3 scenario 5.
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
### User Story 3 — Shared Retry Helper Library (Priority: P2)
|
|
169
|
+
|
|
170
|
+
As a **pipeline script developer**, I want a single, sourced shell library containing the `call_with_retry` function and a `calculate_backoff_delay` helper, so that all SpecKit scripts use consistent
|
|
171
|
+
retry semantics without duplicating the implementation.
|
|
172
|
+
|
|
173
|
+
**Why this priority**: The retry helper already exists and works well in `generate-spec-from-issue.sh`. Extracting it removes duplication and makes it trivial for User Stories 1 and 2 (and future
|
|
174
|
+
scripts) to adopt retry logic.
|
|
175
|
+
|
|
176
|
+
**Independent Test**: Source the shared library in a test script, invoke `call_with_retry` with a command that fails twice then succeeds, and verify it returns 0 after the third attempt. Invoke it
|
|
177
|
+
with a command that always fails and verify it returns non-zero after exhausting attempts. Additionally, verify `calculate_backoff_delay 1 5` returns `5` (delay before the 1st retry) and
|
|
178
|
+
`calculate_backoff_delay 2 5` returns `10` (delay before the 2nd retry), consistent with NFR-001's 5s → 10s delay sequence.
|
|
179
|
+
|
|
180
|
+
**Acceptance Scenarios**:
|
|
181
|
+
|
|
182
|
+
1. **Given** a shell script that sources the shared retry library, **When** `call_with_retry 3 2 <command>` is invoked and `<command>` fails on the first two attempts then succeeds, **Then** the
|
|
183
|
+
function returns 0, having retried with exponential backoff (2s, 4s delays).
|
|
184
|
+
2. **Given** a shell script that sources the shared retry library, **When** `call_with_retry 3 2 <command>` is invoked and `<command>` fails on all three attempts, **Then** the function returns 1 and
|
|
185
|
+
logs `"All 3 attempts failed. Command: '<command>', last exit code: <exit_code>"` to stderr, per FR-010.
|
|
186
|
+
3. **Given** `generate-spec-from-issue.sh` currently contains an inline `call_with_retry` function, **When** the shared library is adopted, **Then** `generate-spec-from-issue.sh` sources the library
|
|
187
|
+
instead of defining its own copy, and its existing behaviour is unchanged except for enhanced retry error messages (now including the failing command name per FR-010).
|
|
188
|
+
4. **Given** a shell script that sources the shared retry library, **When** `calculate_backoff_delay 2 5` is invoked, **Then** the function outputs `10` (5 × 2^(2-1)) representing the delay before the
|
|
189
|
+
2nd retry (i.e., before the 3rd attempt), consistent with NFR-001's 5s → 10s delay sequence.
|
|
190
|
+
5. **Given** a shell script that sources the shared retry library, **When** `call_with_retry 3 2 <command>` is invoked and `<command>` fails on the first attempt then succeeds on the second, **Then**
|
|
191
|
+
the intermediate retry log written to stderr for the first failed attempt includes: the attempt number (`1`), total configured attempts (`3`), the computed delay before the next retry, the
|
|
192
|
+
failing command name (`<command>`), and its exit code — satisfying both FR-009 (attempt/total/delay observability) and FR-010 (command name and exit code diagnostics).
|
|
193
|
+
6. **Given** a consuming script (e.g., `create-spec-pr.sh`) that sources the shared retry library via `BASH_SOURCE[0]`-relative path, **When** the script is invoked from a working directory
|
|
194
|
+
different from the script's own directory (e.g.,
|
|
195
|
+
`cd /tmp && GH_TOKEN=fake GITHUB_REPOSITORY=owner/repo bash /path/to/.github/scripts/speckit-trigger/create-spec-pr.sh feature/1326 /path/to/specs/1326-improve-error-handling-and 1326 "Title"`,
|
|
196
|
+
where `GH_TOKEN` and `GITHUB_REPOSITORY` are set to satisfy the script's environment validation before it reaches the library-sourcing code, and the `SPEC_DIR` argument is an absolute
|
|
197
|
+
path so that the script's directory-existence validation also passes),
|
|
198
|
+
**Then** the library is sourced successfully and `call_with_retry` is available, verifying FR-007's portability guarantee.
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
### User Story 4 — Audit and Harden Remaining Scripts (Priority: P3)
|
|
203
|
+
|
|
204
|
+
As a **pipeline reliability engineer**, I want all other SpecKit pipeline scripts audited for silent-success-on-failure patterns, so that no script masks errors that should fail the GitHub Actions
|
|
205
|
+
step.
|
|
206
|
+
|
|
207
|
+
**Why this priority**: After fixing the two most critical scripts, a sweep of the remaining scripts prevents regressions and undiscovered silent failures. This is lower priority because only
|
|
208
|
+
`create-spec-pr.sh` and `post-issue-comment.sh` have confirmed issues today.
|
|
209
|
+
|
|
210
|
+
**Independent Test**: For each script identified during the audit: (a) for scripts making external network calls, introduce a simulated failure for the primary external call (e.g., `gh`, `curl`,
|
|
211
|
+
external process) and verify the script exits non-zero; (b) for pure local scripts, introduce an internal error condition (e.g., invalid input, missing required variable) and verify the script exits
|
|
212
|
+
non-zero rather than masking the failure.
|
|
213
|
+
|
|
214
|
+
**Scope Clarification**: Only scripts making external network calls (`gh`, `curl`, or similar) require retry logic. Pure local scripts (`sanitize-branch-name.sh`, `validate-label.sh`,
|
|
215
|
+
`check-idempotency.sh`) must still be audited for proper exit-code propagation but do NOT need retry logic since their failures are deterministic and not transient.
|
|
216
|
+
|
|
217
|
+
**Acceptance Scenarios**:
|
|
218
|
+
|
|
219
|
+
1. **Given** the set of SpecKit pipeline shell scripts under `.github/scripts/speckit-trigger/` that make external network calls (excluding test harnesses and helper wrappers), **When** each script's
|
|
220
|
+
primary external command is stubbed to fail, **Then** no script exits with code 0 on failure unless the failure is explicitly documented as non-fatal (e.g., optional label application).
|
|
221
|
+
2. **Given** the set of pure local SpecKit pipeline shell scripts under `.github/scripts/speckit-trigger/` (e.g., `sanitize-branch-name.sh`, `validate-label.sh`, `check-idempotency.sh`; excluding test
|
|
222
|
+
harnesses and helper wrappers), **When** an internal error condition is introduced (e.g., invalid input, missing required environment variable), **Then** each script exits with a non-zero exit
|
|
223
|
+
code rather than silently succeeding.
|
|
224
|
+
3. **Given** a script that already uses `call_with_retry` inline (e.g., `generate-spec-from-issue.sh`), **When** the shared library from User Story 3 is available, **Then** the script is migrated to
|
|
225
|
+
source the shared library with no behavioural change except for enhanced retry error messages (now including the failing command name and exit code per FR-010), consistent with User Story 3
|
|
226
|
+
scenario 3.
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
### Edge Cases
|
|
231
|
+
|
|
232
|
+
- **What happens when the GitHub API rate-limits the caller (HTTP 429 or 403 with `Retry-After` header)?** The retry logic should respect the `Retry-After` header when present, using the maximum of
|
|
233
|
+
the `Retry-After` value and the calculated exponential backoff delay. If `Retry-After` exceeds 60 seconds, the script fails immediately per NFR-002. Both 429 (primary rate limit) and 403 with
|
|
234
|
+
`Retry-After` (secondary rate limit) are treated as retryable rate-limit responses.
|
|
235
|
+
- **What happens when the GitHub API returns HTTP 429 without a `Retry-After` header?** The response is still retryable — 429 is always treated as a rate-limit response per FR-006. The script
|
|
236
|
+
retries using only the calculated exponential backoff delay (since no `Retry-After` value is available to take the maximum of).
|
|
237
|
+
- **What happens when the GitHub API returns HTTP 403 without a `Retry-After` header?** This is a plain forbidden/client error, NOT a rate-limit response. Per FR-006, 403 is only retryable when
|
|
238
|
+
accompanied by a `Retry-After` header (indicating a secondary rate-limit). Without the header, 403 is treated as a non-retryable client error and the script fails immediately.
|
|
239
|
+
- **What happens when `gh` CLI is not installed or not authenticated?** The script should fail immediately on the first attempt (authentication errors are not transient) rather than retrying.
|
|
240
|
+
A missing `gh` binary is detected via exit code 127 or the "command not found" pattern in stderr. Authentication failures are detected via the non-retryable pattern list
|
|
241
|
+
("authentication", "permission denied", "not found", "does not exist", "command not found").
|
|
242
|
+
- **What happens when `GITHUB_OUTPUT` is unset (e.g., running outside GitHub Actions)?** The existing fallback to `/dev/stdout` must be preserved; error handling changes must not break local testing.
|
|
243
|
+
- **What happens when the network is completely unavailable (DNS failure)?** The retry mechanism should still apply — DNS failures are transient. All attempts should be exhausted before failing.
|
|
244
|
+
- **What happens when `curl` receives a redirect (3xx)?** Redirects should be followed while preserving POST semantics (using
|
|
245
|
+
`curl -L --post301 --post302 --post303`). Only final response codes should be evaluated for success/failure.
|
|
246
|
+
- **What happens when `gh pr create` reports "already exists"?** This is an ambiguous outcome: the PR may have been created on a previous attempt that timed out client-side. The script
|
|
247
|
+
MUST NOT treat this as a non-retryable failure. Instead, it attempts to recover the existing PR URL and number (via `gh pr list --head <branch> --json url,number`), using `call_with_retry`
|
|
248
|
+
for the recovery lookup to handle transient network failures during recovery. If recovery succeeds,
|
|
249
|
+
the script exits 0 with both `pr_url` and `pr_number` populated in `GITHUB_OUTPUT`. If no matching PR is found after exhausting retries, the script writes empty values
|
|
250
|
+
(`pr_url=` and `pr_number=`) to `GITHUB_OUTPUT` per NFR-005 and exits with a non-zero exit code. This ensures the resilient
|
|
251
|
+
retry path does not discard a successfully-created PR.
|
|
252
|
+
|
|
253
|
+
## Requirements *(mandatory)*
|
|
254
|
+
|
|
255
|
+
### Functional Requirements
|
|
256
|
+
|
|
257
|
+
- **FR-001**: `create-spec-pr.sh` MUST exit with a non-zero exit code when `gh pr create` fails after all retry attempts are exhausted.
|
|
258
|
+
- **FR-002**: `create-spec-pr.sh` MUST retry the `gh pr create` command with exponential backoff on transient failures (non-zero exit code from `gh` indicative of
|
|
259
|
+
network or server errors). Non-retryable failures — such as missing `gh` binary (command not found) or authentication errors — MUST cause immediate
|
|
260
|
+
failure without retry. Non-retryable failures are detected via two mechanisms:
|
|
261
|
+
1. **Exit code 127** (shell "command not found"): If the subshell exits with code 127, the `gh` binary is missing and the script MUST fail immediately without retry.
|
|
262
|
+
2. **Stderr pattern matching**: The combined stderr output (from both the shell and `gh`) is inspected for known non-retryable patterns: "not found",
|
|
263
|
+
"does not exist", "permission denied", "authentication", "command not found". Matching any pattern causes immediate failure without retry.
|
|
264
|
+
Note: "already exists" is intentionally excluded — see FR-013 for the ambiguous-success recovery path.
|
|
265
|
+
|
|
266
|
+
All other non-zero exits are treated as retryable (safe default). This means some validation errors whose stderr messages do not match the known patterns will be retried
|
|
267
|
+
rather than failing immediately; the pattern list can be extended over time as new non-retryable messages are identified.
|
|
268
|
+
- **FR-003**: `post-issue-comment.sh` MUST capture and inspect the HTTP response status code from the `curl` call.
|
|
269
|
+
- **FR-004**: `post-issue-comment.sh` MUST exit with a non-zero exit code when the HTTP response status is not in the 2xx range after applying the retry rules
|
|
270
|
+
defined in FR-005 and FR-006 (i.e., after exhausting retries for retryable errors, or immediately for non-retryable errors). This requirement also applies to transport-level
|
|
271
|
+
`curl` failures (e.g., DNS resolution failure, connection refused, timeout) where no HTTP status is available: after exhausting retries for such failures, the script MUST exit
|
|
272
|
+
with a non-zero exit code.
|
|
273
|
+
- **FR-005**: `post-issue-comment.sh` MUST retry `curl` calls on transient server errors (HTTP 5xx) and network/transport errors with exponential backoff. The retry logic MUST be implemented via an
|
|
274
|
+
HTTP-aware wrapper function (`curl_with_retry`) that manages its own retry decisions based on two failure modes:
|
|
275
|
+
1. **HTTP status codes**: When `curl` succeeds at the transport level (exit code 0) but the server returns a retryable status (5xx), the wrapper retries.
|
|
276
|
+
2. **Transport errors**: When `curl` exits with a non-zero exit code matching a known transient transport failure, the wrapper retries — no HTTP status is available in this case.
|
|
277
|
+
Only the following `curl` exit codes are retryable (all others cause immediate failure):
|
|
278
|
+
- **6** — DNS resolution failure
|
|
279
|
+
- **7** — Connection refused
|
|
280
|
+
- **28** — Operation timeout
|
|
281
|
+
- **35** — TLS/SSL handshake failure (transient negotiation error)
|
|
282
|
+
- **52** — Empty reply from server
|
|
283
|
+
- **56** — Network data receive failure
|
|
284
|
+
|
|
285
|
+
Any other non-zero `curl` exit code (e.g., exit code 3 for malformed URL, exit code 60 for certificate verification failure) indicates a deterministic
|
|
286
|
+
local or configuration error and MUST cause immediate failure without retry.
|
|
287
|
+
|
|
288
|
+
The wrapper uses the shared library's `calculate_backoff_delay` function for consistent delay computation.
|
|
289
|
+
- **FR-006**: `post-issue-comment.sh` MUST NOT retry on client errors (HTTP 4xx) except for 429 (rate limit) and 403 when accompanied by a `Retry-After` header (secondary rate-limit response). For
|
|
290
|
+
rate-limited responses, the sleep duration MUST be the maximum of the `Retry-After` header value and the calculated exponential backoff delay.
|
|
291
|
+
- **FR-007**: A shared shell library file MUST be created at `.github/scripts/speckit-trigger/lib/retry.sh` containing the `call_with_retry` function and a `calculate_backoff_delay` helper function,
|
|
292
|
+
sourceable by all SpecKit pipeline
|
|
293
|
+
scripts. Consuming scripts MUST source it relative to their own directory via `BASH_SOURCE[0]` to ensure reliable sourcing from any working directory.
|
|
294
|
+
- **FR-008**: `generate-spec-from-issue.sh` MUST be updated to source the shared retry library instead of defining `call_with_retry` inline.
|
|
295
|
+
- **FR-009**: The retry mechanism MUST log each retry attempt number, total attempts, and delay to stderr for observability in GitHub Actions logs.
|
|
296
|
+
- **FR-010**: All retry-related error messages MUST include the failing command name and the exit code or HTTP status code for diagnostics.
|
|
297
|
+
- **FR-011**: `post-issue-comment.sh` MUST follow HTTP redirects while preserving POST semantics (using `curl -L --post301 --post302 --post303`) and evaluate only the final
|
|
298
|
+
response status code for success/failure classification.
|
|
299
|
+
- **FR-012**: `create-spec-pr.sh` MUST source the shared retry library (`.github/scripts/speckit-trigger/lib/retry.sh`) and use its `call_with_retry` function for retry logic, ensuring
|
|
300
|
+
consistent exponential backoff behaviour across all SpecKit scripts. This eliminates the risk of `create-spec-pr.sh` implementing a divergent retry schedule.
|
|
301
|
+
- **FR-013**: `create-spec-pr.sh` MUST treat an "already exists" error from `gh pr create` as an ambiguous success rather than a non-retryable failure. When stderr contains "already exists",
|
|
302
|
+
the script MUST attempt to recover the existing PR URL by querying for an open PR on the same head branch (e.g., via `gh pr list --head <branch> --json url,number --jq '.[0]'`). The recovery
|
|
303
|
+
lookup MUST itself use `call_with_retry` (from the shared library) to handle the case where the network is still flaky at recovery time — without retry, a transient failure during recovery
|
|
304
|
+
would discard a PR that was actually created. If recovery succeeds (a matching PR is found after retries),
|
|
305
|
+
the script sets `pr_url` / `pr_number` in `GITHUB_OUTPUT` and exits 0. If recovery fails after exhausting retries (no matching PR found or persistent network failure), the script MUST still
|
|
306
|
+
write empty values (`pr_url=` and `pr_number=`) to `GITHUB_OUTPUT` — preserving the keys' presence per NFR-005 — before exiting with a non-zero exit code. This handles the case where
|
|
307
|
+
`gh pr create` succeeds server-side but the client times out before receiving the response, causing a subsequent retry to report "already exists".
|
|
308
|
+
|
|
309
|
+
### Non-Functional Requirements
|
|
310
|
+
|
|
311
|
+
- **NFR-001**: The default retry configuration MUST be 3 attempts with an initial delay of 5 seconds and exponential backoff (5s → 10s), consistent with the existing `call_with_retry`
|
|
312
|
+
implementation. The delay sequence lists intervals between consecutive attempts: 5 s before the 2nd attempt, 10 s before the 3rd attempt (2 delays for 3 attempts total).
|
|
313
|
+
- **NFR-002**: The maximum wall-clock time added by retries for any single command MUST NOT exceed 60 seconds (to avoid GitHub Actions step timeouts), excluding any sleep time
|
|
314
|
+
mandated by a `Retry-After` header on rate-limit responses (HTTP 429 or 403 with `Retry-After`). If a `Retry-After` value exceeds 60 seconds, the script MUST fail immediately
|
|
315
|
+
rather than waiting.
|
|
316
|
+
- **NFR-003**: Error messages MUST be written to stderr; normal operational output MUST remain on stdout, preserving the existing contract for `GITHUB_OUTPUT` and captured output.
|
|
317
|
+
- **NFR-004**: The shared retry library MUST be compatible with Bash 4.x+ and function correctly on `ubuntu-latest` GitHub Actions runners.
|
|
318
|
+
- **NFR-005**: All changes MUST maintain backward compatibility — existing script arguments, environment variables, and `GITHUB_OUTPUT` key names MUST NOT change.
|
|
319
|
+
- **NFR-006**: Scripts MUST remain idempotent where they currently are (e.g., label creation with `--force`).
|
|
320
|
+
|
|
321
|
+
### Key Entities
|
|
322
|
+
|
|
323
|
+
- **Shared Retry Library** (`.github/scripts/speckit-trigger/lib/retry.sh`): A sourceable shell file exporting the `call_with_retry` function and `calculate_backoff_delay` helper with configurable max
|
|
324
|
+
attempts, initial delay, and exponential backoff. The `calculate_backoff_delay` function accepts a retry number (1-based, where retry 1 is the first retry after the initial attempt fails) and
|
|
325
|
+
initial delay, returning the computed delay (`initial_delay × 2^(retry_number-1)`). For the default configuration (initial_delay=5): retry 1 → 5s, retry 2 → 10s, matching NFR-001's delay
|
|
326
|
+
sequence. Scripts MUST source this library relative to their own directory using `BASH_SOURCE[0]` (e.g.,
|
|
327
|
+
`SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"; source "$SCRIPT_DIR/lib/retry.sh"`) so that sourcing works reliably regardless of the caller's working directory.
|
|
328
|
+
- **HTTP Response Validator**: Logic within `post-issue-comment.sh` implemented as a `curl_with_retry` wrapper function that handles two failure modes: (1) HTTP status classification — evaluates
|
|
329
|
+
response status codes as success (2xx), transient/retryable (5xx, 429, 403 with `Retry-After`), or permanent failure (other 4xx); (2) transport-level failures — when `curl` exits with a non-zero
|
|
330
|
+
exit code from the retryable set (exit codes 6, 7, 28, 35, 52, 56 — see FR-005) without producing an HTTP status, the wrapper treats the failure as a retryable
|
|
331
|
+
transient error. Any other non-zero `curl` exit code (e.g., 3 for malformed URL, 60 for certificate verification failure) causes immediate failure without retry.
|
|
332
|
+
This wrapper uses `calculate_backoff_delay` from the shared library for consistent delay computation across both failure modes.
|
|
333
|
+
- **Non-Retryable Pattern List**: A set of stderr patterns used by `create-spec-pr.sh` to identify non-retryable failures: "not found", "does not exist", "permission denied",
|
|
334
|
+
"authentication", "command not found". Matching any pattern in the combined stderr output causes immediate failure without retry. Additionally, exit code 127 (shell "command not found")
|
|
335
|
+
triggers immediate failure regardless of stderr content. Note: "already exists" is intentionally excluded from this list because it may indicate an ambiguous success (see FR-013).
|
|
336
|
+
|
|
337
|
+
## Success Criteria *(mandatory)*
|
|
338
|
+
|
|
339
|
+
### Measurable Outcomes
|
|
340
|
+
|
|
341
|
+
- **SC-001**: When `gh pr create` returns a non-zero exit code **and** the failure is non-recoverable (retries exhausted or a non-retryable pattern detected), the `create-spec-pr.sh` step in
|
|
342
|
+
GitHub Actions is reported as **failed** (not succeeded) — verified by CI run logs. This excludes the FR-013 recovery path where "already exists" leads to a successful PR URL lookup and exit 0.
|
|
343
|
+
- **SC-002**: Transient `gh pr create` failures (e.g., HTTP 504) that succeed on retry result in a successful PR creation without manual intervention — verified by a test with a stubbed `gh` that
|
|
344
|
+
fails once then succeeds.
|
|
345
|
+
- **SC-003**: When the GitHub API returns HTTP 500/502/503 for comment posting, `post-issue-comment.sh` retries and eventually succeeds or exits non-zero — verified by integration test with mock
|
|
346
|
+
responses.
|
|
347
|
+
- **SC-004**: The `call_with_retry` function exists in exactly one shared library file; no other script defines its own copy — verified by
|
|
348
|
+
`grep -rE 'call_with_retry[[:space:]]*(\(|\{)' .github/scripts/` returning exactly one match (the definition in `lib/retry.sh`). This pattern matches both
|
|
349
|
+
`call_with_retry() {` and `function call_with_retry {` declaration styles, ensuring no alternative syntax bypasses the check. The shared library
|
|
350
|
+
MUST use the canonical `call_with_retry() {` declaration style.
|
|
351
|
+
- **SC-005**: All existing tests (`test_markdownlint_validation.sh`, `test_content_preservation.sh`, `test_check_analysis_gate.sh`, `test_sc004_regression.sh`) continue to pass after changes —
|
|
352
|
+
verified by CI.
|
|
353
|
+
- **SC-006**: The SpecKit pipeline completes a full 5-phase run successfully when no transient errors occur — verified by end-to-end pipeline execution (no regression).
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
*Generated by Copilot SDK (claude-opus-4.6)*
|