mapify-cli 3.12.0__tar.gz → 3.12.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (407) hide show
  1. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/PKG-INFO +1 -1
  2. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/pyproject.toml +1 -1
  3. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/__init__.py +1 -1
  4. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/delivery/managed_file_copier.py +38 -38
  5. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_managed_file_copier.py +23 -13
  6. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/.claude/hooks/README.md +0 -0
  7. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/.claude/skills/README.md +0 -0
  8. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/.gitignore +0 -0
  9. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/README.md +0 -0
  10. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/_locking.py +0 -0
  11. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/cli_ui.py +0 -0
  12. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/config/__init__.py +0 -0
  13. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/config/mcp.py +0 -0
  14. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/config/project_config.py +0 -0
  15. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/config/settings.py +0 -0
  16. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/delivery/__init__.py +0 -0
  17. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/delivery/agent_generator.py +0 -0
  18. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/delivery/codex_copier.py +0 -0
  19. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/delivery/file_copier.py +0 -0
  20. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/delivery/providers.py +0 -0
  21. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/delivery/template_renderer.py +0 -0
  22. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/dependency_graph.py +0 -0
  23. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/intent_detector.py +0 -0
  24. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/memory/__init__.py +0 -0
  25. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/memory/capture.py +0 -0
  26. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/memory/digest_schema.py +0 -0
  27. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/memory/finalize.py +0 -0
  28. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/memory/recall.py +0 -0
  29. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/ralph_state.py +0 -0
  30. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/repo_insight.py +0 -0
  31. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/schemas.py +0 -0
  32. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skill_ir.py +0 -0
  33. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/__init__.py +0 -0
  34. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/aggregator.py +0 -0
  35. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/apply_patcher.py +0 -0
  36. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/assertions.py +0 -0
  37. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/description_optimizer.py +0 -0
  38. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/dispatcher.py +0 -0
  39. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/eval_schema.py +0 -0
  40. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/proposer.py +0 -0
  41. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/runner.py +0 -0
  42. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/skills_eval/viewer.py +0 -0
  43. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/.gitignore +0 -0
  44. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/CLAUDE.md +0 -0
  45. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/actor.md +0 -0
  46. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/debate-arbiter.md +0 -0
  47. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/documentation-reviewer.md +0 -0
  48. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/evaluator.md +0 -0
  49. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/final-verifier.md +0 -0
  50. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/monitor.md +0 -0
  51. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/predictor.md +0 -0
  52. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/reflector.md +0 -0
  53. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/research-agent.md +0 -0
  54. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/synthesizer.md +0 -0
  55. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/agents/task-decomposer.md +0 -0
  56. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/AGENTS.md +0 -0
  57. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/agents/decomposer.toml +0 -0
  58. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/agents/monitor.toml +0 -0
  59. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/agents/researcher.toml +0 -0
  60. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/config.toml +0 -0
  61. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/hooks/workflow-gate.py +0 -0
  62. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/hooks.json +0 -0
  63. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/skills/map-check/SKILL.md +0 -0
  64. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/skills/map-efficient/SKILL.md +0 -0
  65. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/skills/map-efficient/efficient-reference.md +0 -0
  66. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/skills/map-explain/SKILL.md +0 -0
  67. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/skills/map-fast/SKILL.md +0 -0
  68. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/codex/skills/map-plan/SKILL.md +0 -0
  69. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/README.md +0 -0
  70. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/context-meter.py +0 -0
  71. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/detect-clarification-triggers.py +0 -0
  72. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/end-of-turn.sh +0 -0
  73. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/map-memory-capture.py +0 -0
  74. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/map-memory-endmark.py +0 -0
  75. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/map-memory-finalize.py +0 -0
  76. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/map-memory-recall.py +0 -0
  77. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/map-token-meter.py +0 -0
  78. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/post-compact-context.py +0 -0
  79. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/pre-compact-save-transcript.py +0 -0
  80. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/ralph-context-pruner.py +0 -0
  81. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/ralph-iteration-logger.py +0 -0
  82. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/safety-guardrails.py +0 -0
  83. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/workflow-context-injector.py +0 -0
  84. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/hooks/workflow-gate.py +0 -0
  85. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/scripts/diagnostics.py +0 -0
  86. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/scripts/map_orchestrator.py +0 -0
  87. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/scripts/map_step_runner.py +0 -0
  88. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/scripts/map_utils.py +0 -0
  89. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/scripts/sofa_client.py +0 -0
  90. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/scripts/validate_spec_citations.py +0 -0
  91. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/static-analysis/analyze.sh +0 -0
  92. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/static-analysis/handlers/common.sh +0 -0
  93. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/static-analysis/handlers/go.sh +0 -0
  94. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/static-analysis/handlers/python.sh +0 -0
  95. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/static-analysis/handlers/rust.sh +0 -0
  96. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/map/static-analysis/handlers/typescript.sh +0 -0
  97. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/ralph-loop-config.json +0 -0
  98. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/bash-guidelines.md +0 -0
  99. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/decomposition-examples.md +0 -0
  100. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/escalation-matrix.md +0 -0
  101. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/hook-patterns.md +0 -0
  102. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/host-paths.md +0 -0
  103. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/map-json-output-contracts.md +0 -0
  104. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/map-output-examples.md +0 -0
  105. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/map-xml-prompt-envelopes.md +0 -0
  106. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/mcp-usage-examples.md +0 -0
  107. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/step-state-schema.md +0 -0
  108. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/references/workflow-state-schema.md +0 -0
  109. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/rules/learned/README.md +0 -0
  110. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/settings.json +0 -0
  111. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/README.md +0 -0
  112. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-check/SKILL.md +0 -0
  113. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-check/check-reference.md +0 -0
  114. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-debug/SKILL.md +0 -0
  115. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-efficient/SKILL.md +0 -0
  116. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-efficient/efficient-reference.md +0 -0
  117. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-explain/SKILL.md +0 -0
  118. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-fast/SKILL.md +0 -0
  119. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-learn/SKILL.md +0 -0
  120. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-learn/templates/example-rules.md +0 -0
  121. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-learn/templates/rules-unconditional.md +0 -0
  122. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-learn/templates/rules-with-paths.md +0 -0
  123. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-memory-now/SKILL.md +0 -0
  124. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-plan/SKILL.md +0 -0
  125. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-plan/plan-reference.md +0 -0
  126. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-release/SKILL.md +0 -0
  127. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-resume/SKILL.md +0 -0
  128. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-resume/resume-reference.md +0 -0
  129. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-review/SKILL.md +0 -0
  130. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-review/review-reference.md +0 -0
  131. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-skill-eval/SKILL.md +0 -0
  132. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-so-search/SKILL.md +0 -0
  133. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-so-search/scripts/sofa_search.py +0 -0
  134. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/SKILL.md +0 -0
  135. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/scripts/check-complete.sh +0 -0
  136. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/scripts/get-plan-path.sh +0 -0
  137. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/scripts/init-session.sh +0 -0
  138. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/scripts/show-focus.sh +0 -0
  139. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/templates/findings.md +0 -0
  140. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/templates/iteration_history.md +0 -0
  141. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/templates/progress.md +0 -0
  142. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-state/templates/task_plan.md +0 -0
  143. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-task/SKILL.md +0 -0
  144. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-tdd/SKILL.md +0 -0
  145. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/map-tokenreport/SKILL.md +0 -0
  146. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/skills/skill-rules.json +0 -0
  147. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates/workflow-rules.json +0 -0
  148. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/.gitignore.jinja +0 -0
  149. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/CLAUDE.md.jinja +0 -0
  150. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/actor.md.jinja +0 -0
  151. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/debate-arbiter.md.jinja +0 -0
  152. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/documentation-reviewer.md.jinja +0 -0
  153. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/evaluator.md.jinja +0 -0
  154. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/final-verifier.md.jinja +0 -0
  155. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/monitor.md.jinja +0 -0
  156. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/predictor.md.jinja +0 -0
  157. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/reflector.md.jinja +0 -0
  158. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/research-agent.md.jinja +0 -0
  159. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/synthesizer.md.jinja +0 -0
  160. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/agents/task-decomposer.md.jinja +0 -0
  161. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/AGENTS.md.jinja +0 -0
  162. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/agents/decomposer.toml.jinja +0 -0
  163. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/agents/monitor.toml.jinja +0 -0
  164. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/agents/researcher.toml.jinja +0 -0
  165. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/config.toml.jinja +0 -0
  166. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/hooks/workflow-gate.py.jinja +0 -0
  167. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/hooks.json.jinja +0 -0
  168. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/skills/map-check/SKILL.md.jinja +0 -0
  169. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/skills/map-efficient/SKILL.md.jinja +0 -0
  170. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/skills/map-efficient/efficient-reference.md.jinja +0 -0
  171. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/skills/map-explain/SKILL.md.jinja +0 -0
  172. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/skills/map-fast/SKILL.md.jinja +0 -0
  173. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/codex/skills/map-plan/SKILL.md.jinja +0 -0
  174. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/README.md.jinja +0 -0
  175. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/context-meter.py.jinja +0 -0
  176. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/detect-clarification-triggers.py.jinja +0 -0
  177. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/end-of-turn.sh.jinja +0 -0
  178. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/map-memory-capture.py.jinja +0 -0
  179. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/map-memory-endmark.py.jinja +0 -0
  180. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/map-memory-finalize.py.jinja +0 -0
  181. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/map-memory-recall.py.jinja +0 -0
  182. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/map-token-meter.py.jinja +0 -0
  183. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/post-compact-context.py.jinja +0 -0
  184. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/pre-compact-save-transcript.py.jinja +0 -0
  185. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/ralph-context-pruner.py.jinja +0 -0
  186. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/ralph-iteration-logger.py.jinja +0 -0
  187. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/safety-guardrails.py.jinja +0 -0
  188. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/workflow-context-injector.py.jinja +0 -0
  189. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/hooks/workflow-gate.py.jinja +0 -0
  190. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/scripts/diagnostics.py.jinja +0 -0
  191. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/scripts/map_orchestrator.py.jinja +0 -0
  192. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/scripts/map_step_runner.py.jinja +0 -0
  193. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/scripts/map_utils.py.jinja +0 -0
  194. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/scripts/sofa_client.py.jinja +0 -0
  195. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/scripts/validate_spec_citations.py.jinja +0 -0
  196. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/static-analysis/analyze.sh.jinja +0 -0
  197. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/static-analysis/handlers/common.sh.jinja +0 -0
  198. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/static-analysis/handlers/go.sh.jinja +0 -0
  199. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/static-analysis/handlers/python.sh.jinja +0 -0
  200. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/static-analysis/handlers/rust.sh.jinja +0 -0
  201. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/map/static-analysis/handlers/typescript.sh.jinja +0 -0
  202. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/ralph-loop-config.json.jinja +0 -0
  203. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/bash-guidelines.md.jinja +0 -0
  204. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/decomposition-examples.md.jinja +0 -0
  205. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/escalation-matrix.md.jinja +0 -0
  206. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/hook-patterns.md.jinja +0 -0
  207. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/host-paths.md.jinja +0 -0
  208. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/map-json-output-contracts.md.jinja +0 -0
  209. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/map-output-examples.md.jinja +0 -0
  210. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/map-xml-prompt-envelopes.md.jinja +0 -0
  211. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/mcp-usage-examples.md.jinja +0 -0
  212. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/step-state-schema.md.jinja +0 -0
  213. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/references/workflow-state-schema.md.jinja +0 -0
  214. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/rules/learned/README.md.jinja +0 -0
  215. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/settings.json.jinja +0 -0
  216. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/README.md.jinja +0 -0
  217. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-check/SKILL.md.jinja +0 -0
  218. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-check/check-reference.md.jinja +0 -0
  219. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-debug/SKILL.md.jinja +0 -0
  220. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-efficient/SKILL.md.jinja +0 -0
  221. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-efficient/efficient-reference.md.jinja +0 -0
  222. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-explain/SKILL.md.jinja +0 -0
  223. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-fast/SKILL.md.jinja +0 -0
  224. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-learn/SKILL.md.jinja +0 -0
  225. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-learn/templates/example-rules.md.jinja +0 -0
  226. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-learn/templates/rules-unconditional.md.jinja +0 -0
  227. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-learn/templates/rules-with-paths.md.jinja +0 -0
  228. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-memory-now/SKILL.md.jinja +0 -0
  229. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-plan/SKILL.md.jinja +0 -0
  230. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-plan/plan-reference.md.jinja +0 -0
  231. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-release/SKILL.md.jinja +0 -0
  232. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-resume/SKILL.md.jinja +0 -0
  233. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-resume/resume-reference.md.jinja +0 -0
  234. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-review/SKILL.md.jinja +0 -0
  235. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-review/review-reference.md.jinja +0 -0
  236. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-skill-eval/SKILL.md.jinja +0 -0
  237. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-so-search/SKILL.md.jinja +0 -0
  238. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-so-search/scripts/sofa_search.py.jinja +0 -0
  239. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/SKILL.md.jinja +0 -0
  240. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/scripts/check-complete.sh.jinja +0 -0
  241. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/scripts/get-plan-path.sh.jinja +0 -0
  242. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/scripts/init-session.sh.jinja +0 -0
  243. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/scripts/show-focus.sh.jinja +0 -0
  244. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/templates/findings.md.jinja +0 -0
  245. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/templates/iteration_history.md.jinja +0 -0
  246. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/templates/progress.md.jinja +0 -0
  247. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-state/templates/task_plan.md.jinja +0 -0
  248. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-task/SKILL.md.jinja +0 -0
  249. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-tdd/SKILL.md.jinja +0 -0
  250. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/map-tokenreport/SKILL.md.jinja +0 -0
  251. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/skills/skill-rules.json.jinja +0 -0
  252. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/templates_src/workflow-rules.json.jinja +0 -0
  253. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/token_budget.py +0 -0
  254. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/tools/__init__.py +0 -0
  255. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/tools/validate_dependencies.py +0 -0
  256. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/verification_recorder.py +0 -0
  257. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/workflow_finalizer.py +0 -0
  258. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/workflow_logger.py +0 -0
  259. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/src/mapify_cli/workflow_state.py +0 -0
  260. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/__init__.py +0 -0
  261. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/conftest.py +0 -0
  262. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/fixtures/claude/escalation-matrix.md +0 -0
  263. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/fixtures/codex/config.toml +0 -0
  264. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/hooks/test_detect_clarification_triggers.py +0 -0
  265. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/hooks/test_end_of_turn.py +0 -0
  266. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/hooks/test_hook_inventory_smoke.py +0 -0
  267. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/hooks/test_safety_guardrails.py +0 -0
  268. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/__init__.py +0 -0
  269. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/blueprint.json +0 -0
  270. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/code_review.md +0 -0
  271. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/plan_handoff.json +0 -0
  272. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/spec.md +0 -0
  273. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/step_state_initialized.json +0 -0
  274. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/step_state_plan_complete.json +0 -0
  275. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/task_plan.md +0 -0
  276. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/fixtures/verification_summary.md +0 -0
  277. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/test_e2e_artifact_contracts.py +0 -0
  278. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/integration/test_e2e_claude_sdk.py +0 -0
  279. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/README.md +0 -0
  280. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_check_optimize_eval_set.json +0 -0
  281. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_debug_eval_set.json +0 -0
  282. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_debug_optimize_eval_set.json +0 -0
  283. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_efficient_optimize_eval_set.json +0 -0
  284. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_explain_optimize_eval_set.json +0 -0
  285. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_fast_optimize_eval_set.json +0 -0
  286. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_learn_optimize_eval_set.json +0 -0
  287. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_memory_now_optimize_eval_set.json +0 -0
  288. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_plan_optimize_eval_set.json +0 -0
  289. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_release_optimize_eval_set.json +0 -0
  290. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_resume_optimize_eval_set.json +0 -0
  291. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_review_optimize_eval_set.json +0 -0
  292. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_skill_eval_optimize_eval_set.json +0 -0
  293. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_state_optimize_eval_set.json +0 -0
  294. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_task_optimize_eval_set.json +0 -0
  295. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_tdd_optimize_eval_set.json +0 -0
  296. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/map_tokenreport_optimize_eval_set.json +0 -0
  297. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/manifest.json +0 -0
  298. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/.map/main/blueprint.json +0 -0
  299. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/.map/main/task_plan_main.md +0 -0
  300. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/src/__init__.py +0 -0
  301. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/src/utils.py +0 -0
  302. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_blocker/repo/tests/test_compute.py +0 -0
  303. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc/hidden/test_calc_full.py +0 -0
  304. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc/manifest.json +0 -0
  305. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/.map/main/blueprint.json +0 -0
  306. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/.map/main/task_plan_main.md +0 -0
  307. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/src/__init__.py +0 -0
  308. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/src/calc.py +0 -0
  309. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc/repo/tests/test_calc_basic.py +0 -0
  310. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/hidden/test_calc_full.py +0 -0
  311. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/manifest.json +0 -0
  312. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/.map/main/blueprint.json +0 -0
  313. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/.map/main/task_plan_main.md +0 -0
  314. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/src/__init__.py +0 -0
  315. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/src/calc.py +0 -0
  316. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_calc_vague/repo/tests/test_calc_basic.py +0 -0
  317. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/manifest.json +0 -0
  318. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/.map/main/blueprint.json +0 -0
  319. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/.map/main/task_plan_main.md +0 -0
  320. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/src/__init__.py +0 -0
  321. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/src/config.py +0 -0
  322. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/src/utils.py +0 -0
  323. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_pressure/repo/tests/test_price.py +0 -0
  324. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/manifest.json +0 -0
  325. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/.map/main/blueprint.json +0 -0
  326. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/.map/main/task_plan_main.md +0 -0
  327. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/src/__init__.py +0 -0
  328. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/src/config.py +0 -0
  329. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/src/utils.py +0 -0
  330. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_scope_trap/repo/tests/test_utils.py +0 -0
  331. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver/manifest.json +0 -0
  332. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/.map/main/blueprint.json +0 -0
  333. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/.map/main/task_plan_main.md +0 -0
  334. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/src/__init__.py +0 -0
  335. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/src/semver.py +0 -0
  336. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver/repo/tests/test_semver.py +0 -0
  337. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/hidden/test_semver_full.py +0 -0
  338. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/manifest.json +0 -0
  339. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/.map/main/blueprint.json +0 -0
  340. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/.map/main/task_plan_main.md +0 -0
  341. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/src/__init__.py +0 -0
  342. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/src/semver.py +0 -0
  343. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_vague/repo/tests/test_semver_basic.py +0 -0
  344. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/hidden/test_semver_full.py +0 -0
  345. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/manifest.json +0 -0
  346. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/.map/main/blueprint.json +0 -0
  347. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/.map/main/task_plan_main.md +0 -0
  348. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/src/__init__.py +0 -0
  349. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/src/semver.py +0 -0
  350. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/fixtures/whole_skill/map_task_semver_weakgate/repo/tests/test_semver_basic.py +0 -0
  351. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/skills_eval/whole_skill/spike_runner.py +0 -0
  352. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_agent_cli_correctness.py +0 -0
  353. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_agent_frontmatter.py +0 -0
  354. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_artifact_schemas.py +0 -0
  355. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_decomposition.py +0 -0
  356. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_dependency_graph.py +0 -0
  357. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_diagnostics.py +0 -0
  358. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_digest_schema.py +0 -0
  359. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_file_copier.py +0 -0
  360. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_hook_patterns.py +0 -0
  361. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_init_import_graph.py +0 -0
  362. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_intent_detector.py +0 -0
  363. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_inv1_no_anthropic_optimize.py +0 -0
  364. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_jinja2_dep.py +0 -0
  365. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_locking.py +0 -0
  366. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_map_orchestrator.py +0 -0
  367. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_map_step_runner.py +0 -0
  368. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_map_token_meter.py +0 -0
  369. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_map_utils_sanitize.py +0 -0
  370. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_mapify_cli.py +0 -0
  371. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_memory_capture.py +0 -0
  372. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_memory_finalize.py +0 -0
  373. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_memory_integration.py +0 -0
  374. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_memory_recall.py +0 -0
  375. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_memory_review_fixes.py +0 -0
  376. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_post_compact_context.py +0 -0
  377. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_ralph_hooks.py +0 -0
  378. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_ralph_state.py +0 -0
  379. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_repo_insight.py +0 -0
  380. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_schemas.py +0 -0
  381. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skill_ir.py +0 -0
  382. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills.py +0 -0
  383. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_consistency.py +0 -0
  384. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_aggregator.py +0 -0
  385. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_apply.py +0 -0
  386. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_cli_optimize.py +0 -0
  387. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_dispatcher_env.py +0 -0
  388. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_dispatcher_timeout.py +0 -0
  389. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_fixtures.py +0 -0
  390. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_optimizer.py +0 -0
  391. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_optimizer_isolation.py +0 -0
  392. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_proposer.py +0 -0
  393. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_runner.py +0 -0
  394. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_schema.py +0 -0
  395. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_skills_eval_viewer.py +0 -0
  396. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_sofa_client.py +0 -0
  397. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_sofa_search.py +0 -0
  398. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_template_render.py +0 -0
  399. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_token_budget.py +0 -0
  400. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_validate_dependencies.py +0 -0
  401. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_validate_spec_citations.py +0 -0
  402. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_verification_recorder.py +0 -0
  403. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_workflow_context_injector.py +0 -0
  404. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_workflow_finalizer.py +0 -0
  405. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_workflow_gate.py +0 -0
  406. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_workflow_logger.py +0 -0
  407. {mapify_cli-3.12.0 → mapify_cli-3.12.1}/tests/test_workflow_state.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mapify-cli
3
- Version: 3.12.0
3
+ Version: 3.12.1
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
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mapify-cli"
3
- version = "3.12.0"
3
+ version = "3.12.1"
4
4
  description = "MAP Framework installer - Modular Agentic Planner for Claude Code"
5
5
  authors = [{ name = "MAP Framework Contributors" }]
6
6
  readme = "README.md"
@@ -23,7 +23,7 @@ Or install globally:
23
23
  mapify check
24
24
  """
25
25
 
26
- __version__ = "3.12.0"
26
+ __version__ = "3.12.1"
27
27
 
28
28
  import os
29
29
  import subprocess
@@ -49,6 +49,7 @@ class CopyResult:
49
49
  backup_path: Optional[Path] = None
50
50
  reason: str = ""
51
51
  first_install: bool = False
52
+ migrated: bool = False
52
53
 
53
54
 
54
55
  @dataclass
@@ -754,50 +755,49 @@ def copy_managed_file(
754
755
  return result
755
756
 
756
757
  if fence_result.state == "no_fence":
757
- # INV-T / D10: Phase B install (metadata present, no fence)
758
- # Treat as fully managed (current behavior, no regression) + emit notice
759
- notice = (
760
- f"MIGRATION: {dest}: Phase B install detected (metadata present, no fence). "
761
- "Treating as fully managed. Re-install with mapify to add fence structure."
762
- )
763
- print(notice, file=sys.stderr)
764
-
765
- # Compute hash of clean dest content to detect drift
758
+ # INV-T / D10: legacy unfenced install (metadata present, no fence markers).
759
+ # Silently upgrade it to the fenced layout exactly what a fresh install
760
+ # writes (Case A). Legacy unfenced files were fully managed (no user tail),
761
+ # so the entire body becomes the managed region inside the fence.
762
+ #
763
+ # This migration is one-time and invisible by design: once the fence is
764
+ # written, the next copy_managed_file() run finds state == "found" and takes
765
+ # the normal merge path, so this branch never fires for that file again.
766
+ # We deliberately emit NO per-file notice a routine, self-healing upgrade
767
+ # should not flood stderr with alarming lines on every `mapify init`.
766
768
  stored_hash = existing_meta.get("template_hash", "")
767
769
  _, clean_dest = extract_metadata(dest_content, ext)
768
770
  current_hash = compute_hash(clean_dest)
769
771
 
770
772
  result = CopyResult(src=src, dest=dest)
771
- result.reason = notice
772
-
773
- if stored_hash and current_hash == stored_hash:
774
- # No drift; upgrade metadata only
775
- final_text = injected
776
- try:
777
- _atomic_write(dest, final_text)
778
- result.success = True
779
- except OSError as exc:
780
- result.success = False
781
- result.reason += f" write failed: {exc}"
782
- else:
783
- # Drift or unknown hash → backup + overwrite fully managed
784
- if stored_hash:
785
- result.drifted = True
786
- ts = datetime.now(timezone.utc).strftime("%Y%m%dT%H%M%S")
787
- backup_path = dest.with_suffix(f"{dest.suffix}.{ts}.bak")
788
- try:
789
- shutil.copy2(dest, backup_path)
790
- result.backed_up = True
791
- result.backup_path = backup_path
792
- except OSError:
793
- result.reason += " (backup failed)"
794
- final_text = injected
773
+ result.migrated = True
774
+ result.reason = "upgraded legacy unfenced file to fenced layout"
775
+
776
+ # Back up only when the user modified the previously fully-managed body
777
+ # (hash drift), mirroring the fenced-merge drift-backup behavior.
778
+ if stored_hash and current_hash != stored_hash:
779
+ result.drifted = True
780
+ ts = datetime.now(timezone.utc).strftime("%Y%m%dT%H%M%S")
781
+ backup_path = dest.with_suffix(f"{dest.suffix}.{ts}.bak")
795
782
  try:
796
- _atomic_write(dest, final_text)
797
- result.success = True
798
- except OSError as exc:
799
- result.success = False
800
- result.reason += f" write failed: {exc}"
783
+ shutil.copy2(dest, backup_path)
784
+ result.backed_up = True
785
+ result.backup_path = backup_path
786
+ except OSError:
787
+ result.reason += " (backup failed)"
788
+
789
+ final_text = _build_fenced_content(
790
+ metadata_line=meta_prefix.rstrip("\n"),
791
+ start_token=start_token,
792
+ end_token=end_token,
793
+ managed_body=body_after_meta,
794
+ )
795
+ try:
796
+ _atomic_write(dest, final_text)
797
+ result.success = True
798
+ except OSError as exc:
799
+ result.success = False
800
+ result.reason = f"write failed: {exc}"
801
801
 
802
802
  return result
803
803
 
@@ -608,43 +608,53 @@ class TestFenceAwareMerge:
608
608
 
609
609
  # ------------------------------------------------------------------ VC3
610
610
  @pytest.mark.parametrize("ext,start_tok,end_tok", _FENCE_FORMATS)
611
- def test_vc3_phase_b_no_fence_fully_managed_no_regression(
611
+ def test_vc3_legacy_unfenced_upgraded_to_fenced_silently(
612
612
  self, tmp_path, ext: str, start_tok: str, end_tok: str, capsys: pytest.CaptureFixture[str]
613
613
  ) -> None:
614
- """VC3 [INV-T]: Phase B file (metadata, no fence) fully managed + migration notice."""
614
+ """VC3 [INV-T]: legacy unfenced file (metadata, no fence) is silently upgraded
615
+ to the fenced layout — fence markers added, no alarming per-file stderr output,
616
+ and the migration is one-time (idempotent on re-copy)."""
615
617
  src_body = _src_body_for(ext)
616
618
  src = tmp_path / f"tmpl{ext}"
617
619
  src.write_text(src_body, encoding="utf-8")
618
620
  dest = tmp_path / f"dest{ext}"
619
621
 
620
- # Simulate a Phase B install: inject metadata but NO fence
622
+ # Simulate a legacy install: inject metadata but NO fence
621
623
  template_hash = compute_hash(src_body)
622
624
  phase_b_content = inject_metadata(src_body, ext, "1.0.0", template_hash)
623
625
  dest.write_text(phase_b_content, encoding="utf-8")
624
626
 
625
- # Re-copy with Phase C copier
627
+ # Re-copy: migration should complete by adding the fence
626
628
  r = copy_managed_file(src, dest, "1.1.0")
627
- assert r.success, f"Phase B C migration failed: {r.reason}"
629
+ assert r.success, f"legacyfenced migration failed: {r.reason}"
630
+ assert r.migrated, "result must flag the one-time legacy → fenced migration"
628
631
 
629
- # Must have written something (fully managed — no fence added on Phase B migration;
630
- # fence only comes with a full re-install via `mapify init`)
631
- del start_tok, end_tok # Phase B path doesn't add fence tokens by design
632
632
  content = dest.read_text(encoding="utf-8")
633
- assert "MAP-MANAGED" in content, "Metadata must be present after re-copy"
633
+ assert "MAP-MANAGED" in content, "Metadata must be present after migration"
634
+ # The migration must now write the fence markers (the whole point of the fix).
635
+ assert start_tok in content, f"start fence {start_tok!r} missing after migration"
636
+ assert end_tok in content, f"end fence {end_tok!r} missing after migration"
634
637
  # Check key lines of the managed body are present (shebang may be reordered)
635
638
  for line in src_body.splitlines():
636
639
  stripped = line.strip()
637
640
  if stripped and not stripped.startswith("#!"):
638
641
  assert stripped in content, (
639
- f"Body line {stripped!r} missing from re-copied content"
642
+ f"Body line {stripped!r} missing from migrated content"
640
643
  )
641
644
 
642
- # Migration notice must appear on stderr
645
+ # No alarming per-file notice should reach stderr — the upgrade is silent.
643
646
  stderr_out = capsys.readouterr().err
644
- assert "MIGRATION" in stderr_out or "Phase B" in stderr_out or "no fence" in stderr_out.lower(), (
645
- f"Migration notice expected in stderr; got: {stderr_out!r}"
647
+ assert "MIGRATION" not in stderr_out and "Phase B" not in stderr_out, (
648
+ f"legacy upgrade must be silent; got stderr: {stderr_out!r}"
646
649
  )
647
650
 
651
+ # Idempotent: a second copy now finds a proper fence (state == 'found'),
652
+ # so it takes the normal merge path and does NOT re-migrate.
653
+ r2 = copy_managed_file(src, dest, "1.1.0")
654
+ assert r2.success
655
+ assert not r2.migrated, "migration must be one-time, not repeated on every copy"
656
+ assert capsys.readouterr().err == "", "re-copy of a fenced file must be silent"
657
+
648
658
  # ------------------------------------------------------------------ VC4
649
659
  @pytest.mark.parametrize("ext,start_tok,end_tok", _FENCE_FORMATS)
650
660
  def test_vc4_deleted_fence_user_owned_not_overwritten(
File without changes
File without changes