spec-kitty-cli 3.1.2a2__tar.gz → 3.1.2a3__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.
Files changed (1039) hide show
  1. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/CHANGELOG.md +8 -0
  2. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/PKG-INFO +19 -8
  3. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/README.md +18 -7
  4. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/pyproject.toml +4 -1
  5. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/device_flow/poller.py +58 -36
  6. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/__init__.py +1 -1
  7. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/accept.py +15 -15
  8. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/context.py +16 -26
  9. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/mission.py +43 -19
  10. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/status.py +29 -7
  11. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/tasks.py +39 -16
  12. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/workflow.py +25 -5
  13. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/dashboard.py +22 -0
  14. spec_kitty_cli-3.1.2a3/src/specify_cli/cli/commands/doctor.py +404 -0
  15. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/implement.py +24 -23
  16. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/merge.py +322 -12
  17. spec_kitty_cli-3.1.2a3/src/specify_cli/cli/commands/migrate_cmd.py +282 -0
  18. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/sync.py +19 -9
  19. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/selector_resolution.py +99 -1
  20. spec_kitty_cli-3.1.2a3/src/specify_cli/context/mission_resolver.py +272 -0
  21. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/context/resolver.py +8 -8
  22. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/dependency_parser.py +20 -21
  23. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/mission_creation.py +19 -11
  24. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/worktree.py +31 -66
  25. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/api_types.py +39 -0
  26. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/scanner.py +110 -0
  27. spec_kitty_cli-3.1.2a3/src/specify_cli/lanes/branch_naming.py +322 -0
  28. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/merge/__init__.py +9 -1
  29. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/merge/ordering.py +76 -1
  30. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/merge/state.py +30 -0
  31. spec_kitty_cli-3.1.2a3/src/specify_cli/migration/backfill_identity.py +472 -0
  32. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission_metadata.py +113 -18
  33. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/analyze.md +1 -1
  34. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/charter.md +1 -1
  35. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/checklist.md +1 -1
  36. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/implement.md +1 -1
  37. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/plan.md +10 -6
  38. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/research.md +2 -2
  39. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/specify.md +22 -14
  40. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/tasks-outline.md +1 -1
  41. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/tasks-packages.md +1 -1
  42. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/command-templates/tasks.md +5 -5
  43. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/saas/readiness.py +3 -3
  44. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/emit.py +29 -1
  45. spec_kitty_cli-3.1.2a3/src/specify_cli/status/identity_audit.py +326 -0
  46. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/models.py +19 -0
  47. spec_kitty_cli-3.1.2a3/src/specify_cli/status/store.py +215 -0
  48. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/background.py +69 -12
  49. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/daemon.py +20 -2
  50. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/dossier_pipeline.py +6 -7
  51. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/emitter.py +81 -10
  52. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/events.py +1 -1
  53. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/saas_client.py +7 -3
  54. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_1_1_normalize_status_json.py +13 -13
  55. spec_kitty_cli-3.1.2a2/src/specify_cli/cli/commands/doctor.py +0 -186
  56. spec_kitty_cli-3.1.2a2/src/specify_cli/cli/commands/migrate_cmd.py +0 -134
  57. spec_kitty_cli-3.1.2a2/src/specify_cli/lanes/branch_naming.py +0 -96
  58. spec_kitty_cli-3.1.2a2/src/specify_cli/migration/backfill_identity.py +0 -214
  59. spec_kitty_cli-3.1.2a2/src/specify_cli/status/store.py +0 -94
  60. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/.gitignore +0 -0
  61. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/LICENSE +0 -0
  62. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/1.x/README.md +0 -0
  63. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/1.x/adr/README.md +0 -0
  64. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/1.x/notes/README.md +0 -0
  65. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/00_landscape/README.md +0 -0
  66. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/01_context/README.md +0 -0
  67. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/02_containers/README.md +0 -0
  68. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/03_components/README.md +0 -0
  69. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/04_implementation_mapping/README.md +0 -0
  70. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/README.md +0 -0
  71. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/adr/README.md +0 -0
  72. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/2026-02-architecture-discovery-and-restructure/README.md +0 -0
  73. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/2026-03-054-postmortem/README.md +0 -0
  74. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/2026-03-doctrine-execution-integration/README.md +0 -0
  75. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/2026-04-mission-nomenclature-reconciliation/README.md +0 -0
  76. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/2026-04-tracker-binding-context-discovery/README.md +0 -0
  77. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/README.md +0 -0
  78. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/next-mission-mappings/README.md +0 -0
  79. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/initiatives/test_improvement/README.md +0 -0
  80. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/2.x/user_journey/README.md +0 -0
  81. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/README.md +0 -0
  82. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/adrs/README.md +0 -0
  83. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/audience/README.md +0 -0
  84. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/audience/external/README.md +0 -0
  85. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/audience/internal/README.md +0 -0
  86. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/architecture/glossary/README.md +0 -0
  87. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/docs/development/tracking/next-mission-mappings/README.md +0 -0
  88. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/docs/reference/README.md +0 -0
  89. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/glossary/README.md +0 -0
  90. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/007-frontmatter-only-lane/tasks/README.md +0 -0
  91. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/008-unified-python-cli/tasks/README.md +0 -0
  92. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/010-workspace-per-work-package-for-parallel-development/tasks/README.md +0 -0
  93. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/011-constitution-packaging-safety-and-redesign/tasks/README.md +0 -0
  94. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/012-documentation-mission/tasks/README.md +0 -0
  95. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/014-comprehensive-end-user-documentation/tasks/README.md +0 -0
  96. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/017-smarter-feature-merge-with-preflight/tasks/README.md +0 -0
  97. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/018-merge-preflight-documentation/tasks/README.md +0 -0
  98. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/019-autonomous-multi-agent-orchestration-research/tasks/README.md +0 -0
  99. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/020-autonomous-multi-agent-orchestrator/tasks/README.md +0 -0
  100. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/021-orchestrator-end-to-end-testing-suite/tasks/README.md +0 -0
  101. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/028-cli-event-emission-sync/tasks/README.md +0 -0
  102. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/032-identity-aware-cli-event-sync/tasks/README.md +0 -0
  103. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/034-feature-status-state-model-remediation/tasks/README.md +0 -0
  104. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/039-cli-2x-readiness/tasks/README.md +0 -0
  105. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/041-enable-plan-mission-runtime-support/tasks/README.md +0 -0
  106. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/045-mission-handoff-package-version-matrix/handoff/README.md +0 -0
  107. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/045-mission-handoff-package-version-matrix/tasks/README.md +0 -0
  108. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/047-mutmut-mutation-testing-ci/tasks/README.md +0 -0
  109. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/047-namespace-aware-artifact-body-sync/tasks/README.md +0 -0
  110. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/048-tracker-publish-resource-routing/tasks/README.md +0 -0
  111. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/049-fix-merge-target-resolution/tasks/README.md +0 -0
  112. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/050-state-model-cleanup-foundations/tasks/README.md +0 -0
  113. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/051-canonical-state-authority-single-metadata-writer/tasks/README.md +0 -0
  114. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/052-acceptance-pipeline-regression-fixes/tasks/README.md +0 -0
  115. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/053-orchestrator-api-json-contract-fidelity/tasks/README.md +0 -0
  116. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/054-constitution-interview-compiler-and-bootstrap/tasks/README.md +0 -0
  117. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/054-state-architecture-cleanup-phase-2/tasks/README.md +0 -0
  118. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/055-agent-skills-pack/tasks/README.md +0 -0
  119. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/055-doctrine-stack-init-and-profile-integration/tasks/README.md +0 -0
  120. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/056-documentation-parity-sprint/tasks/README.md +0 -0
  121. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/057-canonical-context-architecture-cleanup/tasks/README.md +0 -0
  122. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/058-hybrid-prompt-and-shim-agent-surface/tasks/README.md +0 -0
  123. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/059-saas-mediated-cli-tracker-reflow/tasks/README.md +0 -0
  124. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/060-canonical-status-model-cleanup/tasks/README.md +0 -0
  125. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/061-ticket-first-mission-origin-binding/tasks/README.md +0 -0
  126. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/062-fix-doctrine-migration-test-failures/tasks/README.md +0 -0
  127. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/062-tracker-binding-context-discovery/tasks/README.md +0 -0
  128. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/063-universal-charter-rename/tasks/README.md +0 -0
  129. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/064-complete-mission-identity-cutover/tasks/README.md +0 -0
  130. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/065-tasks-and-lane-stabilization/tasks/README.md +0 -0
  131. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/065-wp-metadata-state-type-hardening/tasks/README.md +0 -0
  132. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/066-review-loop-stabilization/tasks/README.md +0 -0
  133. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/067-runtime-recovery-and-audit-safety/tasks/README.md +0 -0
  134. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/068-post-merge-reliability-and-release-hardening/tasks/README.md +0 -0
  135. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/069-planning-pipeline-integrity/tasks/README.md +0 -0
  136. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/076-init-command-overhaul/tasks/README.md +0 -0
  137. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/077-mission-terminology-cleanup/tasks/README.md +0 -0
  138. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/078-planning-artifact-and-query-consistency/tasks/README.md +0 -0
  139. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/079-post-555-release-hardening/tasks/README.md +0 -0
  140. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/080-ci-hardening-and-lint-cleanup/tasks/README.md +0 -0
  141. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/080-wpstate-lane-consumer-strangler-fig-phase-2/tasks/README.md +0 -0
  142. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/081-canonical-baseline-and-repository-boundary/tasks/README.md +0 -0
  143. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/kitty-specs/082-stealth-gated-saas-sync-hardening/tasks/README.md +0 -0
  144. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/scripts/release/README.md +0 -0
  145. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/scripts/tool_configs/README.md +0 -0
  146. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/README.md +0 -0
  147. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/__init__.py +0 -0
  148. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/catalog.py +0 -0
  149. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/compiler.py +0 -0
  150. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/context.py +0 -0
  151. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/defaults.yaml +0 -0
  152. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/extractor.py +0 -0
  153. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/generator.py +0 -0
  154. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/hasher.py +0 -0
  155. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/interview.py +0 -0
  156. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/parser.py +0 -0
  157. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/reference_resolver.py +0 -0
  158. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/resolver.py +0 -0
  159. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/schemas.py +0 -0
  160. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/sync.py +0 -0
  161. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/charter/template_resolver.py +0 -0
  162. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/README.md +0 -0
  163. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/__init__.py +0 -0
  164. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/README.md +0 -0
  165. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/architecture/candidates/artifact-commit-discipline-and-structured-messages.import.yaml +0 -0
  166. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/architecture/candidates/quality-gates-pre-commit-commit-msg-ci.import.yaml +0 -0
  167. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/architecture/manifest.yaml +0 -0
  168. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/contracts/candidates/event-git-metadata-and-merge-resolution.import.yaml +0 -0
  169. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/contracts/manifest.yaml +0 -0
  170. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/contributing/candidates/git-commit-conventions-and-local-gates.import.yaml +0 -0
  171. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/contributing/candidates/release-branch-and-tag-discipline.import.yaml +0 -0
  172. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/contributing/manifest.yaml +0 -0
  173. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/example-zombies/candidates/zombies-tdd.import.yaml +0 -0
  174. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/example-zombies/manifest.yaml +0 -0
  175. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/ammerse-impact-analysis.import.yaml +0 -0
  176. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/avoid-gold-plating.import.yaml +0 -0
  177. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/connascence-coupling-analysis.import.yaml +0 -0
  178. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/do-the-important-things.import.yaml +0 -0
  179. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/easy-to-change.import.yaml +0 -0
  180. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/how-do-we-make-this-fail.import.yaml +0 -0
  181. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/safe-to-fail-experiment.import.yaml +0 -0
  182. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/candidates/software-architecture-quality-attributes.import.yaml +0 -0
  183. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/penguin-pragmatic-patterns/manifest.yaml +0 -0
  184. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/.gitkeep +0 -0
  185. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/agent-python-pedro.import.yaml +0 -0
  186. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/directive-016-atdd.import.yaml +0 -0
  187. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/directive-017-tdd.import.yaml +0 -0
  188. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/directive-037-context-aware-design.import.yaml +0 -0
  189. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/directive-038-conceptual-alignment.import.yaml +0 -0
  190. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/procedure-test-first-bug-fixing.import.yaml +0 -0
  191. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/styleguide-python-conventions.import.yaml +0 -0
  192. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/tactic-atdd-adversarial-acceptance.import.yaml +0 -0
  193. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/tactic-code-review-incremental.import.yaml +0 -0
  194. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/tactic-input-validation-fail-fast.import.yaml +0 -0
  195. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/tactic-language-driven-design.import.yaml +0 -0
  196. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/tactic-reverse-speccing.import.yaml +0 -0
  197. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/tactic-test-boundaries-by-responsibility.import.yaml +0 -0
  198. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/tactic-testing-select-appropriate-level.import.yaml +0 -0
  199. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/candidates/toolguide-python-review-checks.import.yaml +0 -0
  200. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/quickstart-agent-augmented-development/manifest.yaml +0 -0
  201. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/styleguides/candidates/git-local-config-tracking-controls.import.yaml +0 -0
  202. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/styleguides/candidates/git_commit_messages.md +0 -0
  203. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/_reference/styleguides/manifest.yaml +0 -0
  204. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent-profiles/README.md +0 -0
  205. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/README.md +0 -0
  206. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/__init__.py +0 -0
  207. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/capabilities.py +0 -0
  208. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/profile.py +0 -0
  209. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/repository.py +0 -0
  210. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/schema_models.py +0 -0
  211. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/README.md +0 -0
  212. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/architect.agent.yaml +0 -0
  213. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/curator.agent.yaml +0 -0
  214. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/designer.agent.yaml +0 -0
  215. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/generic-agent.agent.yaml +0 -0
  216. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/human-in-charge.agent.yaml +0 -0
  217. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/implementer.agent.yaml +0 -0
  218. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/planner.agent.yaml +0 -0
  219. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/python-implementer.agent.yaml +0 -0
  220. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/researcher.agent.yaml +0 -0
  221. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/shipped/reviewer.agent.yaml +0 -0
  222. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/agent_profiles/validation.py +0 -0
  223. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/artifact_kinds.py +0 -0
  224. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/curation/README.md +0 -0
  225. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/curation/engine.py +0 -0
  226. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/curation/imports/example-zombies/candidates/zombies-tdd.import.yaml +0 -0
  227. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/curation/imports/example-zombies/manifest.yaml +0 -0
  228. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/curation/imports/quickstart-agent-augmented-development/candidates/.gitkeep +0 -0
  229. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/curation/state.py +0 -0
  230. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/curation/workflow.py +0 -0
  231. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/README.md +0 -0
  232. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/__init__.py +0 -0
  233. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/_proposed/.gitkeep +0 -0
  234. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/_proposed/007-trade-off-assessment-protocol.directive.yaml +0 -0
  235. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/_proposed/017-glossary-integrity-standard.directive.yaml +0 -0
  236. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/_proposed/019-documentation-gap-prioritization.directive.yaml +0 -0
  237. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/_proposed/020-no-parallel-duplicate-test-runs.directive.yaml +0 -0
  238. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/_proposed/033-prestudy-requirement.directive.yaml +0 -0
  239. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/models.py +0 -0
  240. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/repository.py +0 -0
  241. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/001-architectural-integrity-standard.directive.yaml +0 -0
  242. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/003-decision-documentation-requirement.directive.yaml +0 -0
  243. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/010-specification-fidelity-requirement.directive.yaml +0 -0
  244. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/018-doctrine-versioning-requirement.directive.yaml +0 -0
  245. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/024-locality-of-change.directive.yaml +0 -0
  246. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/025-boy-scout-rule.directive.yaml +0 -0
  247. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/028-search-tool-discipline.directive.yaml +0 -0
  248. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/029-agent-commit-signing-policy.directive.yaml +0 -0
  249. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/030-test-and-typecheck-quality-gate.directive.yaml +0 -0
  250. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/031-context-aware-design.directive.yaml +0 -0
  251. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/032-conceptual-alignment.directive.yaml +0 -0
  252. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/033-targeted-staging-policy.directive.yaml +0 -0
  253. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/034-test-first-development.directive.yaml +0 -0
  254. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/shipped/__init__.py +0 -0
  255. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/test-first.directive.yaml +0 -0
  256. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/directives/validation.py +0 -0
  257. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/import_candidates/__init__.py +0 -0
  258. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/import_candidates/models.py +0 -0
  259. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/mission_step_contracts/__init__.py +0 -0
  260. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/mission_step_contracts/models.py +0 -0
  261. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/mission_step_contracts/repository.py +0 -0
  262. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/mission_step_contracts/shipped/implement.step-contract.yaml +0 -0
  263. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/mission_step_contracts/shipped/plan.step-contract.yaml +0 -0
  264. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/mission_step_contracts/shipped/review.step-contract.yaml +0 -0
  265. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/mission_step_contracts/shipped/specify.step-contract.yaml +0 -0
  266. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/README.md +0 -0
  267. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/__init__.py +0 -0
  268. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/action_index.py +0 -0
  269. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/README.md +0 -0
  270. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/expected-artifacts.yaml +0 -0
  271. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/mission.yaml +0 -0
  272. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/README.md +0 -0
  273. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/divio/README.md +0 -0
  274. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/divio/explanation-template.md +0 -0
  275. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/divio/howto-template.md +0 -0
  276. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/divio/reference-template.md +0 -0
  277. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/divio/tutorial-template.md +0 -0
  278. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/generators/README.md +0 -0
  279. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/generators/jsdoc.json.template +0 -0
  280. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/generators/sphinx-conf.py.template +0 -0
  281. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/plan-template.md +0 -0
  282. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/release-template.md +0 -0
  283. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/spec-template.md +0 -0
  284. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/task-prompt-template.md +0 -0
  285. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/documentation/templates/tasks-template.md +0 -0
  286. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/glossary_hook.py +0 -0
  287. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/models.py +0 -0
  288. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/plan/README.md +0 -0
  289. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/plan/mission-runtime.yaml +0 -0
  290. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/plan/mission.yaml +0 -0
  291. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/plan/templates/.gitkeep +0 -0
  292. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/plan/templates/README.md +0 -0
  293. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/primitives.py +0 -0
  294. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/repository.py +0 -0
  295. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/README.md +0 -0
  296. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/expected-artifacts.yaml +0 -0
  297. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/mission.yaml +0 -0
  298. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/README.md +0 -0
  299. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/data-model-template.md +0 -0
  300. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/plan-template.md +0 -0
  301. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/research/README.md +0 -0
  302. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/research/evidence-log.csv +0 -0
  303. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/research/source-register.csv +0 -0
  304. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/research-template.md +0 -0
  305. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/spec-template.md +0 -0
  306. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/task-prompt-template.md +0 -0
  307. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/research/templates/tasks-template.md +0 -0
  308. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/README.md +0 -0
  309. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/implement/guidelines.md +0 -0
  310. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/implement/index.yaml +0 -0
  311. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/plan/guidelines.md +0 -0
  312. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/plan/index.yaml +0 -0
  313. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/review/guidelines.md +0 -0
  314. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/review/index.yaml +0 -0
  315. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/specify/guidelines.md +0 -0
  316. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/actions/specify/index.yaml +0 -0
  317. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/expected-artifacts.yaml +0 -0
  318. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/mission-runtime.yaml +0 -0
  319. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/mission.yaml +0 -0
  320. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/templates/README.md +0 -0
  321. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/templates/plan-template.md +0 -0
  322. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/templates/spec-template.md +0 -0
  323. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/templates/task-prompt-template.md +0 -0
  324. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/missions/software-dev/templates/tasks-template.md +0 -0
  325. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/model_task_routing/__init__.py +0 -0
  326. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/model_task_routing/models.py +0 -0
  327. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/README.md +0 -0
  328. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/__init__.py +0 -0
  329. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/_proposed/.gitkeep +0 -0
  330. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/models.py +0 -0
  331. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/repository.py +0 -0
  332. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/shipped/__init__.py +0 -0
  333. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/shipped/atomic-design.paradigm.yaml +0 -0
  334. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/shipped/c4-incremental-detail-modeling.paradigm.yaml +0 -0
  335. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/shipped/domain-driven-design.paradigm.yaml +0 -0
  336. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/test-first.paradigm.yaml +0 -0
  337. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/paradigms/validation.py +0 -0
  338. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/README.md +0 -0
  339. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/__init__.py +0 -0
  340. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/_proposed/.gitkeep +0 -0
  341. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/models.py +0 -0
  342. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/repository.py +0 -0
  343. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/__init__.py +0 -0
  344. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/documentation-gap-prioritization.procedure.yaml +0 -0
  345. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/drill-down-documentation.procedure.yaml +0 -0
  346. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/event-storming-discovery.procedure.yaml +0 -0
  347. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/migrate-project-guidance-to-spec-kitty-charter.procedure.yaml +0 -0
  348. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/refactoring.procedure.yaml +0 -0
  349. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/situational-assessment.procedure.yaml +0 -0
  350. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/procedures/shipped/test-first-bug-fixing.procedure.yaml +0 -0
  351. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/pyproject.toml +0 -0
  352. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/resolver.py +0 -0
  353. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/README.md +0 -0
  354. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/agent-profile.schema.yaml +0 -0
  355. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/directive.schema.yaml +0 -0
  356. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/import-candidate.schema.yaml +0 -0
  357. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/mission.schema.yaml +0 -0
  358. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/model-to-task_type.schema.yaml +0 -0
  359. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/paradigm.schema.yaml +0 -0
  360. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/procedure.schema.yaml +0 -0
  361. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/styleguide.schema.yaml +0 -0
  362. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/tactic.schema.yaml +0 -0
  363. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/schemas/toolguide.schema.yaml +0 -0
  364. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/service.py +0 -0
  365. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/shared/__init__.py +0 -0
  366. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/shared/exceptions.py +0 -0
  367. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/shared/models.py +0 -0
  368. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/shared/schema_utils.py +0 -0
  369. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/README.md +0 -0
  370. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/ad-hoc-profile-load/SKILL.md +0 -0
  371. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-charter-doctrine/SKILL.md +0 -0
  372. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-charter-doctrine/references/charter-command-map.md +0 -0
  373. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-charter-doctrine/references/doctrine-artifact-structure.md +0 -0
  374. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-git-workflow/SKILL.md +0 -0
  375. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-git-workflow/references/git-operations-matrix.md +0 -0
  376. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-glossary-context/SKILL.md +0 -0
  377. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-glossary-context/references/glossary-field-guide.md +0 -0
  378. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-glossary-context/references/semantic-drift-examples.md +0 -0
  379. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-implement-review/SKILL.md +0 -0
  380. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-implement-review/references/agent-dispatch-matrix.md +0 -0
  381. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-implement-review/references/rejection-loop-checklist.md +0 -0
  382. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-mission-review/SKILL.md +0 -0
  383. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-mission-review/references/mission-review-fr-trace-guide.md +0 -0
  384. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-mission-system/SKILL.md +0 -0
  385. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-mission-system/references/mission-comparison-matrix.md +0 -0
  386. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-orchestrator-api-operator/SKILL.md +0 -0
  387. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-orchestrator-api-operator/references/host-boundary-rules.md +0 -0
  388. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-orchestrator-api-operator/references/orchestrator-api-contract.md +0 -0
  389. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-runtime-next/SKILL.md +0 -0
  390. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-runtime-next/references/blocked-state-recovery.md +0 -0
  391. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-runtime-next/references/runtime-result-taxonomy.md +0 -0
  392. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-runtime-review/SKILL.md +0 -0
  393. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-runtime-review/references/review-checklist.md +0 -0
  394. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-setup-doctor/SKILL.md +0 -0
  395. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-setup-doctor/references/agent-path-matrix.md +0 -0
  396. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-setup-doctor/references/common-failure-signatures.md +0 -0
  397. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/skills/spec-kitty-setup-doctor/scripts/.gitkeep +0 -0
  398. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/README.md +0 -0
  399. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/__init__.py +0 -0
  400. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/_proposed/.gitkeep +0 -0
  401. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/models.py +0 -0
  402. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/python-implementation.styleguide.yaml +0 -0
  403. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/repository.py +0 -0
  404. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/shipped/__init__.py +0 -0
  405. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/shipped/aggregate-design-rules.styleguide.yaml +0 -0
  406. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/shipped/python-conventions.styleguide.yaml +0 -0
  407. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/shipped/writing/kitty-glossary-writing.styleguide.yaml +0 -0
  408. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/validation.py +0 -0
  409. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/writing/README.md +0 -0
  410. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/styleguides/writing/kitty-glossary-writing.styleguide.yaml +0 -0
  411. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/README.md +0 -0
  412. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/__init__.py +0 -0
  413. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/_proposed/.gitkeep +0 -0
  414. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/_proposed/design-decision-debiasing.tactic.yaml +0 -0
  415. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/_proposed/domain-message-flow-mapping.tactic.yaml +0 -0
  416. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/_proposed/domain-service-extraction.tactic.yaml +0 -0
  417. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/_proposed/event-storming-facilitation.tactic.yaml +0 -0
  418. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/_proposed/repository-boundary-design.tactic.yaml +0 -0
  419. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/acceptance-test-first.tactic.yaml +0 -0
  420. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/glossary-curation-interview.tactic.yaml +0 -0
  421. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/models.py +0 -0
  422. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/repository.py +0 -0
  423. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/__init__.py +0 -0
  424. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/acceptance-test-first.tactic.yaml +0 -0
  425. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/adr-drafting-workflow.tactic.yaml +0 -0
  426. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/aggregate-boundary-design.tactic.yaml +0 -0
  427. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/ammerse-impact-analysis.tactic.yaml +0 -0
  428. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/anti-corruption-layer.tactic.yaml +0 -0
  429. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/architecture-diagram-review-checklist.tactic.yaml +0 -0
  430. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/atdd-adversarial-acceptance.tactic.yaml +0 -0
  431. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/atomic-design-review-checklist.tactic.yaml +0 -0
  432. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/atomic-state-ownership.tactic.yaml +0 -0
  433. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/autonomous-operation-protocol.tactic.yaml +0 -0
  434. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/avoid-gold-plating.tactic.yaml +0 -0
  435. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/bounded-context-canvas-fill.tactic.yaml +0 -0
  436. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/bounded-context-identification.tactic.yaml +0 -0
  437. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/c4-zoom-in-architecture-documentation.tactic.yaml +0 -0
  438. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/change-apply-smallest-viable-diff.tactic.yaml +0 -0
  439. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/code-review-incremental.tactic.yaml +0 -0
  440. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/compositional-stream-boundaries.tactic.yaml +0 -0
  441. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/connascence-analysis.tactic.yaml +0 -0
  442. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/context-mapping-classification.tactic.yaml +0 -0
  443. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/cross-cutting-state-via-store.tactic.yaml +0 -0
  444. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/decision-marker-capture.tactic.yaml +0 -0
  445. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/documentation-curation-audit.tactic.yaml +0 -0
  446. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/domain-event-capture.tactic.yaml +0 -0
  447. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/easy-to-change.tactic.yaml +0 -0
  448. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/eisenhower-prioritisation.tactic.yaml +0 -0
  449. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/entity-value-object-classification.tactic.yaml +0 -0
  450. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/glossary-curation-interview.tactic.yaml +0 -0
  451. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/input-validation-fail-fast.tactic.yaml +0 -0
  452. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/language-driven-design.tactic.yaml +0 -0
  453. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/no-parallel-duplicate-test-runs.tactic.yaml +0 -0
  454. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/premortem-risk-identification.tactic.yaml +0 -0
  455. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/problem-decomposition.tactic.yaml +0 -0
  456. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/quality-gate-verification.tactic.yaml +0 -0
  457. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-change-function-declaration.tactic.yaml +0 -0
  458. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-combine-functions-into-transform.tactic.yaml +0 -0
  459. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-conditional-to-strategy.tactic.yaml +0 -0
  460. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-consolidate-conditional-expression.tactic.yaml +0 -0
  461. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-encapsulate-record.tactic.yaml +0 -0
  462. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-encapsulate-variable.tactic.yaml +0 -0
  463. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-extract-class-by-responsibility-split.tactic.yaml +0 -0
  464. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-extract-first-order-concept.tactic.yaml +0 -0
  465. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-guard-clauses-before-polymorphism.tactic.yaml +0 -0
  466. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-inline-temp.tactic.yaml +0 -0
  467. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-introduce-null-object.tactic.yaml +0 -0
  468. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-move-field.tactic.yaml +0 -0
  469. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-move-method.tactic.yaml +0 -0
  470. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-replace-magic-number-with-symbolic-constant.tactic.yaml +0 -0
  471. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-replace-temp-with-query.tactic.yaml +0 -0
  472. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-retry-pattern.tactic.yaml +0 -0
  473. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-state-pattern-for-behavior.tactic.yaml +0 -0
  474. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/refactoring/refactoring-strangler-fig.tactic.yaml +0 -0
  475. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/requirements-validation-workflow.tactic.yaml +0 -0
  476. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/reverse-speccing.tactic.yaml +0 -0
  477. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/review-intent-and-risk-first.tactic.yaml +0 -0
  478. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/safe-to-fail-experiment.tactic.yaml +0 -0
  479. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/stakeholder-alignment.tactic.yaml +0 -0
  480. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/stopping-conditions.tactic.yaml +0 -0
  481. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/strategic-domain-classification.tactic.yaml +0 -0
  482. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/tdd-red-green-refactor.tactic.yaml +0 -0
  483. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/test-boundaries-by-responsibility.tactic.yaml +0 -0
  484. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/test-pyramid-progression.tactic.yaml +0 -0
  485. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/testing-select-appropriate-level.tactic.yaml +0 -0
  486. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/shipped/zombies-tdd.tactic.yaml +0 -0
  487. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/tdd-red-green-refactor.tactic.yaml +0 -0
  488. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/validation.py +0 -0
  489. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/tactics/zombies-tdd.tactic.yaml +0 -0
  490. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/AGENTS.md +0 -0
  491. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/README.md +0 -0
  492. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/agent-file-template.md +0 -0
  493. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/README.md +0 -0
  494. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/adr-template.md +0 -0
  495. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/ammerse-analysis-template.md +0 -0
  496. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/bounded-context-canvas-template.md +0 -0
  497. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/c4-component-mermaid-template.md +0 -0
  498. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/c4-container-mermaid-template.md +0 -0
  499. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/c4-context-mermaid-template.md +0 -0
  500. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/glossary-template.md +0 -0
  501. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/lightweight-prestudy-template.md +0 -0
  502. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/quality-attribute-assessment-template.md +0 -0
  503. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/risk-identification-assessment-template.md +0 -0
  504. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/stakeholder-persona-template.md +0 -0
  505. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/swot-analysis-template.md +0 -0
  506. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/system-context-canvas-template.md +0 -0
  507. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/architecture/user-journey-template.md +0 -0
  508. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/checklist-template.md +0 -0
  509. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/claudeignore-template +0 -0
  510. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/README.md +0 -0
  511. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/README.md +0 -0
  512. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/examples/causal-map-mermaid-template.md +0 -0
  513. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/examples/content-map-mermaid-template.md +0 -0
  514. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/examples/frontend-architecture-mermaid-template.md +0 -0
  515. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/examples/repo-content-graph-mermaid-template.md +0 -0
  516. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/examples/request-lifecycle-sequence-mermaid-template.md +0 -0
  517. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/examples/structure-meta-model-mermaid-template.md +0 -0
  518. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/examples/system-map-mermaid-template.md +0 -0
  519. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/themes/mermaid-theme-bluegray-conversation-template.md +0 -0
  520. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/mermaid/themes/mermaid-theme-common-template.md +0 -0
  521. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/README.md +0 -0
  522. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/causal-map-plantuml-template.md +0 -0
  523. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/content-map-plantuml-template.md +0 -0
  524. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/event-storming-plantuml-template.md +0 -0
  525. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/frontend-architecture-plantuml-template.md +0 -0
  526. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/repo-content-graph-plantuml-template.md +0 -0
  527. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/request-lifecycle-plantuml-template.md +0 -0
  528. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/structure-meta-model-plantuml-template.md +0 -0
  529. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/examples/system-map-plantuml-template.md +0 -0
  530. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/themes/plantuml-theme-bluegray-conversation-template.md +0 -0
  531. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/themes/plantuml-theme-common-template.md +0 -0
  532. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/plantuml/themes/plantuml-theme-stickies-template.md +0 -0
  533. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/themes/mermaid-theme-bluegray-conversation-template.md +0 -0
  534. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/diagrams/themes/mermaid-theme-common-template.md +0 -0
  535. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/guides/HOW-TO.template.md +0 -0
  536. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/plan-template.md +0 -0
  537. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/profile-context.md +0 -0
  538. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/repository.py +0 -0
  539. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/sets/README.md +0 -0
  540. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/spec-template.md +0 -0
  541. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/structure/README.md +0 -0
  542. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/structure/REPO_MAP.md +0 -0
  543. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/structure/SURFACES.md +0 -0
  544. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/task-prompt-template.md +0 -0
  545. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/tasks-template.md +0 -0
  546. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/templates/vscode-settings.json +0 -0
  547. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/POWERSHELL_SYNTAX.md +0 -0
  548. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/README.md +0 -0
  549. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/__init__.py +0 -0
  550. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/_proposed/.gitkeep +0 -0
  551. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/models.py +0 -0
  552. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/powershell-syntax.toolguide.yaml +0 -0
  553. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/repository.py +0 -0
  554. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/CONTEXTIVE.md +0 -0
  555. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/EFFICIENT_LOCAL_TOOLING.md +0 -0
  556. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/GIT_AGENT_COMMIT_SIGNING.md +0 -0
  557. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/MERMAID_DIAGRAMMING.md +0 -0
  558. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/PLANTUML_DIAGRAMMING.md +0 -0
  559. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/PYTHON_REVIEW_CHECKS.md +0 -0
  560. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/__init__.py +0 -0
  561. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/contextive.toolguide.yaml +0 -0
  562. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/efficient-local-tooling.toolguide.yaml +0 -0
  563. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/git-agent-commit-signing.toolguide.yaml +0 -0
  564. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/mermaid-diagramming.toolguide.yaml +0 -0
  565. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/plantuml-diagramming.toolguide.yaml +0 -0
  566. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/python-review-checks.toolguide.yaml +0 -0
  567. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/system_tools/RTK_SEARCH_TOOLING.md +0 -0
  568. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/system_tools/__init__.py +0 -0
  569. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/shipped/system_tools/rtk-search-tooling.toolguide.yaml +0 -0
  570. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/doctrine/toolguides/validation.py +0 -0
  571. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/kernel/README.md +0 -0
  572. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/kernel/__init__.py +0 -0
  573. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/kernel/_safe_re.py +0 -0
  574. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/kernel/atomic.py +0 -0
  575. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/kernel/glossary_runner.py +0 -0
  576. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/kernel/glossary_types.py +0 -0
  577. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/kernel/paths.py +0 -0
  578. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/.contextive/dossier.yml +0 -0
  579. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/.contextive/execution.yml +0 -0
  580. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/.contextive/governance.yml +0 -0
  581. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/.contextive/lexical.yml +0 -0
  582. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/.contextive/orchestration.yml +0 -0
  583. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/.contextive/system-events.yml +0 -0
  584. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/.contextive/technology-foundations.yml +0 -0
  585. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/__init__.py +0 -0
  586. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/__main__.py +0 -0
  587. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/acceptance.py +0 -0
  588. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/acceptance_matrix.py +0 -0
  589. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/agent_utils/README.md +0 -0
  590. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/agent_utils/__init__.py +0 -0
  591. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/agent_utils/directories.py +0 -0
  592. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/agent_utils/status.py +0 -0
  593. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/__init__.py +0 -0
  594. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/config.py +0 -0
  595. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/device_flow/__init__.py +0 -0
  596. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/device_flow/state.py +0 -0
  597. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/errors.py +0 -0
  598. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/flows/__init__.py +0 -0
  599. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/flows/authorization_code.py +0 -0
  600. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/flows/device_code.py +0 -0
  601. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/flows/refresh.py +0 -0
  602. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/http/__init__.py +0 -0
  603. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/http/transport.py +0 -0
  604. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/loopback/__init__.py +0 -0
  605. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/loopback/browser_launcher.py +0 -0
  606. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/loopback/callback_handler.py +0 -0
  607. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/loopback/callback_server.py +0 -0
  608. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/loopback/pkce.py +0 -0
  609. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/loopback/state.py +0 -0
  610. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/loopback/state_manager.py +0 -0
  611. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/secure_storage/__init__.py +0 -0
  612. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/secure_storage/abstract.py +0 -0
  613. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/secure_storage/file_fallback.py +0 -0
  614. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/secure_storage/keychain.py +0 -0
  615. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/session.py +0 -0
  616. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/token_manager.py +0 -0
  617. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/websocket/__init__.py +0 -0
  618. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/auth/websocket/token_provisioning.py +0 -0
  619. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/__init__.py +0 -0
  620. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/catalog.py +0 -0
  621. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/compiler.py +0 -0
  622. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/context.py +0 -0
  623. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/extractor.py +0 -0
  624. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/generator.py +0 -0
  625. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/hasher.py +0 -0
  626. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/interview.py +0 -0
  627. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/parser.py +0 -0
  628. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/resolver.py +0 -0
  629. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/schemas.py +0 -0
  630. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/charter/sync.py +0 -0
  631. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/.contextive.yml +0 -0
  632. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/__init__.py +0 -0
  633. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/_auth_login.py +0 -0
  634. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/_auth_logout.py +0 -0
  635. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/_auth_status.py +0 -0
  636. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/README.md +0 -0
  637. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/__init__.py +0 -0
  638. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/config.py +0 -0
  639. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/release.py +0 -0
  640. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/agent/tests.py +0 -0
  641. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/auth.py +0 -0
  642. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/charter.py +0 -0
  643. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/config_cmd.py +0 -0
  644. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/context.py +0 -0
  645. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/doctrine.py +0 -0
  646. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/glossary.py +0 -0
  647. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/init.py +0 -0
  648. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/init_help.py +0 -0
  649. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/lifecycle.py +0 -0
  650. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/materialize.py +0 -0
  651. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/merge_driver.py +0 -0
  652. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/mission.py +0 -0
  653. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/mission_type.py +0 -0
  654. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/next_cmd.py +0 -0
  655. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/ops.py +0 -0
  656. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/repair.py +0 -0
  657. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/research.py +0 -0
  658. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/tracker.py +0 -0
  659. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/upgrade.py +0 -0
  660. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/validate_encoding.py +0 -0
  661. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/validate_tasks.py +0 -0
  662. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/commands/verify.py +0 -0
  663. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/helpers.py +0 -0
  664. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/step_tracker.py +0 -0
  665. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/cli/ui.py +0 -0
  666. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/context/__init__.py +0 -0
  667. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/context/errors.py +0 -0
  668. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/context/middleware.py +0 -0
  669. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/context/models.py +0 -0
  670. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/context/store.py +0 -0
  671. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/__init__.py +0 -0
  672. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/agent_config.py +0 -0
  673. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/atomic.py +0 -0
  674. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/config.py +0 -0
  675. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/constants.py +0 -0
  676. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/context_validation.py +0 -0
  677. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/contract_gate.py +0 -0
  678. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/dependency_graph.py +0 -0
  679. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/execution_context.py +0 -0
  680. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/git_ops.py +0 -0
  681. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/git_preflight.py +0 -0
  682. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/identity_aliases.py +0 -0
  683. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/paths.py +0 -0
  684. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/project_resolver.py +0 -0
  685. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/stale_detection.py +0 -0
  686. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/tool_checker.py +0 -0
  687. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/upstream_contract.json +0 -0
  688. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/utils.py +0 -0
  689. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/vcs/__init__.py +0 -0
  690. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/vcs/detection.py +0 -0
  691. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/vcs/exceptions.py +0 -0
  692. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/vcs/git.py +0 -0
  693. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/vcs/protocol.py +0 -0
  694. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/vcs/types.py +0 -0
  695. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/version_checker.py +0 -0
  696. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/worktree_topology.py +0 -0
  697. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/core/wps_manifest.py +0 -0
  698. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/__init__.py +0 -0
  699. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/charter_path.py +0 -0
  700. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/diagnostics.py +0 -0
  701. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/handlers/__init__.py +0 -0
  702. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/handlers/api.py +0 -0
  703. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/handlers/base.py +0 -0
  704. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/handlers/features.py +0 -0
  705. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/handlers/router.py +0 -0
  706. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/handlers/static.py +0 -0
  707. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/lifecycle.py +0 -0
  708. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/server.py +0 -0
  709. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/static/dashboard/dashboard.css +0 -0
  710. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/static/dashboard/dashboard.js +0 -0
  711. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/static/js/dossier-panel.js +0 -0
  712. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/static/spec-kitty.png +0 -0
  713. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/templates/__init__.py +0 -0
  714. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dashboard/templates/index.html +0 -0
  715. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/doc_generators.py +0 -0
  716. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/doc_state.py +0 -0
  717. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/.contextive.yml +0 -0
  718. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/__init__.py +0 -0
  719. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/api.py +0 -0
  720. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/drift_detector.py +0 -0
  721. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/events.py +0 -0
  722. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/hasher.py +0 -0
  723. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/indexer.py +0 -0
  724. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/manifest.py +0 -0
  725. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/models.py +0 -0
  726. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/dossier/snapshot.py +0 -0
  727. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/events/__init__.py +0 -0
  728. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/events/adapter.py +0 -0
  729. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/frontmatter.py +0 -0
  730. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/gap_analysis.py +0 -0
  731. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/git/__init__.py +0 -0
  732. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/git/commit_helpers.py +0 -0
  733. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/gitignore_manager.py +0 -0
  734. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/.contextive.yml +0 -0
  735. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/__init__.py +0 -0
  736. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/attachment.py +0 -0
  737. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/checkpoint.py +0 -0
  738. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/clarification.py +0 -0
  739. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/conflict.py +0 -0
  740. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/events.py +0 -0
  741. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/exceptions.py +0 -0
  742. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/extraction.py +0 -0
  743. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/middleware.py +0 -0
  744. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/models.py +0 -0
  745. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/pipeline.py +0 -0
  746. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/prompts.py +0 -0
  747. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/py.typed +0 -0
  748. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/rendering.py +0 -0
  749. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/resolution.py +0 -0
  750. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/scope.py +0 -0
  751. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/store.py +0 -0
  752. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/glossary/strictness.py +0 -0
  753. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/__init__.py +0 -0
  754. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/compute.py +0 -0
  755. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/implement_support.py +0 -0
  756. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/merge.py +0 -0
  757. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/models.py +0 -0
  758. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/persistence.py +0 -0
  759. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/recovery.py +0 -0
  760. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/stale_check.py +0 -0
  761. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/lanes/worktree_allocator.py +0 -0
  762. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/legacy_detector.py +0 -0
  763. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/manifest.py +0 -0
  764. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/merge/.contextive.yml +0 -0
  765. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/merge/config.py +0 -0
  766. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/merge/conflict_resolver.py +0 -0
  767. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/merge/workspace.py +0 -0
  768. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/__init__.py +0 -0
  769. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/backfill_ownership.py +0 -0
  770. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/gate.py +0 -0
  771. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/rebuild_state.py +0 -0
  772. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/rewrite_shims.py +0 -0
  773. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/runner.py +0 -0
  774. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/schema_version.py +0 -0
  775. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/migration/strip_frontmatter.py +0 -0
  776. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission.py +0 -0
  777. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission_v1/__init__.py +0 -0
  778. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission_v1/compat.py +0 -0
  779. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission_v1/events.py +0 -0
  780. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission_v1/guards.py +0 -0
  781. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission_v1/runner.py +0 -0
  782. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/mission_v1/schema.py +0 -0
  783. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/.contextive.yml +0 -0
  784. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/__init__.py +0 -0
  785. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/expected-artifacts.yaml +0 -0
  786. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/mission.yaml +0 -0
  787. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/divio/explanation-template.md +0 -0
  788. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/divio/howto-template.md +0 -0
  789. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/divio/reference-template.md +0 -0
  790. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/divio/tutorial-template.md +0 -0
  791. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/generators/jsdoc.json.template +0 -0
  792. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/generators/sphinx-conf.py.template +0 -0
  793. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/plan-template.md +0 -0
  794. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/release-template.md +0 -0
  795. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/spec-template.md +0 -0
  796. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/task-prompt-template.md +0 -0
  797. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/documentation/templates/tasks-template.md +0 -0
  798. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/glossary_hook.py +0 -0
  799. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/plan/mission-runtime.yaml +0 -0
  800. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/plan/mission.yaml +0 -0
  801. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/plan/templates/.gitkeep +0 -0
  802. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/primitives.py +0 -0
  803. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/expected-artifacts.yaml +0 -0
  804. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/mission.yaml +0 -0
  805. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/data-model-template.md +0 -0
  806. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/plan-template.md +0 -0
  807. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/research/evidence-log.csv +0 -0
  808. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/research/source-register.csv +0 -0
  809. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/research-template.md +0 -0
  810. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/spec-template.md +0 -0
  811. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/task-prompt-template.md +0 -0
  812. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/research/templates/tasks-template.md +0 -0
  813. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/expected-artifacts.yaml +0 -0
  814. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/mission-runtime.yaml +0 -0
  815. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/mission.yaml +0 -0
  816. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/templates/plan-template.md +0 -0
  817. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/templates/spec-template.md +0 -0
  818. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/templates/task-prompt-template.md +0 -0
  819. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/missions/software-dev/templates/tasks-template.md +0 -0
  820. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/next/__init__.py +0 -0
  821. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/next/decision.py +0 -0
  822. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/next/prompt_builder.py +0 -0
  823. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/next/runtime_bridge.py +0 -0
  824. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/orchestrator_api/__init__.py +0 -0
  825. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/orchestrator_api/commands.py +0 -0
  826. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/orchestrator_api/envelope.py +0 -0
  827. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/ownership/__init__.py +0 -0
  828. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/ownership/audit_targets.py +0 -0
  829. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/ownership/inference.py +0 -0
  830. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/ownership/models.py +0 -0
  831. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/ownership/validation.py +0 -0
  832. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/ownership/workspace_strategy.py +0 -0
  833. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/plan_validation.py +0 -0
  834. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/__init__.py +0 -0
  835. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/audit.py +0 -0
  836. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/commit_guard.py +0 -0
  837. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/commit_guard_hook.py +0 -0
  838. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/config.py +0 -0
  839. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/hook_installer.py +0 -0
  840. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/merge_gates.py +0 -0
  841. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/policy/risk_scorer.py +0 -0
  842. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/post_merge/__init__.py +0 -0
  843. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/post_merge/stale_assertions.py +0 -0
  844. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/release/__init__.py +0 -0
  845. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/release/changelog.py +0 -0
  846. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/release/payload.py +0 -0
  847. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/release/version.py +0 -0
  848. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/requirement_mapping.py +0 -0
  849. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/review/__init__.py +0 -0
  850. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/review/arbiter.py +0 -0
  851. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/review/artifacts.py +0 -0
  852. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/review/baseline.py +0 -0
  853. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/review/dirty_classifier.py +0 -0
  854. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/review/fix_prompt.py +0 -0
  855. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/review/lock.py +0 -0
  856. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/__init__.py +0 -0
  857. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/agent_commands.py +0 -0
  858. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/agent_skills.py +0 -0
  859. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/bootstrap.py +0 -0
  860. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/doctor.py +0 -0
  861. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/home.py +0 -0
  862. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/merge.py +0 -0
  863. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/migrate.py +0 -0
  864. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/resolver.py +0 -0
  865. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/runtime/show_origin.py +0 -0
  866. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/saas/__init__.py +0 -0
  867. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/saas/rollout.py +0 -0
  868. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/schemas/wps.schema.json +0 -0
  869. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/scripts/tasks/acceptance_support.py +0 -0
  870. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/scripts/tasks/task_helpers.py +0 -0
  871. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/scripts/tasks/tasks_cli.py +0 -0
  872. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/shims/__init__.py +0 -0
  873. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/shims/generator.py +0 -0
  874. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/shims/registry.py +0 -0
  875. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/skills/__init__.py +0 -0
  876. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/skills/installer.py +0 -0
  877. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/skills/manifest.py +0 -0
  878. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/skills/paths.py +0 -0
  879. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/skills/registry.py +0 -0
  880. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/skills/verifier.py +0 -0
  881. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/__init__.py +0 -0
  882. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/clock.py +0 -0
  883. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/conflict.py +0 -0
  884. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/crdt.py +0 -0
  885. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/error_log.py +0 -0
  886. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/merge.py +0 -0
  887. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/models.py +0 -0
  888. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/py.typed +0 -0
  889. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/storage.py +0 -0
  890. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/spec_kitty_events/topology.py +0 -0
  891. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/state/__init__.py +0 -0
  892. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/state/doctor.py +0 -0
  893. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/state_contract.py +0 -0
  894. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/.contextive.yml +0 -0
  895. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/__init__.py +0 -0
  896. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/bootstrap.py +0 -0
  897. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/doctor.py +0 -0
  898. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/event_log_merge.py +0 -0
  899. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/history_parser.py +0 -0
  900. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/lane_reader.py +0 -0
  901. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/locking.py +0 -0
  902. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/progress.py +0 -0
  903. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/reducer.py +0 -0
  904. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/transition_context.py +0 -0
  905. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/transitions.py +0 -0
  906. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/validate.py +0 -0
  907. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/views.py +0 -0
  908. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/wp_metadata.py +0 -0
  909. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/status/wp_state.py +0 -0
  910. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/__init__.py +0 -0
  911. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/batch.py +0 -0
  912. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/body_queue.py +0 -0
  913. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/body_transport.py +0 -0
  914. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/body_upload.py +0 -0
  915. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/client.py +0 -0
  916. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/clock.py +0 -0
  917. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/config.py +0 -0
  918. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/diagnose.py +0 -0
  919. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/feature_flags.py +0 -0
  920. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/git_metadata.py +0 -0
  921. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/namespace.py +0 -0
  922. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/project_identity.py +0 -0
  923. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/queue.py +0 -0
  924. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/sync/runtime.py +0 -0
  925. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/task_metadata_validation.py +0 -0
  926. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/task_profile.py +0 -0
  927. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tasks_support.py +0 -0
  928. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/template/__init__.py +0 -0
  929. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/template/asset_generator.py +0 -0
  930. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/template/manager.py +0 -0
  931. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/template/renderer.py +0 -0
  932. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/AGENTS.md +0 -0
  933. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/POWERSHELL_SYNTAX.md +0 -0
  934. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/agent-file-template.md +0 -0
  935. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/checklist-template.md +0 -0
  936. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/claudeignore-template +0 -0
  937. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/plan-template.md +0 -0
  938. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/spec-template.md +0 -0
  939. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/task-prompt-template.md +0 -0
  940. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/tasks-template.md +0 -0
  941. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/templates/vscode-settings.json +0 -0
  942. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/text_sanitization.py +0 -0
  943. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/__init__.py +0 -0
  944. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/config.py +0 -0
  945. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/credentials.py +0 -0
  946. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/discovery.py +0 -0
  947. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/factory.py +0 -0
  948. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/feature_flags.py +0 -0
  949. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/local_service.py +0 -0
  950. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/origin.py +0 -0
  951. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/origin_models.py +0 -0
  952. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/saas_service.py +0 -0
  953. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/service.py +0 -0
  954. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/tracker/store.py +0 -0
  955. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/__init__.py +0 -0
  956. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/compat.py +0 -0
  957. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/detector.py +0 -0
  958. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/feature_meta.py +0 -0
  959. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/metadata.py +0 -0
  960. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/__init__.py +0 -0
  961. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/base.py +0 -0
  962. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_0_python_only.py +0 -0
  963. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_12_charter_cleanup.py +0 -0
  964. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_14_update_implement_slash_command.py +0 -0
  965. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_1_populate_slash_commands.py +0 -0
  966. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_2_update_slash_commands.py +0 -0
  967. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_6_workflow_simplification.py +0 -0
  968. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_8_fix_memory_structure.py +0 -0
  969. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_10_9_repair_templates.py +0 -0
  970. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_11_1_improved_workflow_templates.py +0 -0
  971. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_11_1_update_implement_slash_command.py +0 -0
  972. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_11_2_improved_workflow_templates.py +0 -0
  973. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_11_3_workflow_agent_flag.py +0 -0
  974. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_12_0_documentation_mission.py +0 -0
  975. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_12_1_remove_kitty_specs_from_gitignore.py +0 -0
  976. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_13_0_research_csv_schema_check.py +0 -0
  977. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_13_0_update_charter_templates.py +0 -0
  978. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_13_0_update_research_implement_templates.py +0 -0
  979. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_13_1_exclude_worktrees.py +0 -0
  980. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_13_5_add_commit_workflow_to_templates.py +0 -0
  981. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_13_8_target_branch.py +0 -0
  982. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_14_0_centralized_feature_detection.py +0 -0
  983. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_16_2_remove_wp_status_gitignore_rule.py +0 -0
  984. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_2_0_specify_to_kittify.py +0 -0
  985. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_4_8_gitignore_agents.py +0 -0
  986. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_6_5_commands_rename.py +0 -0
  987. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_6_7_ensure_missions.py +0 -0
  988. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_7_2_worktree_commands_dedup.py +0 -0
  989. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_7_3_update_scripts.py +0 -0
  990. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_8_0_remove_active_mission.py +0 -0
  991. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_8_0_worktree_agents_symlink.py +0 -0
  992. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_9_0_frontmatter_only_lanes.py +0 -0
  993. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_9_1_complete_lane_migration.py +0 -0
  994. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_0_9_2_research_mission_templates.py +0 -0
  995. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_0_charter_directory.py +0 -0
  996. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_0_historical_status_migration.py +0 -0
  997. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_0_retire_git_hooks.py +0 -0
  998. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_11_install_skills.py +0 -0
  999. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_11_remove_clarify_command.py +0 -0
  1000. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_1_fix_generated_command_templates.py +0 -0
  1001. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_1_tool_config_key_rename.py +0 -0
  1002. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_2_charter_context_bootstrap.py +0 -0
  1003. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_6_consistency_sweep.py +0 -0
  1004. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_7_fix_stale_overrides.py +0 -0
  1005. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_0_9_state_gitignore.py +0 -0
  1006. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_1_repair_skill_pack.py +0 -0
  1007. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_2_fix_charter_doctrine_skill.py +0 -0
  1008. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_2_fix_glossary_context_skill.py +0 -0
  1009. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_2_fix_orchestrator_api_skill.py +0 -0
  1010. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_2_fix_runtime_next_skill.py +0 -0
  1011. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_2_install_git_workflow_skill.py +0 -0
  1012. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_2_install_mission_system_skill.py +0 -0
  1013. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_2_remove_release_skill.py +0 -0
  1014. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_3_fix_planning_repository_terminology.py +0 -0
  1015. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_3_restore_prompt_commands.py +0 -0
  1016. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_1_4_enforce_command_file_state.py +0 -0
  1017. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_2_2_0_profile_context_deployment.py +0 -0
  1018. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_0_0_canonical_context.py +0 -0
  1019. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_0_2_restore_prompt_commands.py +0 -0
  1020. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_0_3_globalize_skill_pack.py +0 -0
  1021. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_1_1_charter_rename.py +0 -0
  1022. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_1_1_direct_canonical_commands.py +0 -0
  1023. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_1_1_event_log_merge_driver.py +0 -0
  1024. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_1_2_globalize_commands.py +0 -0
  1025. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_2_0_update_planning_templates.py +0 -0
  1026. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_2_1_strip_selection_config.py +0 -0
  1027. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/migrations/m_3_2_2_safe_globalize_commands.py +0 -0
  1028. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/registry.py +0 -0
  1029. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/runner.py +0 -0
  1030. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/upgrade/skill_update.py +0 -0
  1031. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/validators/__init__.py +0 -0
  1032. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/validators/csv_schema.py +0 -0
  1033. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/validators/doctrine_curation.py +0 -0
  1034. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/validators/paths.py +0 -0
  1035. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/validators/research.py +0 -0
  1036. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/verify_enhanced.py +0 -0
  1037. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/version_utils.py +0 -0
  1038. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/src/specify_cli/workspace_context.py +0 -0
  1039. {spec_kitty_cli-3.1.2a2 → spec_kitty_cli-3.1.2a3}/tests/README.md +0 -0
@@ -9,6 +9,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ## [Unreleased]
11
11
 
12
+ ## [3.1.2a3] - 2026-04-12
13
+
14
+ ### Fixed
15
+
16
+ - **Merge-time numbering lock and retry safety** — `mission_number` assignment now acquires a file lock before scanning existing prefixes, MergeState uses `mission_id` as its canonical key, and interrupted merges no longer risk duplicate or skipped numbers on retry. Closes #601.
17
+ - **CLI no longer hangs 15–20 min when offline queue is full and session expired** — the offline queue drain path now respects a bounded timeout instead of blocking indefinitely on expired-session retries. Closes #598, #602.
18
+ - **Sonar readiness and parser findings addressed** — actionable maintenance issues flagged by SonarCloud (code smells, complexity, minor bugs) are resolved. Closes #599, #600.
19
+
12
20
  ## [3.1.2a2] - 2026-04-11
13
21
 
14
22
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: spec-kitty-cli
3
- Version: 3.1.2a2
3
+ Version: 3.1.2a3
4
4
  Summary: Spec Kitty, a tool for Specification Driven Development (SDD) agentic projects, with kanban and git worktree isolation.
5
5
  Project-URL: Repository, https://github.com/Priivacy-ai/spec-kitty
6
6
  Project-URL: Issues, https://github.com/Priivacy-ai/spec-kitty/issues
@@ -500,10 +500,12 @@ register, login, logout, and recover forgotten passwords.
500
500
  ```
501
501
 
502
502
  **What this does:**
503
- - Creates `kitty-specs/001-auth-system/spec.md` with user stories
503
+ - Creates `kitty-specs/auth-system/spec.md` with user stories and mints a canonical `mission_id` (ULID) in `meta.json`
504
504
  - **Enters discovery interview** - Answer questions before continuing!
505
505
  - All planning happens in the main repo (worktrees created later during implementation)
506
506
 
507
+ > **Note:** Mission identity is a ULID (`mission_id` in `meta.json`). The three-digit numeric prefix (e.g. `001-auth-system`) is display-only and is only assigned at merge time. Branches and worktrees use the mission's `mid8` (first 8 chars of the ULID) for collision-free naming. See the [mission identity migration runbook](docs/migration/mission-id-canonical-identity.md).
508
+
507
509
  **⚠️ Important:** Continue in the same session - no need to change directories!
508
510
 
509
511
  #### 4b. Define HOW to Build (In Main Repo)
@@ -610,11 +612,13 @@ spec-kitty next --agent <agent> --mission <slug>
610
612
  ## 📋 Quick Reference: Command Order
611
613
 
612
614
  ### Required Workflow (Once per project)
615
+
613
616
  ```
614
617
  1️⃣ /spec-kitty.charter → In main repo (sets project principles)
615
618
  ```
616
619
 
617
620
  ### Required Workflow (Each feature)
621
+
618
622
  ```
619
623
  2️⃣ /spec-kitty.specify → Create spec (in main repo)
620
624
  3️⃣ /spec-kitty.plan → Define technical approach (in main repo)
@@ -627,6 +631,7 @@ spec-kitty next --agent <agent> --mission <slug>
627
631
  ```
628
632
 
629
633
  ### Optional Enhancement Commands
634
+
630
635
  ```
631
636
  /spec-kitty.research → After /plan: Investigate technical decisions
632
637
  /spec-kitty.analyze → After /tasks: Cross-artifact consistency check
@@ -658,7 +663,7 @@ Spec Kitty automatically protects you with multiple layers:
658
663
  **Worktree Charter Sharing:**
659
664
  When creating execution workspaces, Spec Kitty uses symlinks to share the charter:
660
665
  ```
661
- .worktrees/001-feature-lane-a/.kittify/memory -> ../../../../.kittify/memory
666
+ .worktrees/my-feature-01J6XW9K-lane-a/.kittify/memory -> ../../../../.kittify/memory
662
667
  ```
663
668
  This ensures all work packages follow the same project principles.
664
669
 
@@ -686,6 +691,7 @@ Spec Kitty differentiates between the **project** that holds your entire codebas
686
691
  For glossary-first terminology (including semantic-integrity rules), see [`glossary/README.md`](glossary/README.md).
687
692
 
688
693
  ### Project
694
+
689
695
  **Definition**: The entire codebase (one Git repository) that contains all missions, features, and `.kittify/` automation.
690
696
 
691
697
  **Examples**:
@@ -703,18 +709,21 @@ For glossary-first terminology (including semantic-integrity rules), see [`gloss
703
709
  ---
704
710
 
705
711
  ### Feature
712
+
706
713
  **Definition**: A single unit of work tracked by Spec Kitty. Every feature has its own spec, plan, tasks, and one or more execution worktrees.
707
714
 
715
+ > **Mission identity (as of mission 083):** A mission's canonical machine identity is `mission_id` — a ULID minted at creation and immutable for the lifetime of the mission. The three-digit `mission_number` prefix shown in directory names is **display-only metadata** and is assigned at merge time. Selectors use `mission_id`, `mid8` (first 8 chars of the ULID), or `mission_slug`; ambiguous handles return a structured error. See the [mission identity migration runbook](docs/migration/mission-id-canonical-identity.md).
716
+
708
717
  **Examples**:
709
718
  - "001-auth-system feature"
710
719
  - "005-refactor-mission-system feature" (this document)
711
720
  - "042-dashboard-refresh feature"
712
721
 
713
722
  **Structure**:
714
- - Specification: `/kitty-specs/###-feature-name/spec.md`
715
- - Plan: `/kitty-specs/###-feature-name/plan.md`
716
- - Tasks: `/kitty-specs/###-feature-name/tasks.md`
717
- - Implementation: `.worktrees/###-feature-name-lane-a/`, `.worktrees/###-feature-name-lane-b/`, and so on
723
+ - Specification: `/kitty-specs/<human-slug>/spec.md` (directory listing shows `NNN-<human-slug>` once `mission_number` is assigned at merge)
724
+ - Plan: `/kitty-specs/<human-slug>/plan.md`
725
+ - Tasks: `/kitty-specs/<human-slug>/tasks.md`
726
+ - Implementation: `.worktrees/<human-slug>-<mid8>-lane-a/`, `.worktrees/<human-slug>-<mid8>-lane-b/`, and so on (e.g. `.worktrees/my-feature-01J6XW9K-lane-a/`)
718
727
 
719
728
  **Lifecycle**:
720
729
  1. `/spec-kitty.specify` – Create the feature and its branch
@@ -732,6 +741,7 @@ For glossary-first terminology (including semantic-integrity rules), see [`gloss
732
741
  ---
733
742
 
734
743
  ### Mission
744
+
735
745
  **Definition**: A domain adapter that configures Spec Kitty (workflows, templates, validation). Missions are project-wide; all features in a project share the same active mission.
736
746
 
737
747
  **Examples**:
@@ -1167,6 +1177,7 @@ graph TD
1167
1177
  - Main branch stays clean without manual `git checkout` juggling
1168
1178
 
1169
1179
  ### The Pattern
1180
+
1170
1181
  ```
1171
1182
  my-project/ # Main repo (main branch)
1172
1183
  ├── .worktrees/
@@ -1179,6 +1190,7 @@ my-project/ # Main repo (main branch)
1179
1190
  ```
1180
1191
 
1181
1192
  ### The Rules
1193
+
1182
1194
  1. **Planning commands** run in the primary repo root
1183
1195
  2. **Implementation branches** live under `.worktrees/`
1184
1196
  3. **Trust the path printed by Spec Kitty** instead of guessing the worktree name
@@ -1264,7 +1276,6 @@ cat .kittify/metadata.yaml
1264
1276
  | `SPECIFY_TEMPLATE_REPO` | Optional. Override the GitHub repository slug (`owner/name`) to fetch templates from when you explicitly want a remote source. |
1265
1277
  | `CODEX_HOME` | Required when using the Codex CLI so it loads project-specific prompts. Point it to your project’s `.codex/` directory—set it manually with `export CODEX_HOME=\"$(pwd)/.codex\"` or automate it via [`direnv`](https://github.com/Priivacy-ai/spec-kitty/blob/main/docs/index.md#codex-cli-automatically-load-project-prompts-linux-macos-wsl) on Linux/macOS/WSL. |
1266
1278
 
1267
-
1268
1279
  ## 🔧 Prerequisites
1269
1280
 
1270
1281
  - **Linux/macOS** (or WSL2 on Windows)
@@ -402,10 +402,12 @@ register, login, logout, and recover forgotten passwords.
402
402
  ```
403
403
 
404
404
  **What this does:**
405
- - Creates `kitty-specs/001-auth-system/spec.md` with user stories
405
+ - Creates `kitty-specs/auth-system/spec.md` with user stories and mints a canonical `mission_id` (ULID) in `meta.json`
406
406
  - **Enters discovery interview** - Answer questions before continuing!
407
407
  - All planning happens in the main repo (worktrees created later during implementation)
408
408
 
409
+ > **Note:** Mission identity is a ULID (`mission_id` in `meta.json`). The three-digit numeric prefix (e.g. `001-auth-system`) is display-only and is only assigned at merge time. Branches and worktrees use the mission's `mid8` (first 8 chars of the ULID) for collision-free naming. See the [mission identity migration runbook](docs/migration/mission-id-canonical-identity.md).
410
+
409
411
  **⚠️ Important:** Continue in the same session - no need to change directories!
410
412
 
411
413
  #### 4b. Define HOW to Build (In Main Repo)
@@ -512,11 +514,13 @@ spec-kitty next --agent <agent> --mission <slug>
512
514
  ## 📋 Quick Reference: Command Order
513
515
 
514
516
  ### Required Workflow (Once per project)
517
+
515
518
  ```
516
519
  1️⃣ /spec-kitty.charter → In main repo (sets project principles)
517
520
  ```
518
521
 
519
522
  ### Required Workflow (Each feature)
523
+
520
524
  ```
521
525
  2️⃣ /spec-kitty.specify → Create spec (in main repo)
522
526
  3️⃣ /spec-kitty.plan → Define technical approach (in main repo)
@@ -529,6 +533,7 @@ spec-kitty next --agent <agent> --mission <slug>
529
533
  ```
530
534
 
531
535
  ### Optional Enhancement Commands
536
+
532
537
  ```
533
538
  /spec-kitty.research → After /plan: Investigate technical decisions
534
539
  /spec-kitty.analyze → After /tasks: Cross-artifact consistency check
@@ -560,7 +565,7 @@ Spec Kitty automatically protects you with multiple layers:
560
565
  **Worktree Charter Sharing:**
561
566
  When creating execution workspaces, Spec Kitty uses symlinks to share the charter:
562
567
  ```
563
- .worktrees/001-feature-lane-a/.kittify/memory -> ../../../../.kittify/memory
568
+ .worktrees/my-feature-01J6XW9K-lane-a/.kittify/memory -> ../../../../.kittify/memory
564
569
  ```
565
570
  This ensures all work packages follow the same project principles.
566
571
 
@@ -588,6 +593,7 @@ Spec Kitty differentiates between the **project** that holds your entire codebas
588
593
  For glossary-first terminology (including semantic-integrity rules), see [`glossary/README.md`](glossary/README.md).
589
594
 
590
595
  ### Project
596
+
591
597
  **Definition**: The entire codebase (one Git repository) that contains all missions, features, and `.kittify/` automation.
592
598
 
593
599
  **Examples**:
@@ -605,18 +611,21 @@ For glossary-first terminology (including semantic-integrity rules), see [`gloss
605
611
  ---
606
612
 
607
613
  ### Feature
614
+
608
615
  **Definition**: A single unit of work tracked by Spec Kitty. Every feature has its own spec, plan, tasks, and one or more execution worktrees.
609
616
 
617
+ > **Mission identity (as of mission 083):** A mission's canonical machine identity is `mission_id` — a ULID minted at creation and immutable for the lifetime of the mission. The three-digit `mission_number` prefix shown in directory names is **display-only metadata** and is assigned at merge time. Selectors use `mission_id`, `mid8` (first 8 chars of the ULID), or `mission_slug`; ambiguous handles return a structured error. See the [mission identity migration runbook](docs/migration/mission-id-canonical-identity.md).
618
+
610
619
  **Examples**:
611
620
  - "001-auth-system feature"
612
621
  - "005-refactor-mission-system feature" (this document)
613
622
  - "042-dashboard-refresh feature"
614
623
 
615
624
  **Structure**:
616
- - Specification: `/kitty-specs/###-feature-name/spec.md`
617
- - Plan: `/kitty-specs/###-feature-name/plan.md`
618
- - Tasks: `/kitty-specs/###-feature-name/tasks.md`
619
- - Implementation: `.worktrees/###-feature-name-lane-a/`, `.worktrees/###-feature-name-lane-b/`, and so on
625
+ - Specification: `/kitty-specs/<human-slug>/spec.md` (directory listing shows `NNN-<human-slug>` once `mission_number` is assigned at merge)
626
+ - Plan: `/kitty-specs/<human-slug>/plan.md`
627
+ - Tasks: `/kitty-specs/<human-slug>/tasks.md`
628
+ - Implementation: `.worktrees/<human-slug>-<mid8>-lane-a/`, `.worktrees/<human-slug>-<mid8>-lane-b/`, and so on (e.g. `.worktrees/my-feature-01J6XW9K-lane-a/`)
620
629
 
621
630
  **Lifecycle**:
622
631
  1. `/spec-kitty.specify` – Create the feature and its branch
@@ -634,6 +643,7 @@ For glossary-first terminology (including semantic-integrity rules), see [`gloss
634
643
  ---
635
644
 
636
645
  ### Mission
646
+
637
647
  **Definition**: A domain adapter that configures Spec Kitty (workflows, templates, validation). Missions are project-wide; all features in a project share the same active mission.
638
648
 
639
649
  **Examples**:
@@ -1069,6 +1079,7 @@ graph TD
1069
1079
  - Main branch stays clean without manual `git checkout` juggling
1070
1080
 
1071
1081
  ### The Pattern
1082
+
1072
1083
  ```
1073
1084
  my-project/ # Main repo (main branch)
1074
1085
  ├── .worktrees/
@@ -1081,6 +1092,7 @@ my-project/ # Main repo (main branch)
1081
1092
  ```
1082
1093
 
1083
1094
  ### The Rules
1095
+
1084
1096
  1. **Planning commands** run in the primary repo root
1085
1097
  2. **Implementation branches** live under `.worktrees/`
1086
1098
  3. **Trust the path printed by Spec Kitty** instead of guessing the worktree name
@@ -1166,7 +1178,6 @@ cat .kittify/metadata.yaml
1166
1178
  | `SPECIFY_TEMPLATE_REPO` | Optional. Override the GitHub repository slug (`owner/name`) to fetch templates from when you explicitly want a remote source. |
1167
1179
  | `CODEX_HOME` | Required when using the Codex CLI so it loads project-specific prompts. Point it to your project’s `.codex/` directory—set it manually with `export CODEX_HOME=\"$(pwd)/.codex\"` or automate it via [`direnv`](https://github.com/Priivacy-ai/spec-kitty/blob/main/docs/index.md#codex-cli-automatically-load-project-prompts-linux-macos-wsl) on Linux/macOS/WSL. |
1168
1180
 
1169
-
1170
1181
  ## 🔧 Prerequisites
1171
1182
 
1172
1183
  - **Linux/macOS** (or WSL2 on Windows)
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "spec-kitty-cli"
3
- version = "3.1.2a2"
3
+ version = "3.1.2a3"
4
4
  description = "Spec Kitty, a tool for Specification Driven Development (SDD) agentic projects, with kanban and git worktree isolation."
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
@@ -201,6 +201,9 @@ max-complexity = 15 # Match SonarCloud S3776 threshold
201
201
  [tool.mypy]
202
202
  # Keep strict mode as the default quality bar for actively maintained code.
203
203
  strict = true
204
+ # Point mypy at the source tree so it resolves specify_cli from src/ rather than
205
+ # an installed wheel that may lack a py.typed marker.
206
+ mypy_path = "src"
204
207
 
205
208
  [[tool.mypy.overrides]]
206
209
  # When checking a narrow file path under ``specify_cli``, mypy otherwise walks
@@ -18,7 +18,7 @@ from __future__ import annotations
18
18
 
19
19
  import asyncio
20
20
  import logging
21
- from typing import Any
21
+ from typing import Any, NoReturn
22
22
  from collections.abc import Awaitable, Callable
23
23
 
24
24
  from ..errors import DeviceFlowDenied, DeviceFlowExpired, NetworkError
@@ -86,6 +86,55 @@ class DeviceFlowPoller:
86
86
  """Return the wrapped :class:`DeviceFlowState`."""
87
87
  return self._state
88
88
 
89
+ def _raise_if_expired(self) -> None:
90
+ """Stop polling once the local device-flow state has expired."""
91
+ if self._state.is_expired():
92
+ raise DeviceFlowExpired(
93
+ f"Device authorization expired after {self._state.expires_in} seconds. "
94
+ "Run `spec-kitty auth login --headless` again."
95
+ )
96
+
97
+ @staticmethod
98
+ def _raise_terminal_error(error: str, response: dict[str, Any]) -> NoReturn:
99
+ """Raise the terminal exception for a non-retriable OAuth error."""
100
+ if error == "access_denied":
101
+ raise DeviceFlowDenied(
102
+ "User denied the authorization request. "
103
+ "Run `spec-kitty auth login --headless` to try again."
104
+ )
105
+
106
+ if error == "expired_token":
107
+ raise DeviceFlowExpired(
108
+ "Device code expired before approval. "
109
+ "Run `spec-kitty auth login --headless` to try again."
110
+ )
111
+
112
+ desc = response.get("error_description", error)
113
+ raise DeviceFlowDenied(f"Unexpected device flow error: {desc}")
114
+
115
+ def _handle_response(
116
+ self,
117
+ response: dict[str, Any],
118
+ *,
119
+ interval: int,
120
+ on_pending: Callable[[DeviceFlowState], None] | None,
121
+ ) -> tuple[dict[str, Any] | None, int]:
122
+ """Classify a token response and return the next loop state."""
123
+ error = response.get("error")
124
+ if error is None:
125
+ return response, interval
126
+
127
+ if error == "authorization_pending":
128
+ if on_pending is not None:
129
+ on_pending(self._state)
130
+ return None, interval
131
+
132
+ if error == "slow_down":
133
+ next_interval = min(interval + _SLOW_DOWN_BACKOFF, _MAX_INTERVAL_SECONDS)
134
+ return None, next_interval
135
+
136
+ self._raise_terminal_error(error, response)
137
+
89
138
  async def poll(
90
139
  self,
91
140
  token_request: Callable[[str], Awaitable[dict[str, Any]]],
@@ -131,11 +180,7 @@ class DeviceFlowPoller:
131
180
  interval = min(self._state.interval, _MAX_INTERVAL_SECONDS)
132
181
 
133
182
  while True:
134
- if self._state.is_expired():
135
- raise DeviceFlowExpired(
136
- f"Device authorization expired after {self._state.expires_in} seconds. "
137
- "Run `spec-kitty auth login --headless` again."
138
- )
183
+ self._raise_if_expired()
139
184
 
140
185
  # Sleep BEFORE the first poll too -- gives the user time to open
141
186
  # the browser and approve. This is intentional UX, not a bug.
@@ -150,33 +195,10 @@ class DeviceFlowPoller:
150
195
  log.warning("Network error during device flow poll: %s", exc)
151
196
  continue
152
197
 
153
- error = response.get("error")
154
- if error is None:
155
- # Success: response contains access_token, refresh_token, etc.
156
- return response
157
-
158
- if error == "authorization_pending":
159
- if on_pending is not None:
160
- on_pending(self._state)
161
- continue
162
-
163
- if error == "slow_down":
164
- # RFC 8628 §3.5: bump interval, but still cap at 10s (FR-018).
165
- interval = min(interval + _SLOW_DOWN_BACKOFF, _MAX_INTERVAL_SECONDS)
166
- continue
167
-
168
- if error == "access_denied":
169
- raise DeviceFlowDenied(
170
- "User denied the authorization request. "
171
- "Run `spec-kitty auth login --headless` to try again."
172
- )
173
-
174
- if error == "expired_token":
175
- raise DeviceFlowExpired(
176
- "Device code expired before approval. "
177
- "Run `spec-kitty auth login --headless` to try again."
178
- )
179
-
180
- # Unknown error -- propagate with whatever description SaaS gave us.
181
- desc = response.get("error_description", error)
182
- raise DeviceFlowDenied(f"Unexpected device flow error: {desc}")
198
+ handled_response, interval = self._handle_response(
199
+ response,
200
+ interval=interval,
201
+ on_pending=on_pending,
202
+ )
203
+ if handled_response is not None:
204
+ return handled_response
@@ -59,7 +59,7 @@ def register_commands(app: typer.Typer) -> None:
59
59
  app.command(name="materialize")(materialize_module.materialize)
60
60
  app.command()(merge_module.merge)
61
61
  app.command(name="merge-driver-event-log", hidden=True)(merge_driver_module.merge_driver_event_log)
62
- app.command()(migrate_module.migrate)
62
+ app.add_typer(migrate_module.app, name="migrate")
63
63
  app.add_typer(mission_module.app, name="mission")
64
64
  app.command(name="next")(next_cmd_module.next_step)
65
65
  app.add_typer(mission_type_module.app, name="mission-type")
@@ -17,7 +17,7 @@ from specify_cli.acceptance import (
17
17
  perform_acceptance,
18
18
  )
19
19
  from specify_cli.cli import StepTracker
20
- from specify_cli.cli.selector_resolution import resolve_selector
20
+ from specify_cli.cli.selector_resolution import resolve_mission_handle
21
21
  from specify_cli.cli.helpers import check_version_compatibility, console, show_banner
22
22
  from specify_cli.tasks_support import LANES, TaskCliError, find_repo_root
23
23
  from specify_cli.sync.events import emit_wp_status_changed
@@ -158,24 +158,24 @@ def accept(
158
158
  tracker.add("verify", "Run readiness checks")
159
159
  console.print()
160
160
  tracker.start("detect")
161
- try:
162
- mission_slug = resolve_selector(
163
- canonical_value=mission,
164
- canonical_flag="--mission",
165
- alias_value=feature,
166
- alias_flag="--feature",
167
- suppress_env_var="SPEC_KITTY_SUPPRESS_FEATURE_DEPRECATION",
168
- command_hint="--mission <slug>",
169
- ).canonical_value
170
- except typer.BadParameter as exc:
171
- _safe_emit_error_logged(str(exc))
161
+
162
+ # Resolve mission handle — supports slug, numeric prefix, mid8, or full ULID.
163
+ # resolve_mission_handle() handles AmbiguousHandleError / MissionNotFoundError
164
+ # and calls sys.exit(2) on failure; no try/except needed.
165
+ raw_handle = mission or feature
166
+ if raw_handle is None:
167
+ _safe_emit_error_logged("No mission handle provided")
172
168
  if json_output:
173
- print(json.dumps({"error": str(exc)}))
169
+ print(json.dumps({"error": "--mission <slug> is required"}))
174
170
  else:
175
- tracker.error("detect", str(exc))
171
+ tracker.error("detect", "--mission <slug> is required")
176
172
  console.print(tracker.render())
177
- console.print(f"[red]Error:[/red] {exc}")
173
+ console.print("[red]Error:[/red] --mission <slug> is required")
178
174
  raise typer.Exit(1)
175
+
176
+ resolved = resolve_mission_handle(raw_handle, repo_root, json_mode=json_output)
177
+ mission_slug = resolved.mission_slug
178
+
179
179
  if not json_output:
180
180
  tracker.complete("detect", mission_slug)
181
181
 
@@ -10,7 +10,7 @@ import typer
10
10
  from rich.console import Console
11
11
  from typing_extensions import Annotated
12
12
 
13
- from specify_cli.cli.selector_resolution import resolve_selector
13
+ from specify_cli.cli.selector_resolution import resolve_mission_handle
14
14
  from specify_cli.core.paths import locate_project_root
15
15
  from specify_cli.core.execution_context import (
16
16
  ACTION_NAMES,
@@ -36,6 +36,9 @@ def _find_feature_directory(
36
36
  ) -> Path:
37
37
  """Find the mission directory from an explicit mission slug.
38
38
 
39
+ Uses the canonical mission resolver which handles ambiguous numeric-prefix
40
+ handles, mid8 prefixes, and full ULID forms.
41
+
39
42
  Args:
40
43
  repo_root: Repository root path
41
44
  cwd: Current working directory (unused — kept for signature compatibility)
@@ -46,24 +49,14 @@ def _find_feature_directory(
46
49
  Path to mission directory
47
50
 
48
51
  Raises:
49
- ValueError: If mission slug is not provided, selectors conflict, or directory doesn't exist
52
+ ValueError: If mission slug is not provided or directory doesn't exist.
50
53
  """
51
- resolved = resolve_selector(
52
- canonical_value=explicit_mission,
53
- canonical_flag="--mission",
54
- alias_value=explicit_feature,
55
- alias_flag="--feature",
56
- suppress_env_var="SPEC_KITTY_SUPPRESS_FEATURE_DEPRECATION",
57
- command_hint="--mission <slug>",
58
- )
59
- slug = resolved.canonical_value
60
- feature_dir = repo_root / "kitty-specs" / slug
61
- if not feature_dir.exists():
62
- raise ValueError(
63
- f"Mission directory not found: {feature_dir}. "
64
- f"Check that '{slug}' is the correct mission slug."
65
- )
66
- return feature_dir
54
+ raw_handle = explicit_mission or explicit_feature
55
+ if not raw_handle:
56
+ raise ValueError("--mission <slug> is required")
57
+ # resolve_mission_handle calls sys.exit(2) on error; on success returns ResolvedMission.
58
+ resolved = resolve_mission_handle(raw_handle, repo_root)
59
+ return resolved.feature_dir
67
60
 
68
61
 
69
62
  @app.command(name="resolve")
@@ -99,14 +92,11 @@ def resolve_context(
99
92
  f"Invalid action '{action}'. Expected one of: {', '.join(ACTION_NAMES)}.",
100
93
  )
101
94
 
102
- mission_slug = resolve_selector(
103
- canonical_value=mission,
104
- canonical_flag="--mission",
105
- alias_value=feature,
106
- alias_flag="--feature",
107
- suppress_env_var="SPEC_KITTY_SUPPRESS_FEATURE_DEPRECATION",
108
- command_hint="--mission <slug>",
109
- ).canonical_value
95
+ raw_handle = mission or feature
96
+ if not raw_handle:
97
+ raise ActionContextError("MISSING_MISSION", "--mission <slug> is required")
98
+ mission_resolved = resolve_mission_handle(raw_handle, repo_root, json_mode=json_output)
99
+ mission_slug = mission_resolved.mission_slug
110
100
 
111
101
  context = resolve_action_context(
112
102
  repo_root,
@@ -18,7 +18,7 @@ from rich.console import Console
18
18
  from typing import Annotated
19
19
 
20
20
  from specify_cli import __version__ as SPEC_KITTY_VERSION
21
- from specify_cli.cli.selector_resolution import resolve_selector
21
+ from specify_cli.cli.selector_resolution import resolve_mission_handle, resolve_selector
22
22
  from specify_cli.cli.commands.accept import accept as top_level_accept
23
23
  from specify_cli.cli.commands.merge import merge as top_level_merge
24
24
  from specify_cli.core.dependency_graph import (
@@ -33,7 +33,6 @@ from specify_cli.core.git_preflight import (
33
33
  from specify_cli.core.paths import get_main_repo_root, locate_project_root
34
34
  from specify_cli.core.paths import (
35
35
  get_feature_target_branch,
36
- require_explicit_feature,
37
36
  )
38
37
  from specify_cli.git import safe_commit
39
38
  from specify_cli.core.worktree import (
@@ -367,22 +366,30 @@ def _find_feature_directory(
367
366
  ) -> Path:
368
367
  """Find the mission directory from an explicit mission slug.
369
368
 
369
+ Uses the canonical mission resolver which handles ambiguous numeric-prefix
370
+ handles, mid8 prefixes, and full ULID forms.
371
+
370
372
  Args:
371
373
  repo_root: Repository root path
372
- cwd: Current working directory (unused — kept for signature compatibility)
373
- explicit_feature: Mission slug provided explicitly (required)
374
+ _cwd: Current working directory (unused — kept for signature compatibility)
375
+ explicit_feature: Mission handle provided explicitly (required)
374
376
 
375
377
  Returns:
376
378
  Path to mission directory
377
379
 
378
380
  Raises:
379
- ValueError: If feature slug is not provided or directory doesn't exist
381
+ ValueError: If no handle is provided.
380
382
  """
381
- slug = require_explicit_feature(explicit_feature, command_hint="--mission <slug>")
382
- feature_dir = repo_root / "kitty-specs" / slug
383
- if not feature_dir.exists():
384
- raise ValueError(f"Mission directory not found: {feature_dir}. Check that '{slug}' is the correct mission slug.")
385
- return feature_dir
383
+ if not explicit_feature:
384
+ raise ValueError("--mission <slug> is required")
385
+ try:
386
+ resolved = resolve_mission_handle(explicit_feature, repo_root)
387
+ return resolved.feature_dir
388
+ except (SystemExit, typer.Exit):
389
+ candidate = repo_root / "kitty-specs" / explicit_feature
390
+ if candidate.exists():
391
+ return candidate
392
+ raise ValueError(f"Mission directory not found: {explicit_feature}") from None
386
393
 
387
394
 
388
395
  def _list_feature_spec_candidates(repo_root: Path) -> list[dict[str, object]]:
@@ -394,9 +401,12 @@ def _list_feature_spec_candidates(repo_root: Path) -> list[dict[str, object]]:
394
401
 
395
402
  candidates: list[dict[str, object]] = []
396
403
  for feature_dir in sorted(kitty_specs_dir.iterdir()):
397
- if not feature_dir.is_dir() or not re.match(r"^\d{3}-.+$", feature_dir.name):
404
+ if not feature_dir.is_dir():
398
405
  continue
399
406
  spec_file = feature_dir / "spec.md"
407
+ meta_file = feature_dir / "meta.json"
408
+ if not spec_file.exists() and not meta_file.exists():
409
+ continue
400
410
  candidates.append(
401
411
  {
402
412
  "mission_slug": feature_dir.name,
@@ -1164,10 +1174,24 @@ def merge_feature(
1164
1174
  print(json.dumps({"error": error, "success": False}))
1165
1175
  sys.exit(1)
1166
1176
 
1177
+ # Resolve the mission handle to a canonical slug before delegating.
1178
+ resolved_feature = feature
1179
+ if feature:
1180
+ try:
1181
+ _resolved = resolve_mission_handle(feature, repo_root)
1182
+ except (SystemExit, typer.Exit):
1183
+ # Preserve legacy wrapper behavior in tests and programmatic
1184
+ # callers that pass a raw slug/worktree hint without a real
1185
+ # mission directory. The delegated merge flow still performs
1186
+ # its own resolution when operating against a real repo.
1187
+ _resolved = None
1188
+ if _resolved is not None:
1189
+ resolved_feature = _resolved.mission_slug
1190
+
1167
1191
  # Resolve target branch dynamically if not specified
1168
1192
  if target is None:
1169
- if feature:
1170
- target = get_feature_target_branch(repo_root, feature)
1193
+ if resolved_feature:
1194
+ target = get_feature_target_branch(repo_root, resolved_feature)
1171
1195
  else:
1172
1196
  from specify_cli.core.git_ops import resolve_primary_branch
1173
1197
 
@@ -1179,12 +1203,12 @@ def merge_feature(
1179
1203
  is_feature_branch = re.match(r"^\d{3}-", current_branch)
1180
1204
 
1181
1205
  if not is_feature_branch:
1182
- if not feature:
1206
+ if not resolved_feature:
1183
1207
  raise RuntimeError(f"Not on mission branch ({current_branch}). Auto-retry requires --mission to choose a deterministic worktree.")
1184
1208
 
1185
- retry_worktree = _find_feature_worktree(repo_root, feature)
1209
+ retry_worktree = _find_feature_worktree(repo_root, resolved_feature)
1186
1210
  if not retry_worktree:
1187
- raise RuntimeError(f"Could not find worktree for mission {feature} under {repo_root / '.worktrees'}.")
1211
+ raise RuntimeError(f"Could not find worktree for mission {resolved_feature} under {repo_root / '.worktrees'}.")
1188
1212
 
1189
1213
  console.print(f"[yellow]Auto-retry:[/yellow] Not on mission branch ({current_branch}). Running merge in {retry_worktree.name}")
1190
1214
 
@@ -1192,9 +1216,9 @@ def merge_feature(
1192
1216
  env = os.environ.copy()
1193
1217
  env["SPEC_KITTY_AUTORETRY"] = "1"
1194
1218
 
1195
- # Re-run command in worktree
1219
+ # Re-run command in worktree; pass canonical slug so retry is unambiguous.
1196
1220
  retry_cmd = ["spec-kitty", "agent", "mission", "merge"]
1197
- retry_cmd.extend(["--mission", feature])
1221
+ retry_cmd.extend(["--mission", resolved_feature])
1198
1222
  retry_cmd.extend(["--target", target, "--strategy", strategy])
1199
1223
  if push:
1200
1224
  retry_cmd.append("--push")
@@ -1226,7 +1250,7 @@ def merge_feature(
1226
1250
  target_branch=target, # Note: parameter name differs
1227
1251
  dry_run=dry_run,
1228
1252
  json_output=False,
1229
- mission=(feature or ""),
1253
+ mission=(resolved_feature or ""),
1230
1254
  feature=None,
1231
1255
  resume=False, # Agent commands don't support resume
1232
1256
  abort=False, # Agent commands don't support abort