mapify-cli 3.35.0__tar.gz → 3.35.2__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 (746) hide show
  1. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/PKG-INFO +4 -2
  2. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/README.md +1 -1
  3. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/pyproject.toml +5 -1
  4. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/__init__.py +1 -1
  5. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/schemas.py +8 -0
  6. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/review-reader.toml +3 -0
  7. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-auto/SKILL.md +3 -3
  8. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-auto/auto-reference.md +6 -4
  9. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-release/SKILL.md +1 -1
  10. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-release/release-reference.md +11 -2
  11. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-review/SKILL.md +39 -125
  12. mapify_cli-3.35.2/src/mapify_cli/templates/codex/skills/map-review/adversarial-reference.md +110 -0
  13. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-review/review-reference.md +22 -2
  14. mapify_cli-3.35.2/src/mapify_cli/templates/map/scripts/codex_review_host.py +381 -0
  15. mapify_cli-3.35.2/src/mapify_cli/templates/map/scripts/codex_review_runner.py +335 -0
  16. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/map_step_runner.py +271 -52
  17. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-auto/SKILL.md +3 -3
  18. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-auto/auto-reference.md +6 -4
  19. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-release/SKILL.md +1 -1
  20. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-release/release-reference.md +11 -2
  21. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-review/review-reference.md +10 -2
  22. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/review-reader.toml.jinja +3 -0
  23. mapify_cli-3.35.2/src/mapify_cli/templates_src/map/scripts/codex_review_host.py.jinja +381 -0
  24. mapify_cli-3.35.2/src/mapify_cli/templates_src/map/scripts/codex_review_runner.py.jinja +313 -0
  25. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/map_step_runner.py.jinja +271 -52
  26. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-auto/SKILL.md.jinja +3 -3
  27. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-auto/auto-reference.md.jinja +6 -4
  28. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-release/SKILL.md.jinja +1 -1
  29. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-release/release-reference.md.jinja +11 -2
  30. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-review/SKILL.md.jinja +59 -9
  31. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-review/adversarial-reference.md.jinja +24 -0
  32. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-review/review-reference.md.jinja +26 -2
  33. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_agent_dispatch_audit.py +4 -3
  34. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_codex_map_review_live.py +20 -47
  35. mapify_cli-3.35.2/tests/test_codex_review_host.py +337 -0
  36. mapify_cli-3.35.2/tests/test_codex_review_native.py +90 -0
  37. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_locking.py +4 -0
  38. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_map_step_runner.py +125 -13
  39. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_release_ci_gates.py +127 -0
  40. mapify_cli-3.35.2/tests/test_review_changed_scope.py +251 -0
  41. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_context_transport.py +9 -4
  42. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_explicit_base.py +4 -2
  43. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_reader_capabilities.py +9 -2
  44. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_security_gates.py +20 -9
  45. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_verdict_ledger.py +18 -1
  46. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills.py +26 -46
  47. mapify_cli-3.35.0/src/mapify_cli/templates/codex/skills/map-review/adversarial-reference.md +0 -192
  48. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/.claude/hooks/README.md +0 -0
  49. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/.claude/skills/README.md +0 -0
  50. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/.gitignore +0 -0
  51. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/LICENSE +0 -0
  52. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/__main__.py +0 -0
  53. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/_locking.py +0 -0
  54. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/_python_guard.py +0 -0
  55. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/auto_update.py +0 -0
  56. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/boundary_quality_report.py +0 -0
  57. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/cli_ui.py +0 -0
  58. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/code_map.py +0 -0
  59. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/codex_exec.py +0 -0
  60. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/config/__init__.py +0 -0
  61. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/config/mcp.py +0 -0
  62. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/config/project_config.py +0 -0
  63. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/config/settings.py +0 -0
  64. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/__init__.py +0 -0
  65. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/agent_generator.py +0 -0
  66. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/codex_copier.py +0 -0
  67. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/domain_skill.py +0 -0
  68. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/file_copier.py +0 -0
  69. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/governance_report.py +0 -0
  70. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/managed_file_copier.py +0 -0
  71. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/providers.py +0 -0
  72. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/delivery/template_renderer.py +0 -0
  73. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/dependency_graph.py +0 -0
  74. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/grace_eval/__init__.py +0 -0
  75. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/grace_eval/schema.py +0 -0
  76. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/grace_eval/sweep.py +0 -0
  77. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/install_manifest.py +0 -0
  78. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/intent_detector.py +0 -0
  79. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/memory/__init__.py +0 -0
  80. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/memory/capture.py +0 -0
  81. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/memory/digest_schema.py +0 -0
  82. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/memory/evidence.py +0 -0
  83. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/memory/finalize.py +0 -0
  84. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/memory/recall.py +0 -0
  85. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/minimality_eval.py +0 -0
  86. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/minimality_report.py +0 -0
  87. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/parallelism_observability.py +0 -0
  88. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/provider_registry.py +0 -0
  89. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/python_runtime.py +0 -0
  90. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/ralph_state.py +0 -0
  91. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/repo_insight.py +0 -0
  92. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/research_eval.py +0 -0
  93. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/research_eval_compare.py +0 -0
  94. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/scope_classifier.py +0 -0
  95. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skill_ir.py +0 -0
  96. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/__init__.py +0 -0
  97. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/aggregator.py +0 -0
  98. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/apply_patcher.py +0 -0
  99. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/assertions.py +0 -0
  100. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/description_optimizer.py +0 -0
  101. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/dispatcher.py +0 -0
  102. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/eval_schema.py +0 -0
  103. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/proposer.py +0 -0
  104. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/review_corpus.py +0 -0
  105. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/review_pilot.py +0 -0
  106. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/runner.py +0 -0
  107. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/__init__.py +0 -0
  108. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/bundle.py +0 -0
  109. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/dispatcher.py +0 -0
  110. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/eval_schema.py +0 -0
  111. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/gates.py +0 -0
  112. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/judge.py +0 -0
  113. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/repeated.py +0 -0
  114. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/report.py +0 -0
  115. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/runner.py +0 -0
  116. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/trajectory/seeding.py +0 -0
  117. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/skills_eval/viewer.py +0 -0
  118. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/.gitignore +0 -0
  119. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/CLAUDE.md +0 -0
  120. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/actor.md +0 -0
  121. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/documentation-reviewer.md +0 -0
  122. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/evaluator.md +0 -0
  123. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/final-verifier.md +0 -0
  124. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/monitor.md +0 -0
  125. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/predictor.md +0 -0
  126. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/reflector.md +0 -0
  127. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/research-agent.md +0 -0
  128. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/review-reader.md +0 -0
  129. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/agents/task-decomposer.md +0 -0
  130. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/AGENTS.md +0 -0
  131. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/actor.toml +0 -0
  132. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/decomposer.toml +0 -0
  133. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/documentation-reviewer.toml +0 -0
  134. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/evaluator.toml +0 -0
  135. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/final-verifier.toml +0 -0
  136. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/monitor.toml +0 -0
  137. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/predictor.toml +0 -0
  138. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/reflector.toml +0 -0
  139. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/agents/researcher.toml +0 -0
  140. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/config.toml +0 -0
  141. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/context-meter.py +0 -0
  142. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/detect-clarification-triggers.py +0 -0
  143. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/end-of-turn.sh +0 -0
  144. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/map-memory-capture.py +0 -0
  145. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/map-memory-endmark.py +0 -0
  146. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/map-memory-recall.py +0 -0
  147. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/map-memory-session.py +0 -0
  148. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/map-stop.py +0 -0
  149. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/map-token-meter.py +0 -0
  150. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/post-compact-context.py +0 -0
  151. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/pre-compact-save-transcript.py +0 -0
  152. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/ralph-context-pruner.py +0 -0
  153. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/ralph-iteration-logger.py +0 -0
  154. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/safety-guardrails.py +0 -0
  155. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/scrub-internal-ids.py +0 -0
  156. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/workflow-context-injector.py +0 -0
  157. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks/workflow-gate.py +0 -0
  158. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/hooks.json +0 -0
  159. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/references/map-json-output-contracts.md +0 -0
  160. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/references/map-output-examples.md +0 -0
  161. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/references/map-xml-prompt-envelopes.md +0 -0
  162. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-architecture/SKILL.md +0 -0
  163. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-check/SKILL.md +0 -0
  164. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-check/check-reference.md +0 -0
  165. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-debug/SKILL.md +0 -0
  166. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-efficient/SKILL.md +0 -0
  167. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-efficient/efficient-reference.md +0 -0
  168. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-explain/SKILL.md +0 -0
  169. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-fast/SKILL.md +0 -0
  170. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-learn/SKILL.md +0 -0
  171. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-learn/templates/example-rules.md +0 -0
  172. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-learn/templates/rules-unconditional.md +0 -0
  173. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-learn/templates/rules-with-paths.md +0 -0
  174. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-memory-now/SKILL.md +0 -0
  175. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-plan/SKILL.md +0 -0
  176. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-plan/plan-reference.md +0 -0
  177. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-prd-review/SKILL.md +0 -0
  178. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-resume/SKILL.md +0 -0
  179. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-resume/resume-reference.md +0 -0
  180. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-skill-eval/SKILL.md +0 -0
  181. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-so-search/SKILL.md +0 -0
  182. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-so-search/scripts/sofa_search.py +0 -0
  183. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/SKILL.md +0 -0
  184. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/scripts/check-complete.sh +0 -0
  185. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/scripts/get-plan-path.sh +0 -0
  186. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/scripts/init-session.sh +0 -0
  187. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/scripts/show-focus.sh +0 -0
  188. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/templates/findings.md +0 -0
  189. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/templates/iteration_history.md +0 -0
  190. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/templates/progress.md +0 -0
  191. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-state/templates/task_plan.md +0 -0
  192. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-task/SKILL.md +0 -0
  193. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-tdd/SKILL.md +0 -0
  194. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-tokenreport/SKILL.md +0 -0
  195. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-understand/SKILL.md +0 -0
  196. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-upgrade/SKILL.md +0 -0
  197. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-wayfind/SKILL.md +0 -0
  198. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/codex/skills/map-wayfind/wayfind-reference.md +0 -0
  199. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/README.md +0 -0
  200. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/context-meter.py +0 -0
  201. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/detect-clarification-triggers.py +0 -0
  202. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/end-of-turn.sh +0 -0
  203. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/map-memory-capture.py +0 -0
  204. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/map-memory-endmark.py +0 -0
  205. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/map-memory-finalize.py +0 -0
  206. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/map-memory-recall.py +0 -0
  207. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/map-statusline.py +0 -0
  208. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/map-token-meter.py +0 -0
  209. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/post-compact-context.py +0 -0
  210. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/pre-compact-save-transcript.py +0 -0
  211. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/ralph-context-pruner.py +0 -0
  212. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/ralph-iteration-logger.py +0 -0
  213. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/safety-guardrails.py +0 -0
  214. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/scrub-internal-ids.py +0 -0
  215. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/workflow-context-injector.py +0 -0
  216. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/hooks/workflow-gate.py +0 -0
  217. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/classify_scope.py +0 -0
  218. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/diagnostics.py +0 -0
  219. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/map_interruption.py +0 -0
  220. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/map_orchestrator.py +0 -0
  221. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/map_utils.py +0 -0
  222. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/review_check_supervisor.py +0 -0
  223. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/scrub_internal_ids.py +0 -0
  224. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/sofa_client.py +0 -0
  225. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/validate_spec_citations.py +0 -0
  226. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/scripts/wayfind_runner.py +0 -0
  227. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/static-analysis/analyze.sh +0 -0
  228. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/static-analysis/handlers/common.sh +0 -0
  229. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/static-analysis/handlers/go.sh +0 -0
  230. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/static-analysis/handlers/python.sh +0 -0
  231. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/static-analysis/handlers/rust.sh +0 -0
  232. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/map/static-analysis/handlers/typescript.sh +0 -0
  233. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/ralph-loop-config.json +0 -0
  234. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/bash-guidelines.md +0 -0
  235. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/decomposition-examples.md +0 -0
  236. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/escalation-matrix.md +0 -0
  237. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/hook-patterns.md +0 -0
  238. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/host-paths.md +0 -0
  239. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/map-json-output-contracts.md +0 -0
  240. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/map-output-examples.md +0 -0
  241. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/map-xml-prompt-envelopes.md +0 -0
  242. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/mcp-usage-examples.md +0 -0
  243. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/step-state-schema.md +0 -0
  244. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/references/workflow-state-schema.md +0 -0
  245. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/rules/learned/README.md +0 -0
  246. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/settings.json +0 -0
  247. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/README.md +0 -0
  248. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-architecture/SKILL.md +0 -0
  249. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-check/SKILL.md +0 -0
  250. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-check/check-reference.md +0 -0
  251. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-debug/SKILL.md +0 -0
  252. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-efficient/SKILL.md +0 -0
  253. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-efficient/efficient-reference.md +0 -0
  254. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-explain/SKILL.md +0 -0
  255. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-fast/SKILL.md +0 -0
  256. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-learn/SKILL.md +0 -0
  257. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-learn/templates/example-rules.md +0 -0
  258. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-learn/templates/rules-unconditional.md +0 -0
  259. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-learn/templates/rules-with-paths.md +0 -0
  260. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-memory-now/SKILL.md +0 -0
  261. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-plan/SKILL.md +0 -0
  262. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-plan/plan-reference.md +0 -0
  263. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-prd-review/SKILL.md +0 -0
  264. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-resume/SKILL.md +0 -0
  265. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-resume/resume-reference.md +0 -0
  266. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-review/SKILL.md +0 -0
  267. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-review/adversarial-reference.md +0 -0
  268. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-skill-eval/SKILL.md +0 -0
  269. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-so-search/SKILL.md +0 -0
  270. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-so-search/scripts/sofa_search.py +0 -0
  271. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/SKILL.md +0 -0
  272. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/scripts/check-complete.sh +0 -0
  273. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/scripts/get-plan-path.sh +0 -0
  274. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/scripts/init-session.sh +0 -0
  275. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/scripts/show-focus.sh +0 -0
  276. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/templates/findings.md +0 -0
  277. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/templates/iteration_history.md +0 -0
  278. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/templates/progress.md +0 -0
  279. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-state/templates/task_plan.md +0 -0
  280. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-task/SKILL.md +0 -0
  281. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-tdd/SKILL.md +0 -0
  282. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-tokenreport/SKILL.md +0 -0
  283. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-understand/SKILL.md +0 -0
  284. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-upgrade/SKILL.md +0 -0
  285. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-wayfind/SKILL.md +0 -0
  286. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/map-wayfind/wayfind-reference.md +0 -0
  287. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/skills/skill-rules.json +0 -0
  288. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates/workflow-rules.json +0 -0
  289. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/.gitignore.jinja +0 -0
  290. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/CLAUDE.md.jinja +0 -0
  291. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/acceptance-runtime.py.jinja +0 -0
  292. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/apply-patch-paths.py.jinja +0 -0
  293. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/auto-update-preflight.md.jinja +0 -0
  294. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/codex-memory-hook-wrapper.py.jinja +0 -0
  295. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/manual-upgrade-flow.md.jinja +0 -0
  296. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/monitor-review-context.md.jinja +0 -0
  297. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/python-version-guard.py.jinja +0 -0
  298. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/serial-blocker-repair.md.jinja +0 -0
  299. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/stale-attribution-recovery.md.jinja +0 -0
  300. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/_partials/vacuous-test-check.md.jinja +0 -0
  301. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/actor.md.jinja +0 -0
  302. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/documentation-reviewer.md.jinja +0 -0
  303. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/evaluator.md.jinja +0 -0
  304. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/final-verifier.md.jinja +0 -0
  305. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/monitor.md.jinja +0 -0
  306. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/predictor.md.jinja +0 -0
  307. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/reflector.md.jinja +0 -0
  308. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/research-agent.md.jinja +0 -0
  309. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/review-reader.md.jinja +0 -0
  310. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/agents/task-decomposer.md.jinja +0 -0
  311. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/AGENTS.md.jinja +0 -0
  312. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/actor.toml.jinja +0 -0
  313. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/decomposer.toml.jinja +0 -0
  314. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/documentation-reviewer.toml.jinja +0 -0
  315. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/evaluator.toml.jinja +0 -0
  316. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/final-verifier.toml.jinja +0 -0
  317. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/monitor.toml.jinja +0 -0
  318. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/predictor.toml.jinja +0 -0
  319. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/reflector.toml.jinja +0 -0
  320. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/agents/researcher.toml.jinja +0 -0
  321. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/config.toml.jinja +0 -0
  322. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/context-meter.py.jinja +0 -0
  323. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/detect-clarification-triggers.py.jinja +0 -0
  324. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/end-of-turn.sh.jinja +0 -0
  325. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/map-memory-capture.py.jinja +0 -0
  326. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/map-memory-endmark.py.jinja +0 -0
  327. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/map-memory-recall.py.jinja +0 -0
  328. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/map-memory-session.py.jinja +0 -0
  329. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/map-stop.py.jinja +0 -0
  330. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/map-token-meter.py.jinja +0 -0
  331. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/post-compact-context.py.jinja +0 -0
  332. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/pre-compact-save-transcript.py.jinja +0 -0
  333. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/ralph-context-pruner.py.jinja +0 -0
  334. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/ralph-iteration-logger.py.jinja +0 -0
  335. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/safety-guardrails.py.jinja +0 -0
  336. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/scrub-internal-ids.py.jinja +0 -0
  337. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/workflow-context-injector.py.jinja +0 -0
  338. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks/workflow-gate.py.jinja +0 -0
  339. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/hooks.json.jinja +0 -0
  340. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/references/map-json-output-contracts.md.jinja +0 -0
  341. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/references/map-output-examples.md.jinja +0 -0
  342. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/references/map-xml-prompt-envelopes.md.jinja +0 -0
  343. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-architecture/SKILL.md.jinja +0 -0
  344. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-auto/SKILL.md.jinja +0 -0
  345. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-auto/auto-reference.md.jinja +0 -0
  346. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-check/SKILL.md.jinja +0 -0
  347. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-check/check-reference.md.jinja +0 -0
  348. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-debug/SKILL.md.jinja +0 -0
  349. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-efficient/SKILL.md.jinja +0 -0
  350. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-efficient/efficient-reference.md.jinja +0 -0
  351. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-explain/SKILL.md.jinja +0 -0
  352. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-fast/SKILL.md.jinja +0 -0
  353. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-learn/SKILL.md.jinja +0 -0
  354. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-learn/templates/example-rules.md.jinja +0 -0
  355. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-learn/templates/rules-unconditional.md.jinja +0 -0
  356. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-learn/templates/rules-with-paths.md.jinja +0 -0
  357. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-memory-now/SKILL.md.jinja +0 -0
  358. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-plan/SKILL.md.jinja +0 -0
  359. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-plan/plan-reference.md.jinja +0 -0
  360. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-prd-review/SKILL.md.jinja +0 -0
  361. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-release/SKILL.md.jinja +0 -0
  362. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-release/release-reference.md.jinja +0 -0
  363. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-resume/SKILL.md.jinja +0 -0
  364. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-resume/resume-reference.md.jinja +0 -0
  365. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-review/SKILL.md.jinja +0 -0
  366. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-review/adversarial-reference.md.jinja +0 -0
  367. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-review/review-reference.md.jinja +0 -0
  368. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-skill-eval/SKILL.md.jinja +0 -0
  369. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-so-search/SKILL.md.jinja +0 -0
  370. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-so-search/scripts/sofa_search.py.jinja +0 -0
  371. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/SKILL.md.jinja +0 -0
  372. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/scripts/check-complete.sh.jinja +0 -0
  373. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/scripts/get-plan-path.sh.jinja +0 -0
  374. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/scripts/init-session.sh.jinja +0 -0
  375. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/scripts/show-focus.sh.jinja +0 -0
  376. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/templates/findings.md.jinja +0 -0
  377. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/templates/iteration_history.md.jinja +0 -0
  378. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/templates/progress.md.jinja +0 -0
  379. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-state/templates/task_plan.md.jinja +0 -0
  380. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-task/SKILL.md.jinja +0 -0
  381. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-tdd/SKILL.md.jinja +0 -0
  382. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-tokenreport/SKILL.md.jinja +0 -0
  383. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-understand/SKILL.md.jinja +0 -0
  384. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-upgrade/SKILL.md.jinja +0 -0
  385. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-wayfind/SKILL.md.jinja +0 -0
  386. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/codex/skills/map-wayfind/wayfind-reference.md.jinja +0 -0
  387. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/README.md.jinja +0 -0
  388. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/context-meter.py.jinja +0 -0
  389. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/detect-clarification-triggers.py.jinja +0 -0
  390. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/end-of-turn.sh.jinja +0 -0
  391. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/map-memory-capture.py.jinja +0 -0
  392. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/map-memory-endmark.py.jinja +0 -0
  393. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/map-memory-finalize.py.jinja +0 -0
  394. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/map-memory-recall.py.jinja +0 -0
  395. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/map-statusline.py.jinja +0 -0
  396. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/map-token-meter.py.jinja +0 -0
  397. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/post-compact-context.py.jinja +0 -0
  398. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/pre-compact-save-transcript.py.jinja +0 -0
  399. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/ralph-context-pruner.py.jinja +0 -0
  400. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/ralph-iteration-logger.py.jinja +0 -0
  401. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/safety-guardrails.py.jinja +0 -0
  402. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/scrub-internal-ids.py.jinja +0 -0
  403. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/workflow-context-injector.py.jinja +0 -0
  404. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/hooks/workflow-gate.py.jinja +0 -0
  405. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/classify_scope.py.jinja +0 -0
  406. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/diagnostics.py.jinja +0 -0
  407. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/map_interruption.py.jinja +0 -0
  408. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/map_orchestrator.py.jinja +0 -0
  409. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/map_utils.py.jinja +0 -0
  410. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/review_check_supervisor.py.jinja +0 -0
  411. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/scrub_internal_ids.py.jinja +0 -0
  412. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/sofa_client.py.jinja +0 -0
  413. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/validate_spec_citations.py.jinja +0 -0
  414. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/scripts/wayfind_runner.py.jinja +0 -0
  415. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/static-analysis/analyze.sh.jinja +0 -0
  416. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/static-analysis/handlers/common.sh.jinja +0 -0
  417. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/static-analysis/handlers/go.sh.jinja +0 -0
  418. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/static-analysis/handlers/python.sh.jinja +0 -0
  419. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/static-analysis/handlers/rust.sh.jinja +0 -0
  420. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/map/static-analysis/handlers/typescript.sh.jinja +0 -0
  421. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/ralph-loop-config.json.jinja +0 -0
  422. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/bash-guidelines.md.jinja +0 -0
  423. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/decomposition-examples.md.jinja +0 -0
  424. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/escalation-matrix.md.jinja +0 -0
  425. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/hook-patterns.md.jinja +0 -0
  426. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/host-paths.md.jinja +0 -0
  427. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/map-json-output-contracts.md.jinja +0 -0
  428. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/map-output-examples.md.jinja +0 -0
  429. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/map-xml-prompt-envelopes.md.jinja +0 -0
  430. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/mcp-usage-examples.md.jinja +0 -0
  431. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/step-state-schema.md.jinja +0 -0
  432. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/references/workflow-state-schema.md.jinja +0 -0
  433. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/rules/learned/README.md.jinja +0 -0
  434. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/settings.json.jinja +0 -0
  435. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/README.md.jinja +0 -0
  436. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-architecture/SKILL.md.jinja +0 -0
  437. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-check/SKILL.md.jinja +0 -0
  438. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-check/check-reference.md.jinja +0 -0
  439. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-debug/SKILL.md.jinja +0 -0
  440. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-efficient/SKILL.md.jinja +0 -0
  441. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-efficient/efficient-reference.md.jinja +0 -0
  442. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-explain/SKILL.md.jinja +0 -0
  443. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-fast/SKILL.md.jinja +0 -0
  444. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-learn/SKILL.md.jinja +0 -0
  445. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-learn/templates/example-rules.md.jinja +0 -0
  446. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-learn/templates/rules-unconditional.md.jinja +0 -0
  447. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-learn/templates/rules-with-paths.md.jinja +0 -0
  448. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-memory-now/SKILL.md.jinja +0 -0
  449. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-plan/SKILL.md.jinja +0 -0
  450. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-plan/plan-reference.md.jinja +0 -0
  451. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-prd-review/SKILL.md.jinja +0 -0
  452. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-resume/SKILL.md.jinja +0 -0
  453. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-resume/resume-reference.md.jinja +0 -0
  454. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-skill-eval/SKILL.md.jinja +0 -0
  455. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-so-search/SKILL.md.jinja +0 -0
  456. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-so-search/scripts/sofa_search.py.jinja +0 -0
  457. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/SKILL.md.jinja +0 -0
  458. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/scripts/check-complete.sh.jinja +0 -0
  459. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/scripts/get-plan-path.sh.jinja +0 -0
  460. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/scripts/init-session.sh.jinja +0 -0
  461. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/scripts/show-focus.sh.jinja +0 -0
  462. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/templates/findings.md.jinja +0 -0
  463. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/templates/iteration_history.md.jinja +0 -0
  464. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/templates/progress.md.jinja +0 -0
  465. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-state/templates/task_plan.md.jinja +0 -0
  466. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-task/SKILL.md.jinja +0 -0
  467. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-tdd/SKILL.md.jinja +0 -0
  468. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-tokenreport/SKILL.md.jinja +0 -0
  469. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-understand/SKILL.md.jinja +0 -0
  470. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-upgrade/SKILL.md.jinja +0 -0
  471. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-wayfind/SKILL.md.jinja +0 -0
  472. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/map-wayfind/wayfind-reference.md.jinja +0 -0
  473. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/skills/skill-rules.json.jinja +0 -0
  474. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/templates_src/workflow-rules.json.jinja +0 -0
  475. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/token_budget.py +0 -0
  476. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/tool_output_offload.py +0 -0
  477. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/tools/__init__.py +0 -0
  478. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/tools/validate_dependencies.py +0 -0
  479. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/update_install.py +0 -0
  480. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/update_state.py +0 -0
  481. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/update_versions.py +0 -0
  482. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/verification_recorder.py +0 -0
  483. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/workflow_finalizer.py +0 -0
  484. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/workflow_logger.py +0 -0
  485. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/src/mapify_cli/workflow_state.py +0 -0
  486. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/__init__.py +0 -0
  487. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/_fake_task_tool.py +0 -0
  488. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/conftest.py +0 -0
  489. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/fixtures/claude/escalation-matrix.md +0 -0
  490. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/fixtures/codex/config.toml +0 -0
  491. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/fixtures/wave_blueprints.py +0 -0
  492. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/hooks/test_detect_clarification_triggers.py +0 -0
  493. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/hooks/test_end_of_turn.py +0 -0
  494. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/hooks/test_hook_inventory_smoke.py +0 -0
  495. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/hooks/test_safety_guardrails.py +0 -0
  496. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/hooks/test_scrub_internal_ids_hook.py +0 -0
  497. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/__init__.py +0 -0
  498. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/blueprint.json +0 -0
  499. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/code_review.md +0 -0
  500. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/plan_handoff.json +0 -0
  501. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/spec.md +0 -0
  502. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/step_state_initialized.json +0 -0
  503. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/step_state_plan_complete.json +0 -0
  504. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/task_plan.md +0 -0
  505. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/fixtures/verification_summary.md +0 -0
  506. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/test_e2e_artifact_contracts.py +0 -0
  507. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/integration/test_e2e_claude_sdk.py +0 -0
  508. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/review_context_helpers.py +0 -0
  509. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/review_pilot_git_cache.py +0 -0
  510. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/review_process_lifecycle.py +0 -0
  511. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/README.md +0 -0
  512. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_check_optimize_eval_set.json +0 -0
  513. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_debug_eval_set.json +0 -0
  514. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_debug_optimize_eval_set.json +0 -0
  515. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_efficient_optimize_eval_set.json +0 -0
  516. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_explain_optimize_eval_set.json +0 -0
  517. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_fast_optimize_eval_set.json +0 -0
  518. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_learn_optimize_eval_set.json +0 -0
  519. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_memory_now_optimize_eval_set.json +0 -0
  520. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_plan_optimize_eval_set.json +0 -0
  521. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_release_optimize_eval_set.json +0 -0
  522. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_resume_optimize_eval_set.json +0 -0
  523. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_review_optimize_eval_set.json +0 -0
  524. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_skill_eval_optimize_eval_set.json +0 -0
  525. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_state_optimize_eval_set.json +0 -0
  526. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_task_optimize_eval_set.json +0 -0
  527. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_tdd_optimize_eval_set.json +0 -0
  528. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/map_tokenreport_optimize_eval_set.json +0 -0
  529. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/manifest.json +0 -0
  530. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/.map/main/blueprint.json +0 -0
  531. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/.map/main/task_plan_main.md +0 -0
  532. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/src/__init__.py +0 -0
  533. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/src/utils.py +0 -0
  534. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/tests/test_compute.py +0 -0
  535. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc/hidden/test_calc_full.py +0 -0
  536. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc/manifest.json +0 -0
  537. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/.map/main/blueprint.json +0 -0
  538. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/.map/main/task_plan_main.md +0 -0
  539. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/src/__init__.py +0 -0
  540. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/src/calc.py +0 -0
  541. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/tests/test_calc_basic.py +0 -0
  542. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/hidden/test_calc_full.py +0 -0
  543. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/manifest.json +0 -0
  544. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/.map/main/blueprint.json +0 -0
  545. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/.map/main/task_plan_main.md +0 -0
  546. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/src/__init__.py +0 -0
  547. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/src/calc.py +0 -0
  548. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/tests/test_calc_basic.py +0 -0
  549. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_false_success/hidden/test_kvparse_full.py +0 -0
  550. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_false_success/manifest.json +0 -0
  551. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_false_success/repo/.map/main/blueprint.json +0 -0
  552. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_false_success/repo/.map/main/task_plan_main.md +0 -0
  553. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_false_success/repo/src/__init__.py +0 -0
  554. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_false_success/repo/src/kvparse.py +0 -0
  555. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_false_success/repo/tests/test_kvparse_basic.py +0 -0
  556. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/manifest.json +0 -0
  557. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/.map/main/blueprint.json +0 -0
  558. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/.map/main/task_plan_main.md +0 -0
  559. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/src/__init__.py +0 -0
  560. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/src/config.py +0 -0
  561. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/src/utils.py +0 -0
  562. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/tests/test_price.py +0 -0
  563. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/manifest.json +0 -0
  564. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/.map/main/blueprint.json +0 -0
  565. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/.map/main/task_plan_main.md +0 -0
  566. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/src/__init__.py +0 -0
  567. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/src/config.py +0 -0
  568. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/src/utils.py +0 -0
  569. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/tests/test_utils.py +0 -0
  570. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver/manifest.json +0 -0
  571. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/.map/main/blueprint.json +0 -0
  572. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/.map/main/task_plan_main.md +0 -0
  573. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/src/__init__.py +0 -0
  574. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/src/semver.py +0 -0
  575. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/tests/test_semver.py +0 -0
  576. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/hidden/test_semver_full.py +0 -0
  577. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/manifest.json +0 -0
  578. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/.map/main/blueprint.json +0 -0
  579. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/.map/main/task_plan_main.md +0 -0
  580. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/src/__init__.py +0 -0
  581. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/src/semver.py +0 -0
  582. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/tests/test_semver_basic.py +0 -0
  583. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/hidden/test_semver_full.py +0 -0
  584. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/manifest.json +0 -0
  585. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/.map/main/blueprint.json +0 -0
  586. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/.map/main/task_plan_main.md +0 -0
  587. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/src/__init__.py +0 -0
  588. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/src/semver.py +0 -0
  589. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/tests/test_semver_basic.py +0 -0
  590. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/review_corpus/corpus.json +0 -0
  591. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/review_corpus/evidence/adjudication.json +0 -0
  592. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/review_corpus/evidence/control-audit.json +0 -0
  593. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/review_corpus/evidence/manual-run.json +0 -0
  594. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/review_corpus/evidence/manual-run.log +0 -0
  595. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/review_corpus/evidence/manual_repro.py +0 -0
  596. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/review_pilot_error_max_budget.sanitized.json +0 -0
  597. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/skills_eval/whole_skill/spike_runner.py +0 -0
  598. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_acceptance_additive_revision.py +0 -0
  599. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_acceptance_additive_revision_review.py +0 -0
  600. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_acceptance_proofs.py +0 -0
  601. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_agent_cli_correctness.py +0 -0
  602. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_agent_frontmatter.py +0 -0
  603. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_agent_memory.py +0 -0
  604. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_approval_hold.py +0 -0
  605. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_approved_baseline_gate_contract.py +0 -0
  606. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_artifact_schemas.py +0 -0
  607. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_auto_update.py +0 -0
  608. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_boundary_quality_report.py +0 -0
  609. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_bump_version.py +0 -0
  610. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_classify_scope_script.py +0 -0
  611. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_code_map.py +0 -0
  612. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_compaction_offload_integration.py +0 -0
  613. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_concurrent_dispatch_harness.py +0 -0
  614. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_context_usefulness.py +0 -0
  615. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_cross_ai_config.py +0 -0
  616. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_debug_reference_install.py +0 -0
  617. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_decomposition.py +0 -0
  618. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_dependency_graph.py +0 -0
  619. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_diagnostics.py +0 -0
  620. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_digest_schema.py +0 -0
  621. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_domain_skill.py +0 -0
  622. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_file_copier.py +0 -0
  623. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_governance_attack_fixtures.py +0 -0
  624. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_governance_report.py +0 -0
  625. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_grace_eval_schema.py +0 -0
  626. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_grace_eval_sweep.py +0 -0
  627. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_hook_patterns.py +0 -0
  628. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_init_import_graph.py +0 -0
  629. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_install_manifest.py +0 -0
  630. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_intent_detector.py +0 -0
  631. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_inv1_no_anthropic_optimize.py +0 -0
  632. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_jinja2_dep.py +0 -0
  633. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_managed_file_copier.py +0 -0
  634. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_map_auto.py +0 -0
  635. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_map_interruption.py +0 -0
  636. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_map_orchestrator.py +0 -0
  637. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_map_token_meter.py +0 -0
  638. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_map_utils_sanitize.py +0 -0
  639. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_mapify_cli.py +0 -0
  640. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_capture.py +0 -0
  641. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_events.py +0 -0
  642. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_events_compat.py +0 -0
  643. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_events_exit_status.py +0 -0
  644. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_events_privacy.py +0 -0
  645. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_events_review.py +0 -0
  646. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_events_tools.py +0 -0
  647. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_finalize.py +0 -0
  648. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_integration.py +0 -0
  649. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_recall.py +0 -0
  650. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_memory_review_fixes.py +0 -0
  651. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_minimality_eval.py +0 -0
  652. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_minimality_report.py +0 -0
  653. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_model_invocable_skills.py +0 -0
  654. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_monitor_worktree_context.py +0 -0
  655. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_mutation_path_normalization.py +0 -0
  656. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_orchestrator_acceptance.py +0 -0
  657. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_parallelism_observability.py +0 -0
  658. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_post_compact_context.py +0 -0
  659. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_preset_commands.py +0 -0
  660. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_project_config.py +0 -0
  661. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_prompt_layering.py +0 -0
  662. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_prompt_profile_commands.py +0 -0
  663. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_python_version_requirement.py +0 -0
  664. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_pyyaml_dep.py +0 -0
  665. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_ralph_hooks.py +0 -0
  666. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_ralph_response_types.py +0 -0
  667. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_ralph_state.py +0 -0
  668. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_repair_attribution.py +0 -0
  669. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_repair_workflow_gate.py +0 -0
  670. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_repo_insight.py +0 -0
  671. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_research_eval.py +0 -0
  672. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_research_eval_compare.py +0 -0
  673. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_resequence_pending.py +0 -0
  674. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_attribution_receipts.py +0 -0
  675. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_branch_receipts.py +0 -0
  676. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_check_timeouts.py +0 -0
  677. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_context_delivery.py +0 -0
  678. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_corpus.py +0 -0
  679. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_explicit_base_legacy_override.py +0 -0
  680. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_explicit_base_stale_readers.py +0 -0
  681. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_finding_validation.py +0 -0
  682. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_pending_collection.py +0 -0
  683. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_pilot.py +0 -0
  684. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_pilot_git_cache.py +0 -0
  685. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_process_lifecycle.py +0 -0
  686. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_receipt_edge_cases.py +0 -0
  687. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_review_trusted_policy.py +0 -0
  688. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_role_coverage_receipts.py +0 -0
  689. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_runtime_privacy_ignores.py +0 -0
  690. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_schemas.py +0 -0
  691. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_scope_classifier.py +0 -0
  692. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_scrub_internal_ids.py +0 -0
  693. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_settings_deny_globs.py +0 -0
  694. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_shell_json_pipes.py +0 -0
  695. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skill_ir.py +0 -0
  696. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_consistency.py +0 -0
  697. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_aggregator.py +0 -0
  698. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_apply.py +0 -0
  699. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_cli_optimize.py +0 -0
  700. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_dispatcher_env.py +0 -0
  701. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_dispatcher_timeout.py +0 -0
  702. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_fixtures.py +0 -0
  703. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_optimizer.py +0 -0
  704. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_optimizer_isolation.py +0 -0
  705. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_proposer.py +0 -0
  706. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_runner.py +0 -0
  707. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_schema.py +0 -0
  708. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_bundle.py +0 -0
  709. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_cli.py +0 -0
  710. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_gates.py +0 -0
  711. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_judge.py +0 -0
  712. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_repeated.py +0 -0
  713. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_report.py +0 -0
  714. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_runner.py +0 -0
  715. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_trajectory_schema.py +0 -0
  716. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_skills_eval_viewer.py +0 -0
  717. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_slice5b_leak_guards.py +0 -0
  718. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_sofa_client.py +0 -0
  719. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_sofa_search.py +0 -0
  720. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_static_analysis_bash.py +0 -0
  721. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_statusline.py +0 -0
  722. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_template_render.py +0 -0
  723. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_token_budget.py +0 -0
  724. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_tool_output_offload.py +0 -0
  725. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_unborn_branch_scope.py +0 -0
  726. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_update_install.py +0 -0
  727. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_update_state.py +0 -0
  728. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_update_versions.py +0 -0
  729. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_vacuous_test_check.py +0 -0
  730. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_validate_dependencies.py +0 -0
  731. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_validate_spec_citations.py +0 -0
  732. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_verification_recorder.py +0 -0
  733. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_wave_abort_preservation.py +0 -0
  734. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_wave_eval_harness.py +0 -0
  735. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_wave_fixtures.py +0 -0
  736. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_wave_parallel_harness.py +0 -0
  737. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_wayfind_install.py +0 -0
  738. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_wayfind_research.py +0 -0
  739. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_wayfind_runner.py +0 -0
  740. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_workflow_context_injector.py +0 -0
  741. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_workflow_finalizer.py +0 -0
  742. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_workflow_gate.py +0 -0
  743. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_workflow_logger.py +0 -0
  744. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_workflow_state.py +0 -0
  745. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_worktree_commit_hooks.py +0 -0
  746. {mapify_cli-3.35.0 → mapify_cli-3.35.2}/tests/test_worktree_isolation.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: mapify-cli
3
- Version: 3.35.0
3
+ Version: 3.35.2
4
4
  Summary: MAP Framework installer - Modular Agentic Planner for Claude Code
5
5
  Project-URL: Homepage, https://github.com/azalio/map-framework
6
6
  Project-URL: Repository, https://github.com/azalio/map-framework.git
@@ -26,6 +26,7 @@ Requires-Dist: pytest-asyncio>=0.26.0; extra == 'dev'
26
26
  Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
27
27
  Requires-Dist: pytest-mock>=3.10.0; extra == 'dev'
28
28
  Requires-Dist: pytest-timeout>=2.1.0; extra == 'dev'
29
+ Requires-Dist: pytest-xdist>=3.5.0; extra == 'dev'
29
30
  Requires-Dist: pytest>=7.0.0; extra == 'dev'
30
31
  Requires-Dist: pyyaml>=6.0.0; extra == 'dev'
31
32
  Requires-Dist: ruff>=0.1.0; extra == 'dev'
@@ -39,6 +40,7 @@ Requires-Dist: pytest-asyncio>=0.26.0; extra == 'test'
39
40
  Requires-Dist: pytest-cov>=4.0.0; extra == 'test'
40
41
  Requires-Dist: pytest-mock>=3.10.0; extra == 'test'
41
42
  Requires-Dist: pytest-timeout>=2.1.0; extra == 'test'
43
+ Requires-Dist: pytest-xdist>=3.5.0; extra == 'test'
42
44
  Requires-Dist: pytest>=7.0.0; extra == 'test'
43
45
  Requires-Dist: pyyaml>=6.0.0; extra == 'test'
44
46
  Description-Content-Type: text/markdown
@@ -236,7 +238,7 @@ The DevOpsConf 2026 case study applies this process to a production Kubernetes P
236
238
 
237
239
  For stacked PRs, use `/map-review --base-ref runtime` (Codex: `$map-review --base-ref runtime`) to review only the child branch's changes against its parent's merge-base, including dirty work. Trusted review policy still comes from the default branch.
238
240
 
239
- Large `/map-review` bundles are delivered in bounded portions by the parent to the same reviewer. The full admitted evidence remains available within the 512 KiB message limit, including for Codex reviewers without shell or MCP access; missing or stale context keeps the review incomplete. Durable delivery acknowledgments and a post-delivery finalization token prevent premature final captures.
241
+ `/map-review` requires coverage of changed paths against the selected base, including local edits. Unchanged repository files remain optional, snapshot-bound dependency context. Codex `$map-review` uses a runner-owned app-server connection to deliver evidence directly to independent readers; the parent no longer copies every chunk. Interrupted collection resumes its saved threads and offsets. Runtime host probes, intact delivery acknowledgments and post-delivery finalization tokens are required before a Codex review can complete; the legacy native reader remains unverified.
240
242
 
241
243
  [Detailed usage and options →](docs/USAGE.md)
242
244
 
@@ -191,7 +191,7 @@ The DevOpsConf 2026 case study applies this process to a production Kubernetes P
191
191
 
192
192
  For stacked PRs, use `/map-review --base-ref runtime` (Codex: `$map-review --base-ref runtime`) to review only the child branch's changes against its parent's merge-base, including dirty work. Trusted review policy still comes from the default branch.
193
193
 
194
- Large `/map-review` bundles are delivered in bounded portions by the parent to the same reviewer. The full admitted evidence remains available within the 512 KiB message limit, including for Codex reviewers without shell or MCP access; missing or stale context keeps the review incomplete. Durable delivery acknowledgments and a post-delivery finalization token prevent premature final captures.
194
+ `/map-review` requires coverage of changed paths against the selected base, including local edits. Unchanged repository files remain optional, snapshot-bound dependency context. Codex `$map-review` uses a runner-owned app-server connection to deliver evidence directly to independent readers; the parent no longer copies every chunk. Interrupted collection resumes its saved threads and offsets. Runtime host probes, intact delivery acknowledgments and post-delivery finalization tokens are required before a Codex review can complete; the legacy native reader remains unverified.
195
195
 
196
196
  [Detailed usage and options →](docs/USAGE.md)
197
197
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mapify-cli"
3
- version = "3.35.0"
3
+ version = "3.35.2"
4
4
  description = "MAP Framework installer - Modular Agentic Planner for Claude Code"
5
5
  authors = [{ name = "MAP Framework Contributors" }]
6
6
  readme = "README.md"
@@ -29,6 +29,7 @@ test = [
29
29
  "pytest-cov>=4.0.0",
30
30
  "pytest-mock>=3.10.0",
31
31
  "pytest-timeout>=2.1.0",
32
+ "pytest-xdist>=3.5.0",
32
33
  "pyyaml>=6.0.0",
33
34
  "hypothesis>=6.0.0",
34
35
  "jsonschema>=4.0.0",
@@ -39,6 +40,7 @@ dev = [
39
40
  "pytest-cov>=4.0.0",
40
41
  "pytest-mock>=3.10.0",
41
42
  "pytest-timeout>=2.1.0",
43
+ "pytest-xdist>=3.5.0",
42
44
  "pyyaml>=6.0.0",
43
45
  "hypothesis>=6.0.0",
44
46
  "jsonschema>=4.0.0",
@@ -114,6 +116,8 @@ exclude = [
114
116
  # that otherwise ignores .venv and spuriously reports unresolved imports).
115
117
  venvPath = "."
116
118
  venv = ".venv"
119
+ # Installed runtime scripts import their siblings when invoked directly.
120
+ extraPaths = ["src/mapify_cli/templates/map/scripts"]
117
121
  exclude = [
118
122
  "**/node_modules",
119
123
  "**/__pycache__",
@@ -23,7 +23,7 @@ Or install globally:
23
23
  mapify check
24
24
  """
25
25
 
26
- __version__ = "3.35.0"
26
+ __version__ = "3.35.2"
27
27
 
28
28
  # MUST stay the first import: it turns "this interpreter is older than 3.11" into
29
29
  # a message that says so, instead of the ImportError raised by `from datetime
@@ -1426,6 +1426,14 @@ REVIEW_BUNDLE_SCHEMA = {
1426
1426
  "files": {"type": "array", "items": {"type": "object"}},
1427
1427
  }, "required": ["status", "files"], "additionalProperties": True,
1428
1428
  },
1429
+ "context_artifacts": {
1430
+ "type": "object", "additionalProperties": {
1431
+ "type": "array", "items": {
1432
+ "type": "object", "properties": {"path": {"type": "string"}, "content": {"type": "string"}},
1433
+ "required": ["path", "content"], "additionalProperties": False,
1434
+ },
1435
+ },
1436
+ },
1429
1437
  "generated_at": {"type": "string"},
1430
1438
  "artifacts": {
1431
1439
  "type": "object",
@@ -3,6 +3,9 @@ description = "Shell-free MAP reviewer using runner-supplied source evidence"
3
3
  sandbox_mode = "read-only"
4
4
 
5
5
  developer_instructions = """
6
+ Dispatch status: optional legacy native reader; unverified and unable to approve.
7
+ The supported /map-review path uses codex_review_runner.py environment-free threads.
8
+
6
9
  You are an independent reviewer, never an executor or editor. Follow the role,
7
10
  quality rubric, evidence requirements and output schema in the generated prompt
8
11
  exactly: Monitor correctness/security/testing, Predictor integration/reachability,
@@ -72,7 +72,7 @@ python3 .map/scripts/map_step_runner.py record_auto_phase "<phase>" "<status>" \
72
72
  --reason "<why this status>"
73
73
  ```
74
74
 
75
- `<phase>` is the workflow name being entered/exited (`map-plan`, `map-efficient`, `map-check`, or `map-review`). `<status>` follows the phase's own vocabulary -- use `completed` on a clean phase close and `aborted`/`failed` on a phase you cannot recover; anything else leaves the chain `in_progress`. Pass every hold id that `auto_decide_holds` auto-approved for this phase in `--evidence-refs`, so the approval is recorded twice: once in the hold's own audit note, once in the phase ledger.
75
+ `<phase>` is the workflow name being entered/exited (`map-plan`, `map-efficient`, `map-check`, or `map-review`). `<status>` follows the phase's own vocabulary -- use `completed` on a clean phase close and `aborted`/`failed` on a phase you cannot recover; anything else leaves the chain `in_progress`. Phase completion and route completion are separate: a `completed` phase closes the chain only when it is the last phase of the selected route -- `map-review` for the multi-phase `map-plan` and `map-efficient` routes, or the route's only phase for the single-phase `map-resume`, `map-check`, and `map-fast` routes. Any earlier `completed` leaves the chain `in_progress` so the next phase is accepted. Pass every hold id that `auto_decide_holds` auto-approved for this phase in `--evidence-refs`, so the approval is recorded twice: once in the hold's own audit note, once in the phase ledger.
76
76
 
77
77
  **At most one re-entry per phase (HC-2):** `record_auto_phase` mechanically enforces this -- the first record of a phase name is `attempt: 1`, a re-entry is `attempt: 2`, and a third call for the SAME phase name is refused and force-aborts the chain (`chain_status: "aborted"`). Before spending the single permitted re-entry, inspect ground truth -- `git status`/`git diff` and the phase's own `step_state.json` (or equivalent phase artifacts, test output, Monitor verdict) -- to confirm the phase genuinely needs a fresh attempt rather than a partial success being misread as a failure. A second failure of the same phase means STOP and hand off to `$map-resume` -- never attempt a third call for that phase. A chain already `chain_status: "aborted"` or `"blocked"` refuses every further `record_auto_phase` call regardless of phase name; a new `route_task` call is the ONLY legitimate way to continue.
78
78
 
@@ -84,8 +84,8 @@ Once routed, drive the selected chain by invoking the existing slash workflows e
84
84
  route_task -> [map-plan] -> [map-efficient] -> [map-check] -> [map-review]
85
85
  ```
86
86
 
87
- - `map-resume`, `map-check`, and `map-fast` routes are single-phase: run the one workflow, record its result with `record_auto_phase`, and finish.
88
- - `map-plan` and `map-efficient` routes continue the chain: `map-plan` produces the task plan that `map-efficient` consumes, `map-efficient` implements it, and the chain then continues to `map-check` and `map-review` to close the loop.
87
+ - `map-resume`, `map-check`, and `map-fast` routes are single-phase: run the one workflow, record its result with `record_auto_phase`, and finish -- the route's only phase closes the chain.
88
+ - `map-plan` and `map-efficient` routes continue the chain: `map-plan` produces the task plan that `map-efficient` consumes, `map-efficient` implements it, and the chain then continues to `map-check` and `map-review` to close the loop. The route stays `chain_status: in_progress` after each intermediate phase completes and closes only when `map-review` completes.
89
89
  - Invoke each phase by reading and following its own `SKILL.md` in full, exactly as if the user had typed the corresponding slash command -- do not summarize, skip, or reimplement its internal steps. `$map-auto` never shells out to a separate Claude process, a new Python execution engine, or any other new phase-driving mechanism to do this -- phases are driven ONLY by invoking the existing slash workflows above and the three runner subcommands from Steps 1-3.
90
90
  - A `valid=false` Monitor verdict INSIDE a phase is that phase's own hard stop: its owning workflow's existing retry/escalation rules apply unchanged. `$map-auto` never overrides, suppresses, or re-runs past a Monitor rejection on the phase's behalf -- a phase that cannot get past Monitor is a failed phase for the purposes of Step 3's re-entry bound.
91
91
  - The autopilot run ends at a committed feature branch. `$map-auto` never opens a pull request, never merges, and never polls CI -- report the committed branch, the phases recorded, and stop.
@@ -15,7 +15,7 @@ python3 .map/scripts/map_step_runner.py record_auto_phase <phase> <status> [--br
15
15
 
16
16
  - `route_task <task>` -- `<task>` is the free-text task description (quote it). `--branch` defaults to the current branch. `--dry-run` recommends a route without marking the chain `in_progress` (see Dry-run usage below).
17
17
  - `auto_decide_holds` -- no positional arguments; only `--branch` (defaults to current branch).
18
- - `record_auto_phase <phase> <status>` -- `<phase>` is the workflow name (`map-plan`, `map-efficient`, `map-check`, `map-review`); `<status>` is the phase's own outcome word (`completed`, `failed`, `aborted`, or any other phase-specific status, which leaves `chain_status` at `in_progress`). `--evidence-refs` takes a comma-separated list of ids (auto-approved hold ids from the surrounding `auto_decide_holds` calls); `--reason` is a free-text note stored on the ledger entry.
18
+ - `record_auto_phase <phase> <status>` -- `<phase>` is the workflow name (`map-plan`, `map-efficient`, `map-check`, `map-review`); `<status>` is the phase's own outcome word (`completed`, `failed`, `aborted`, or any other phase-specific status, which leaves `chain_status` at `in_progress`). A `completed` status closes the chain (`chain_status: "completed"`) only on the LAST phase of the selected route -- `map-review` for multi-phase `map-plan`/`map-efficient` routes, or the single phase of `map-resume`/`map-check`/`map-fast`; a `completed` intermediate phase keeps the chain `in_progress`. `--evidence-refs` takes a comma-separated list of ids (auto-approved hold ids from the surrounding `auto_decide_holds` calls); `--reason` is a free-text note stored on the ledger entry.
19
19
 
20
20
  ## Chain Walkthrough Example
21
21
 
@@ -35,10 +35,12 @@ $ python3 .map/scripts/map_step_runner.py auto_decide_holds
35
35
 
36
36
  $ python3 .map/scripts/map_step_runner.py record_auto_phase "map-efficient" "completed" \
37
37
  --evidence-refs "hold-1" --reason "all subtasks closed, make check green"
38
- {"status": "success", "chain_status": "completed", "phase": "map-efficient", "attempt": 1, ...}
38
+ {"status": "success", "chain_status": "in_progress", "phase": "map-efficient", "attempt": 1, ...}
39
39
 
40
- # -- chain then continues to map-check, then map-review, each following the same
41
- # poll -> drive -> poll -> record loop, until the last phase records "completed" --
40
+ # -- map-efficient is not the last phase of this route: the chain stays
41
+ # in_progress and continues to map-check, then map-review, each following the
42
+ # same poll -> drive -> poll -> record loop. Only map-review completing closes
43
+ # the route (chain_status: "completed") --
42
44
  ```
43
45
 
44
46
  The run ends there: a committed feature branch, `phases[]` in `auto-route.json` holding one entry per phase attempt, and no PR/merge/CI step of any kind.
@@ -71,7 +71,7 @@ Execute all 12 gates. Read the full gate scripts in [release-reference.md § Pha
71
71
  **Gate summary (full commands in reference):**
72
72
  - **Gates 1–4:** `make check` — tests, ruff, mypy, pyright, rendered-template parity
73
73
  - **Gates 5–6:** Build + twine check
74
- - **Gate 7:** Security audit (`pip-audit`)
74
+ - **Gate 7:** Security audit of the project's resolved requirements (`uv export` + `pip-audit -r`)
75
75
  - **Gates 8–10:** Git state — main branch, clean working directory, up-to-date with origin
76
76
  - **Gate 11:** CI run for `git merge-base HEAD origin/main` must have `conclusion: "success"`; unpushed commits may touch only release metadata
77
77
  - **Gate 12:** CHANGELOG.md completeness (Unreleased section exists and has content; commit/entry gap check)
@@ -35,11 +35,20 @@ uv run --with twine twine check dist/*
35
35
  ### Gate 7: Security Audit
36
36
 
37
37
  ```bash
38
- pip install pip-audit
39
- pip-audit
38
+ set -euo pipefail
39
+ # Audit the project's resolved dependency set, not the runner interpreter.
40
+ REQS_FILE=$(mktemp "${TMPDIR:-/tmp}/mapify-release-reqs.XXXXXX")
41
+ trap 'rm -f "$REQS_FILE"' EXIT
42
+ uv export --all-extras --all-groups --no-hashes --no-emit-project \
43
+ --format requirements-txt > "$REQS_FILE"
44
+ # --no-deps audits exactly the exported pins; --disable-pip stops pip from
45
+ # resolving or mutating the runner environment.
46
+ uvx pip-audit -r "$REQS_FILE" --disable-pip --no-deps
40
47
  ```
41
48
 
42
49
  **Expected Results:**
50
+ - ✅ `uv export` resolves the project's dependencies (all extras and groups)
51
+ - ✅ `pip-audit` audits the exported pinned requirements, not the runner environment
43
52
  - ✅ No known security vulnerabilities in dependencies
44
53
 
45
54
  **If vulnerabilities found:** Assess severity; update dependencies if critical.
@@ -25,7 +25,7 @@ parallel_tool_policy: single_review_fanout
25
25
  ```
26
26
 
27
27
  - Use deeper reasoning for verdicts, risk ranking, section tradeoffs, and contradictory reviewer evidence.
28
- - Use exactly one parallel reviewer fan-out after bundle preparation: Monitor, Predictor, Evaluator, the two role reviewers, and the optional complexity lens may run together because they inspect the same review input independently.
28
+ - Use one runner invocation after bundle preparation; it collects independent reviewer threads in order and owns recovery. Do not launch an additional native fan-out.
29
29
  - Wait for all reviewer agents before section presentation. Do not parallelize interactive decisions, ordering comparisons that share state, or review-bundle writes.
30
30
 
31
31
  ## Flags
@@ -52,7 +52,9 @@ parallel_tool_policy: single_review_fanout
52
52
  7. **Monitor `valid=false` requires verification, not immediate publication** — Step A.3 verifies evidence and bug-introduced-here BEFORE Phase B. Bare claims become `needs_investigation`, not published issues.
53
53
  8. Present options neutrally as A/B/C. Append `(Recommended)` after the option label, not by position.
54
54
 
55
- **Codex — supported review states:** run `$map-review` (normal, `--adversarial`, `--cross-ai`) with no `.map/<branch>/step_state.json`, in `COMPLETE`/`WORKFLOW_COMPLETE`, or in `MONITOR` while `MAP_MONITOR_HOTFIX` is not `0`. In other non-editing phases (e.g. `DECOMPOSE`, `PREDICTOR`, or `MONITOR` with `MAP_MONITOR_HOTFIX=0`) the Codex workflow-gate hook denies shell writes to `$`-expanded targets (precheck log, `review-mode.json`, reviewer envelopes, adversarial files). On such a deny, archive the stale workflow (or finish it) or rerun `$map-review` from a supported state — do not work around the hook.
55
+ **Codex collection:** the supported driver owns captures and continuation; the skill
56
+ has no shell-expanded capture targets. Normal workflow-state and snapshot gates
57
+ remain authoritative. Do not bypass a host or workflow denial.
56
58
 
57
59
  ## Review Preferences (Customize per project)
58
60
 
@@ -337,129 +339,47 @@ if [ "$DETACHED_FLAG" = "true" ]; then
337
339
  fi
338
340
  ```
339
341
 
340
- If `DETACHED_STATUS` is `success`, tell reviewer agents to read source files from `$DETACHED_PATH` read-only. If status is `unavailable` or `error`, announce `$DETACHED_REASON` and continue in place. Do not mutate the source branch.
342
+ If `DETACHED_STATUS` is `success`, retain the detached tree for operator inspection; the driver still serves only the admitted immutable resources. If status is `unavailable` or `error`, announce `$DETACHED_REASON` and continue in place. Do not mutate the source branch.
341
343
 
342
344
  ### Step A.1d: Prepare compare-mode ordering (optional, `--compare-orderings` only)
343
345
 
344
346
  When compare mode is active, run two review collections with `ordering_label='default'` and `ordering_label='reverse'`, then call `compare-review-runs` and `record-review-ordering` to stage the drift summary. See [review-reference.md](review-reference.md#compare-orderings) for the detailed loop.
345
347
 
346
- On Codex, `<n>` in `task_name` (the `map_review_<role>_<n>` counter from Step A.2) keeps incrementing across both collections, so the second (`reverse`) collection dispatches with fresh names.
348
+ On Codex, one driver invocation collects both orderings with separate persisted native threads. Rerunning it resumes unfinished threads and reuses intact completed captures.
347
349
 
348
- ### Step A.2: Launch all parallel calls
349
- Before launching agents, build the reviewer prompts with `build_review_prompts`. Evidence is NOT truncated. The admitted immutable bundle backs a compact initial prompt and parent-served resources; large original prompts, full file inventory and permitted base/current sources arrive in chunks through Step A.2a. `MAP_REVIEW_PROMPT_BUDGET_TOKENS` is informational and clips nothing. The 512 KiB limit still applies to each initial prompt and serialized context response. On a builder error, stop dispatch and report the reason; never bypass admission or remove evidence to fit.
350
+ ### Step A.2: Collect reviewer reports
350
351
 
351
- ```bash
352
- REVIEW_PROMPTS_JSON=$(python3 .map/scripts/map_step_runner.py build_review_prompts \
353
- --review-preferences "[paste Review Preferences section above]")
354
- printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; d=json.load(sys.stdin); sys.exit(0 if d.get("status") == "success" else json.dumps(d, indent=2))' || exit 1
355
- MONITOR_PROMPT=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; print(json.load(sys.stdin)["prompts"]["monitor"]["prompt"])')
356
- PREDICTOR_PROMPT=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; print(json.load(sys.stdin)["prompts"]["predictor"]["prompt"])')
357
- EVALUATOR_PROMPT=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; print(json.load(sys.stdin)["prompts"]["evaluator"]["prompt"])')
358
- COMPLEXITY_LENS_PROMPT=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; data=json.load(sys.stdin); print(data.get("prompts",{}).get("complexity_lens",{}).get("prompt", ""))')
359
- COMPLEXITY_LENS_ENABLED=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; data=json.load(sys.stdin); print("true" if data.get("prompts",{}).get("complexity_lens") else "false")')
360
- USER_EXPERIENCE_PROMPT=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; print(json.load(sys.stdin)["prompts"]["user_experience"]["prompt"])')
361
- SECURITY_PROMPT=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; print(json.load(sys.stdin).get("prompts", {}).get("security", {}).get("prompt", ""))')
362
- MAINTAINER_PROMPT=$(printf '%s' "$REVIEW_PROMPTS_JSON" | python3 -c 'import json,sys; print(json.load(sys.stdin)["prompts"]["maintainer"]["prompt"])')
363
- ```
364
-
365
- Use the extracted prompt variables as the spawn_agent messages. Keep reviewer spawn calls below the bundle and prompt-builder commands.
366
-
367
- ```text
368
- spawn_agent(agent_type="review-reader", task_name="map_review_monitor_<n>", message=MONITOR_PROMPT)
369
- spawn_agent(agent_type="review-reader", task_name="map_review_predictor_<n>", message=PREDICTOR_PROMPT)
370
- spawn_agent(agent_type="review-reader", task_name="map_review_evaluator_<n>", message=EVALUATOR_PROMPT)
371
- spawn_agent(agent_type="review-reader", task_name="map_review_user_experience_<n>", message=USER_EXPERIENCE_PROMPT)
372
- spawn_agent(agent_type="review-reader", task_name="map_review_maintainer_<n>", message=MAINTAINER_PROMPT)
373
- If security is in admitted roster: spawn_agent(agent_type="review-reader", task_name="map_review_security_<n>", message=SECURITY_PROMPT)
374
- If COMPLEXITY_LENS_ENABLED=true: spawn_agent(agent_type="review-reader", task_name="map_review_complexity_lens_<n>", message=COMPLEXITY_LENS_PROMPT)
375
- ```
376
-
377
- Codex dispatch rules:
378
-
379
- - `<n>` increments on every dispatch in the run (including the Step A.2b truncation retry and the second `--compare-orderings` collection), so every call gets a unique `task_name`.
380
- - Each call sends its generated prompt as `message`, plus a reminder that the reviewer is read-only and may return intermediate `context_request` JSON before its required final output.
381
- - Wait for all dispatched reviewers and map each final JSON back to its role variable (`MONITOR_OUTPUT`, `PREDICTOR_OUTPUT`, `EVALUATOR_OUTPUT`, `USER_EXPERIENCE_OUTPUT`, `MAINTAINER_OUTPUT`, `SECURITY_OUTPUT`, and `COMPLEXITY_LENS_OUTPUT` when enabled).
382
- - If concurrency is unavailable, make the same calls sequentially.
383
- - Never replace independent review with parent-session personas.
384
- - Every reviewer uses `review-reader`; the generated role prompt supplies its complete role protocol, rubric and schema. Do not route through general-purpose or execution-capable profiles.
385
- - `capability_enforcement=unverified`: shell/delegation disabling settings and read-only sandbox are defense in depth, not runtime proof of no writes/native read-search. Continue review and finding publication from source content in the runner bundle; the result is INCOMPLETE and cannot approve. Never disable the whole Codex review or silently restore shell (#526).
386
-
387
- Role reviewers remain isolated; follow the access and attribution rules in [Parent-served context loop](review-reference.md#parent-served-context-loop-step-a2a).
388
-
389
- Reviewer prompts reference `review-bundle.json`, `review-bundle.md`, the raw diff as secondary context, and the expected output schema.
390
-
391
- When enabled (`minimality != off`), the complexity lens is advisory only. It lists over-engineering as `delete:`, `stdlib:`, `native:`, `yagni:`, or `shrink:` findings, ends with `net: -<N> lines possible.` or `Lean already. Ship.`, samples `map:simplification:` marker claims, and never feeds Actor retries or verdict gates.
392
-
393
- ### Step A.2a: Deliver requested context to the same reviewer (MANDATORY)
394
-
395
- Before final JSON validation, follow [Parent-served context loop](review-reference.md#parent-served-context-loop-step-a2a): run `serve_review_context` for every response, including retries, adversarial roles and the complexity lens. Continue the same agent for `context_response`; responses to the post-delivery finalization request proceed to Step A.2b even with missing or invalid receipts. Discard queued early finals; context requests never consume final-response retries or become captured reviews. Denied/stale context leaves collection incomplete.
396
-
397
- ### Step A.2b: Truncated-response gate (MANDATORY — post-fan-out, pre-verification)
398
-
399
- After Step A.2a identifies a final response, pipe it on stdin (a bare call returns
400
- `status:"no_input"`, not a pass):
401
- `printf '%s' "$RESPONSE" | python3 .map/scripts/map_step_runner.py detect_truncated_agent_output --agent <kind>`
402
- using the role-specific kind shown below. On truncation or missing/invalid finalization `context_receipt`: log via
403
- `log_agent_failure --agent <role> --phase post-invoke --failure-label truncated --reasons '<reasons>'`
404
- and re-invoke that reviewer ONCE using the prompt from
405
- `build_json_retry_prompt --agent <role> --errors '<reasons>'`; if still
406
- malformed, stop with CLARIFICATION_NEEDED.
407
- Include the original generated prompt and context protocol with retry instructions; process intermediate requests through Step A.2a.
408
-
409
- On Codex, the re-invocation is a new `spawn_agent` call: `<n>` keeps incrementing, so the retry gets a fresh `task_name`.
410
-
411
- Role → `--agent` kind for the truncation check:
412
- - monitor reviewer → `--agent review-monitor` (enforces the full review schema:
413
- evidence/valid/summary/verdict/issues/passed_checks/failed_checks)
414
- - predictor reviewer → `--agent predictor`
415
- - evaluator reviewer → `--agent evaluator`
416
- - role reviewers → `--agent user_experience` / `--agent maintainer` / `--agent security`
417
-
418
- The optional complexity lens returns plain text, not JSON. Do not run the JSON truncation gate on it; if it is empty or visibly cut off, rerun only that lens prompt once.
419
-
420
- ### Step A.2c: Capture reviewer envelopes (MANDATORY — the ledger reads these)
421
-
422
- Once a reviewer clears the truncation gate, write its JSON envelope verbatim to
423
- `.map/<branch>/review-agent-<role>.json` (`monitor`, `predictor`, `evaluator`,
424
- `user_experience`, `maintainer`; include `security` only when it is in the
425
- admitted roster, plus `adversarial` in adversarial/compare-orderings mode). The verdict ledger is
426
- computed from these files — a role whose file is missing is recorded as an
427
- unobserved review, not as a clean one.
352
+ Use the runner-owned Codex app-server transport. Do not launch native review-reader
353
+ subagents or relay context through the main conversation. For adversarial mode,
354
+ use the corresponding command in adversarial-reference.md instead of this section.
428
355
 
429
356
  ```bash
430
- BRANCH=$(python3 .map/scripts/map_utils.py branch)
431
- BRANCH_DIR=".map/$BRANCH"
432
- # For compare-orderings set ORDERING_LABEL=default or reverse in this call.
433
- # Preserve both collections; do not call begin_review_run between them.
434
- if [ -n "${ORDERING_LABEL:-}" ]; then BRANCH_DIR="$BRANCH_DIR/review-collections/$ORDERING_LABEL"; fi
435
- mkdir -p "$BRANCH_DIR"
436
-
437
- REVIEW_ROUND_ID="${REVIEW_ROUND_ID:-$(python3 -c 'import json,sys; print(json.load(open(sys.argv[1]))["round_id"])' ".map/$BRANCH/review-mode.json")}"
438
- python3 .map/scripts/map_step_runner.py capture_review_output \
439
- --reviewer monitor --round-id "$REVIEW_ROUND_ID" --ordering "${ORDERING_LABEL:-}" <<'MONITOR_EOF'
440
- <paste the Monitor JSON envelope verbatim>
441
- MONITOR_EOF
357
+ python3 .map/scripts/codex_review_runner.py --review-preferences "[paste Review Preferences section above]"
442
358
  ```
443
359
 
444
- The quoted heredoc marker (`<<'MONITOR_EOF'`, quotes included) is what stops the
445
- shell expanding anything inside the payload. Repeat for `predictor`,
446
- `evaluator`, `user_experience` and `maintainer`; repeat for `security` only when it is in the admitted roster. In adversarial or
447
- compare-orderings mode write the complete tagged aggregate to
448
- `review-agent-adversarial.json` instead, including `ledger_findings`,
449
- `reviewer_status` and `parse_errors`; an empty findings array alone cannot prove review.
450
-
451
- Every reviewer envelope includes
452
- `receipt={covered_files:[],skipped_files:[],denied_access:[],check_evidence:[check_id]}`.
453
- Coverage means actual source paths inspected (including supplied source content),
454
- not acceptance citations; reading claims remain `self_reported`. Check references
455
- must be current runner-issued IDs, never claimed executions. Preserve each raw
456
- reviewer receipt in the adversarial aggregate's `reviewer_status[role].raw`;
457
- a top-level aggregate receipt cannot substitute for individual coverage.
458
- Reviewers may submit structured `resolved_findings` using the full evidence and
459
- sibling-remediation contract in review-reference.md § Evidence validation in the admitted round.
460
- Only the originating reviewer may request closure; free text or omission is not
461
- resolution. Fresh checked evidence is required, not a tool-witnessed execution claim.
462
- Preserve file/location/failure-scenario evidence so distinct defects stay distinct.
360
+ Keep this command running and poll its process with the host's normal process tools;
361
+ progress names the current role. A tool timeout is not a completed review. If the
362
+ process was interrupted, rerun the command under the same admitted round and omit
363
+ `--review-preferences`: the exact preferences are saved on first collection, alongside
364
+ native thread IDs, pending chunks and acknowledged offsets. Explicitly different
365
+ preferences are rejected; omission reuses the saved text. A lost
366
+ thread or stale snapshot is an explicit error; never invent ACKs or replace its
367
+ session silently. Do not call begin_review_run for another round to hide a failure.
368
+
369
+ The driver builds compact role prompts, serves immutable resources through one
370
+ read-only dynamic tool, checks intact Code Mode output before ACK, resizes truncated
371
+ chunks, validates final envelopes and captures them in the usual ledger paths.
372
+ Each role has an independent environment-free Codex thread. A runtime probe checks
373
+ actual tool inventory, successful source delivery and a denied canary write before
374
+ any repository evidence is supplied. COMPLETE requires every admitted reader's
375
+ host witness as well as scope, snapshot/policy, checks and finalization receipts.
376
+ The legacy native profile remains `capability_enforcement=unverified`: findings
377
+ remain publishable, but that route stays INCOMPLETE and cannot approve. A failed
378
+ probe never becomes verified by configuration, version text or model assertion.
379
+
380
+ Reading claims in `receipt={covered_files:[],skipped_files:[],denied_access:[],check_evidence:[]}`
381
+ remain self_reported. The optional complexity lens stays advisory. On driver success,
382
+ continue at Step A.3 using captured artifacts; do not dispatch a second reviewer set.
463
383
 
464
384
  ### Step A.3: Verification gate (MANDATORY before any presentation)
465
385
 
@@ -531,17 +451,11 @@ When `--adversarial` is set (with `--cross-ai`: present cross-AI first, then thi
531
451
  ### Quick reference
532
452
 
533
453
  ```text
534
- 1. Build prompts: python3 .map/scripts/map_step_runner.py build_adversarial_review_prompts --reviewers <comma-separated admitted roster>
535
- 2. Fan-out: spawn_agent(agent_type="review-reader", task_name="map_review_<role>_<n>", message=<ROLE>_PROMPT)
536
- for every role in the admitted roster — parallel, then wait for all (strict overrides --quick)
537
- 3. Validate: Each must return valid JSON per adversarial finding schema; retry ONCE on failure
538
- 4. Aggregate: python3 .map/scripts/map_step_runner.py aggregate_adversarial_findings --blind <path> [--edge-case <path> when admitted] --acceptance <path> --user-experience <path> --maintainer <path> [--security <path> when admitted]
539
- 5. Present: Unified report: CRITICAL/IMPORTANT/MINOR, convergence section, all-clear statements (--show-raw-findings for debug)
540
- 6. Feed ledger: persist the complete tagged aggregate to "$BRANCH_DIR/review-agent-adversarial.json"
541
- including ledger_findings, reviewer_status and parse_errors
542
- 7. Skip to: Final Verdict → Handoff Artifacts; do NOT run normal 4-section walkthrough
543
- The verdict is computed by the ledger from those findings — this phase
544
- does not assign one.
454
+ 1. Collect: python3 .map/scripts/codex_review_runner.py
455
+ Builds prompts, validates reports and captures the aggregate for the admitted roster.
456
+ On interruption rerun the same command in the same admitted round.
457
+ 2. Present: Read the captured aggregate; show findings, convergence and all-clear statements.
458
+ 3. Continue: Final Verdict → Handoff Artifacts. The ledger computes the verdict.
545
459
  ```
546
460
 
547
461
  ## Phase B: Interactive Presentation (4 Sections) — NORMAL MODE ONLY
@@ -0,0 +1,110 @@
1
+ # Adversarial Review Reference
2
+
3
+ Detailed workflow for `map-review --adversarial`. See [SKILL.md](SKILL.md) for context and integration points.
4
+
5
+ ## Overview
6
+
7
+ Five reviewers run in parallel, each with only its permitted inputs:
8
+
9
+ | Reviewer | Context | Finds |
10
+ |----------|---------|-------|
11
+ | **Blind Hunter** | diff only | Typos, dead code, logic errors visible in isolation |
12
+ | **Edge Case Hunter** | diff + repo read access | Null handling, boundary conditions, error paths, codebase consistency |
13
+ | **Acceptance Auditor** | diff + spec + plan + artifacts | Missed requirements, spec violations, AC gaps, extra/unplanned work |
14
+ | **User (`user_experience`)** | diff + repo read access | Regressions in the already-shipped path: extra mandatory steps, confusable flags, an explicit value silently overridden |
15
+ | **Maintainer (`maintainer`)** | diff + repo read access | Branch-scoped litter in comments, implementation leaking into user-facing text, undiagnosable errors, copy-paste, split sources of truth, version predicates by number, embedded foreign-language code, settings carried through layers that only pass them on, names that promise more than the body does, mechanisms named after their first application, files placed against the local convention |
16
+
17
+ With `--quick`: skip Edge Case Hunter (Blind + Acceptance + both roles).
18
+
19
+ The two role reviewers answer to the five-part output contract (`problem`,
20
+ `current_code`, `proposed_code`, `why_better`, `cost`). A finding that cannot
21
+ fill all five is dropped by `aggregate_adversarial_findings` into
22
+ `contract_incomplete` — reported, never counted.
23
+
24
+ ## Steps B.adversarial.0–3: Collect through the Codex runner
25
+
26
+ After admission and immutable bundle creation, run:
27
+
28
+ ```bash
29
+ python3 .map/scripts/codex_review_runner.py
30
+ ```
31
+
32
+ The driver reads the admitted roster, creates independent environment-free threads,
33
+ probes each host boundary, serves only each role's permitted immutable context,
34
+ validates individual reports and captures the tagged adversarial aggregate. Blind
35
+ remains diff-only. Compare-orderings uses separate thread/session/receipt sets.
36
+ Poll the running command; on interruption rerun it under the same admitted round.
37
+ Do not spawn native readers, copy chunks through the parent, or promote an unverified
38
+ probe. See SKILL.md Step A.2 for the capability and recovery contract. Read the
39
+ captured `review-agent-adversarial.json` (or both review-collections in compare mode)
40
+ for presentation, then proceed below.
41
+
42
+ ## Step B.adversarial.4: Present unified adversarial report
43
+
44
+ Parse the aggregated JSON and present the report in this structure:
45
+
46
+ ```
47
+ # Adversarial Review Report
48
+
49
+ ## Summary
50
+ - Total findings: N (C CRITICAL, I IMPORTANT, M MINOR)
51
+ - Corroborated (found by 2+ reviewers): K — highest confidence
52
+ - Per-reviewer: Blind: B, Edge Case: E, Acceptance: A, User: U, Maintainer: M
53
+ - All-clear: [reviewers who reported all_clear=true]
54
+ - Dropped for an incomplete output contract: [contract_incomplete entries]
55
+
56
+ ## CRITICAL
57
+ [per finding: severity, category, file:line, failure_mode, evidence, reported_by, corroborated flag]
58
+
59
+ ## IMPORTANT
60
+ [per finding: same structure]
61
+
62
+ ## MINOR
63
+ [per finding: same structure]
64
+
65
+ ## Cross-Reviewer Convergence
66
+ [Highlight what multiple reviewers independently found — these are highest-confidence issues]
67
+
68
+ ## Reviewer All-Clear Statements
69
+ [Per reviewer who said all_clear: what they checked and why it's clean]
70
+ ```
71
+
72
+ When `--show-raw-findings` is set, also show the raw per-reviewer JSON files.
73
+
74
+ ## Step B.adversarial.5: Feed the verdict ledger
75
+
76
+ This phase does not assign a verdict. The capture block persists the complete
77
+ `adversarial_aggregate.v1` report, including `ledger_findings`, `reviewer_status`
78
+ and `parse_errors`. Closeout reads the current roster from `review-mode.json`;
79
+ `write_review_verdict_ledger --current-run` then computes
80
+ `PROCEED`/`REVISE`/`BLOCK` from the decision table in
81
+ [review-reference.md § Verdict Ledger](review-reference.md#verdict-ledger).
82
+ Corroboration raises confidence in the report; it does not change the verdict.
83
+
84
+ ## Step B.adversarial.6: Skip to Final Verdict
85
+
86
+ After presenting the adversarial report, skip the normal 4-section interactive walkthrough and go directly to Final Verdict → Handoff Artifacts.
87
+
88
+ ## Flow summary for adversarial
89
+
90
+ When `ADVERSARIAL_FLAG=true`, the workflow is:
91
+ Phase A (all steps) → Phase B: Adversarial Review → Final Verdict → Handoff Artifacts.
92
+ Do NOT run the normal Monitor/Predictor/Evaluator fan-out or the 4-section walkthrough.
93
+
94
+ ## Examples
95
+
96
+ See [review-reference.md](review-reference.md#examples) for adversarial examples.
97
+
98
+ ## Troubleshooting
99
+
100
+ ### Reviewer returns invalid JSON
101
+
102
+ Re-invoke that specific reviewer ONCE. If still invalid, record `parse_error` and continue — two valid reviewers are better than zero.
103
+
104
+ ### All reviewers fail
105
+
106
+ Stop with CLARIFICATION_NEEDED. The diff may be too large or the context too complex for adversarial review.
107
+
108
+ ### Edge Case Hunter runs out of context
109
+
110
+ Edge Case Hunter has repo read access. If the repo is very large, limit its scope by pre-computing an impact graph of files importing/imported-by the changes plus relevant tests. Defer full implementation to v2.
@@ -6,7 +6,7 @@ This file contains lower-frequency review details. Keep `SKILL.md` focused on th
6
6
 
7
7
  New gates default to shadow diagnostics: no new blockers, no reduced existing safeguards. Strict opt-in is `review: {security_gates: strict}` in `.map/config.yaml` on the pinned trusted default branch, never PR-head/local config. In strict mode admission overrides quick/lightweight or reduced explicit rosters for sensitive/unknown changes. Dispatch every admitted reviewer, including the independent `security` role, and capture its own envelope for each ordering. Normal approval and execution checks cannot replace security coverage.
8
8
 
9
- Human consent is a separate snapshot/policy/action-bound `review_consent` hold in the existing durable store. Verified human provenance is currently unavailable: host UI answers, transcripts and caller JSON do not establish it. Never call `decide_approval_hold` to discharge review consent, or reinterpret auto mode, agent votes or successful checks as consent. Report the pending hold in both modes. In strict mode stop before review-ready; do not burn additional review rounds waiting. The strict ready gate remains blocked even when legacy ledger enforcement is disabled. Shadow holds do not add blockers and must never be reported as consent. Positive human ingress remains incomplete under #523; Codex capability remains unverified under #526.
9
+ Human consent is a separate snapshot/policy/action-bound `review_consent` hold in the existing durable store. Verified human provenance is currently unavailable: host UI answers, transcripts and caller JSON do not establish it. Never call `decide_approval_hold` to discharge review consent, or reinterpret auto mode, agent votes or successful checks as consent. Report the pending hold in both modes. In strict mode stop before review-ready; do not burn additional review rounds waiting. The strict ready gate remains blocked even when legacy ledger enforcement is disabled. Shadow holds do not add blockers and must never be reported as consent. Positive human ingress remains incomplete under #523; Legacy native Codex capability remains unverified under #526; the runner-owned app-server path requires per-reader host probes.
10
10
 
11
11
  Shadow consent-store errors are reported in admission output and persisted in the review ledger when writable; they do not deny admission or ready. Never reset a corrupt hold store: existing generic hold blockers remain enforced. Strict consent-store errors still fail closed. Gate configuration is read from the pinned trusted revision independently of `REVIEW.md` content validation; invalid root/area policy cannot downgrade a strict configuration.
12
12
 
@@ -17,8 +17,21 @@ Shadow consent-store errors are reported in admission output and persisted in th
17
17
  - Tests: changed behavior, failure cases, fixtures, coverage of acceptance tags.
18
18
  - Performance: hot paths, large artifacts, prompt budgets, avoid speculative micro-optimizations.
19
19
 
20
+ ## Review Scope
21
+
22
+ Required coverage is the admitted `required_files`: changed paths against the selected base,
23
+ including staged/unstaged/untracked inputs, deletions and both rename sides. The full
24
+ `context_files` inventory remains snapshot-bound and available for dependency checks.
25
+ Unread or explicitly skipped optional context does not make review incomplete.
26
+
20
27
  ## Compare Orderings
21
28
 
29
+ For supported Codex reviews, `codex_review_runner.py` performs binding, delivery,
30
+ ACK, finalization and capture, including both compare orderings. Do not perform
31
+ these steps manually. The manual collection instructions below apply only to
32
+ Claude and the legacy unverified native-reader path. Keep the comparison/report
33
+ steps after the driver completes.
34
+
22
35
  When `--compare-orderings` is set, begin the invocation once, then collect with
23
36
  `ORDERING_LABEL=default` and `ORDERING_LABEL=reverse` set in each capture call.
24
37
  Keep envelopes in `review-collections/default/` and `review-collections/reverse/`;
@@ -238,6 +251,12 @@ decision table (`review_verdict_table.v1`) and writes:
238
251
 
239
252
  ### Parent-served context loop (Step A.2a)
240
253
 
254
+ For supported Codex reviews, `codex_review_runner.py` performs binding, delivery,
255
+ ACK, finalization and capture, including both compare orderings. Do not perform
256
+ these steps manually. The manual collection instructions below apply only to
257
+ Claude and the legacy unverified native-reader path. Keep the comparison/report
258
+ steps after the driver completes.
259
+
241
260
  The role reviewers run in the SAME fan-out but with isolated context: they see
242
261
  the diff and the bundle, never the other reviewers' output. They inspect supplied
243
262
  base/current source and changed-hunk attribution — the user role checks the old
@@ -278,7 +297,8 @@ retries, both ordering collections and the advisory complexity lens:
278
297
  For an early final response, retain no final capture: create the same request
279
298
  shape from the status's next `remaining` resource/offset and continue delivery.
280
299
  Required resources include the manifest, full original prompt (unless initially
281
- inline), inventory and every permitted source resource. Blind stays diff-only.
300
+ inline), inventory and source resources marked `required`. Unchanged sources
301
+ are optional dependency context; fetch them only when needed. Blind stays diff-only.
282
302
  2. Store the exact returned chunk JSON in a session-specific pending file under
283
303
  `.map/<branch>/review-context-delivery/<session-id>/`, then pass that JSON
284
304
  verbatim to the **same agent**: