claude-code-conductor 2.75.0__tar.gz → 2.76.0__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 (276) hide show
  1. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/CLAUDE.md +16 -0
  2. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/parallel-agents/SKILL.md +1 -1
  3. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/CHANGELOG.md +21 -0
  4. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/PKG-INFO +1 -1
  5. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/__init__.py +1 -1
  6. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/.gitignore +0 -0
  7. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/architect.md +0 -0
  8. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/code-reviewer.md +0 -0
  9. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/design-critic.md +0 -0
  10. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/developer.md +0 -0
  11. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/doc-writer.md +0 -0
  12. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/interviewer.md +0 -0
  13. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/planner.md +0 -0
  14. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/project-setup.md +0 -0
  15. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/security-reviewer.md +0 -0
  16. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/systematic-debugger.md +0 -0
  17. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/tester.md +0 -0
  18. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/wt_developer.md +0 -0
  19. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/wt_systematic-debugger.md +0 -0
  20. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/agents/wt_tester.md +0 -0
  21. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/breaking-changes.txt +0 -0
  22. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/deletions.txt +0 -0
  23. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/docs/autonomous-mode-onboarding.md +0 -0
  24. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/docs/config-policy.md +0 -0
  25. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/docs/nul-boundary.md +0 -0
  26. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/docs/parallel-agents-setup.md +0 -0
  27. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/docs/platform-adapters.md +0 -0
  28. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/docs/settings.json.md +0 -0
  29. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/_hook_utils.py +0 -0
  30. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/check_agent_invocation.py +0 -0
  31. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/consolidate_memory.py +0 -0
  32. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/patterns_guard.py +0 -0
  33. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/planner_check.py +0 -0
  34. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/post_tool.py +0 -0
  35. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/pre_compact.py +0 -0
  36. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/pre_tool.py +0 -0
  37. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/recall_autorebuild.py +0 -0
  38. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/recall_inject.py +0 -0
  39. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/report_contract_check.py +0 -0
  40. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/report_path_guard.py +0 -0
  41. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/restore_session.py +0 -0
  42. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/select_tier.py +0 -0
  43. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/session_mode_watch.py +0 -0
  44. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/session_start.py +0 -0
  45. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/session_stop.py +0 -0
  46. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/session_utils.py +0 -0
  47. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/statusline.py +0 -0
  48. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/stop.py +0 -0
  49. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/tier_autoapply.py +0 -0
  50. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/tier_gap_check.py +0 -0
  51. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/hooks/worktree_guard.py +0 -0
  52. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/memory/.gitkeep +0 -0
  53. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/memory/archive/.gitkeep +0 -0
  54. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/memory/sessions/.gitkeep +0 -0
  55. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/reports/.gitkeep +0 -0
  56. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/rules/judgment-principles.md +0 -0
  57. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/rules/promoted/index.md +0 -0
  58. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/settings.json +0 -0
  59. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/autonomous-mode/SKILL.md +0 -0
  60. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/autonomous-mode/scripts/mode_line.py +0 -0
  61. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/brainstorm/SKILL.md +0 -0
  62. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/codex-review/SKILL.md +0 -0
  63. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/SKILL.md +0 -0
  64. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/c3-omission-declaration.md +0 -0
  65. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/code-review-checklist.md +0 -0
  66. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/design-critic-rubric.md +0 -0
  67. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/design-rubric.md +0 -0
  68. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/interview-rubric.md +0 -0
  69. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/plan-design-guidelines.md +0 -0
  70. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/reachability-map.md +0 -0
  71. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/record-protocol.md +0 -0
  72. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/references/security-review-checklist.md +0 -0
  73. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/scripts/detect_execution_verification.py +0 -0
  74. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/scripts/record_agent_outcome.py +0 -0
  75. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/scripts/record_review_decision.py +0 -0
  76. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/dev-workflow/scripts/review_hint_inject.py +0 -0
  77. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/develop/SKILL.md +0 -0
  78. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/doc/SKILL.md +0 -0
  79. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/extract-lib/SKILL.md +0 -0
  80. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/init-session/SKILL.md +0 -0
  81. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/init-session/scripts/session_guard.py +0 -0
  82. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/mcp-config/SKILL.md +0 -0
  83. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/pattern-status/SKILL.md +0 -0
  84. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/promote-pattern/SKILL.md +0 -0
  85. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/recall/SKILL.md +0 -0
  86. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/report-timestamp/SKILL.md +0 -0
  87. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/report-timestamp/scripts/get_timestamp.py +0 -0
  88. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/review-phase/SKILL.md +0 -0
  89. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/setup/SKILL.md +0 -0
  90. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/setup/reference.md +0 -0
  91. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/setup/templates/coding-standards-template.md +0 -0
  92. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/setup/templates/project-conventions-template.md +0 -0
  93. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/start/SKILL.md +0 -0
  94. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/skills/start/scripts/archive_reports.py +0 -0
  95. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/state/.gitkeep +0 -0
  96. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/state/setup_done.flag +0 -0
  97. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.claude/tmp/.gitkeep +0 -0
  98. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/.gitignore +0 -0
  99. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/ARCHITECTURE.md +0 -0
  100. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/LICENSE +0 -0
  101. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/LICENSES/fastembed-LICENSE +0 -0
  102. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/LICENSES/fastembed-NOTICE +0 -0
  103. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/LICENSES/numpy-LICENSE +0 -0
  104. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/LICENSES/onnxruntime-LICENSE +0 -0
  105. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/LICENSES/paraphrase-multilingual-MiniLM-L12-v2-LICENSE +0 -0
  106. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/README.md +0 -0
  107. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/hatch_build.py +0 -0
  108. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/pyproject.toml +0 -0
  109. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/__main__.py +0 -0
  110. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/_db_params.py +0 -0
  111. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/_excludes.py +0 -0
  112. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/_terminal.py +0 -0
  113. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/adapters.py +0 -0
  114. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli.py +0 -0
  115. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_ask.py +0 -0
  116. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_doctor.py +0 -0
  117. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_init.py +0 -0
  118. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_list.py +0 -0
  119. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_metrics.py +0 -0
  120. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_plan.py +0 -0
  121. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_recall.py +0 -0
  122. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_run.py +0 -0
  123. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_tier.py +0 -0
  124. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/cli_update.py +0 -0
  125. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/db.py +0 -0
  126. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/embedding.py +0 -0
  127. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/gitutil.py +0 -0
  128. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/mcp_server.py +0 -0
  129. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrate.py +0 -0
  130. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/001_initial.sql +0 -0
  131. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/002_agent_cost_runs.sql +0 -0
  132. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/003_tier_cost.sql +0 -0
  133. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/004_agent_outcomes.sql +0 -0
  134. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/005_drop_agent_tier_bandit.sql +0 -0
  135. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/006_review_decisions_severity.sql +0 -0
  136. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/007_review_decisions_resolution.sql +0 -0
  137. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/008_drop_agent_runs.sql +0 -0
  138. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/README.md +0 -0
  139. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/migrations/__init__.py +0 -0
  140. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/paths.py +0 -0
  141. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/plan_validator.py +0 -0
  142. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/platforms.py +0 -0
  143. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/pricing.py +0 -0
  144. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/question.py +0 -0
  145. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/recall_chunker.py +0 -0
  146. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/recall_index.py +0 -0
  147. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/refgraph.py +0 -0
  148. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/src/c3/usage_ingester.py +0 -0
  149. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/__init__.py +0 -0
  150. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/_pre_compact_helpers.py +0 -0
  151. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/_sync_semantics.py +0 -0
  152. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/conftest.py +0 -0
  153. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/fixtures/usage/README.md +0 -0
  154. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/fixtures/usage/mainline.jsonl +0 -0
  155. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/fixtures/usage/subagents/agent-deadbeef.jsonl +0 -0
  156. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/fixtures/usage/subagents/agent-deadbeef.meta.json +0 -0
  157. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/__init__.py +0 -0
  158. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_check_agent_invocation.py +0 -0
  159. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_consolidate_memory.py +0 -0
  160. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_detect_execution_verification.py +0 -0
  161. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_hook_utils.py +0 -0
  162. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_pip_reinstall_reminder.py +0 -0
  163. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_planner_check.py +0 -0
  164. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_planner_check_dev.py +0 -0
  165. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_post_tool.py +0 -0
  166. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_pre_tool.py +0 -0
  167. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_recall_autorebuild.py +0 -0
  168. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_recall_inject.py +0 -0
  169. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_record_agent_outcome.py +0 -0
  170. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_record_review_decision.py +0 -0
  171. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_report_path_guard.py +0 -0
  172. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_restore_session.py +0 -0
  173. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_review_hint_inject.py +0 -0
  174. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_select_tier.py +0 -0
  175. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_select_tier_escalation.py +0 -0
  176. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_session_start.py +0 -0
  177. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_session_stop.py +0 -0
  178. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_session_utils.py +0 -0
  179. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_settings_local_absolute_paths.py +0 -0
  180. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_settings_tier_autoapply_registration.py +0 -0
  181. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_similarity_boost.py +0 -0
  182. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_statusline.py +0 -0
  183. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_statusline_reconfigure_guard.py +0 -0
  184. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_statusline_template_sync.py +0 -0
  185. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_sync_check.py +0 -0
  186. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_template_guard.py +0 -0
  187. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_tier_autoapply.py +0 -0
  188. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_tier_gap_check.py +0 -0
  189. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/hooks/test_tier_security_fixes.py +0 -0
  190. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/__init__.py +0 -0
  191. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/_skill_helpers.py +0 -0
  192. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_c3_omission_declaration.py +0 -0
  193. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_dev_workflow_no_task_type.py +0 -0
  194. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_e0_verification_exit.py +0 -0
  195. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_init_session_no_task_type.py +0 -0
  196. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_marker_compliance.py +0 -0
  197. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_parallel_agents_skill_tier.py +0 -0
  198. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_planner_lightweight.py +0 -0
  199. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_reachability_map.py +0 -0
  200. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_recall_skill.py +0 -0
  201. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_session_backlog_reconciliation.py +0 -0
  202. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_session_guard.py +0 -0
  203. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_setup_templates.py +0 -0
  204. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_start_skill_bugfix_flow.py +0 -0
  205. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_start_skill_new_flow.py +0 -0
  206. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/skills/test_start_skill_security_audit_phase.py +0 -0
  207. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_adapters.py +0 -0
  208. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_archive_reports.py +0 -0
  209. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_audit_review_decisions.py +0 -0
  210. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_check_deletions.py +0 -0
  211. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_ci_workflows.py +0 -0
  212. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_claude_gitignore.py +0 -0
  213. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_ask.py +0 -0
  214. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_doctor.py +0 -0
  215. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_doctor_launcher.py +0 -0
  216. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_entry.py +0 -0
  217. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_init.py +0 -0
  218. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_init_symlink_guard.py +0 -0
  219. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_list.py +0 -0
  220. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_metrics.py +0 -0
  221. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_plan.py +0 -0
  222. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_recall.py +0 -0
  223. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_run.py +0 -0
  224. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_tier.py +0 -0
  225. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_update_breaking_changes.py +0 -0
  226. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_cli_update_deletions.py +0 -0
  227. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_db.py +0 -0
  228. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_db_connect_lint.py +0 -0
  229. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_docstring_consistency.py +0 -0
  230. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_embedding.py +0 -0
  231. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_excludes.py +0 -0
  232. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_extract_breaking_changes.py +0 -0
  233. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_gitutil.py +0 -0
  234. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_hooks_stdin_idiom.py +0 -0
  235. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_init_only_patterns.py +0 -0
  236. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_mcp_server_elicit.py +0 -0
  237. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_migrate.py +0 -0
  238. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_mode_line.py +0 -0
  239. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_no_bare_python_launcher.py +0 -0
  240. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_no_passonly_tests.py +0 -0
  241. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_nul_boundary_lint.py +0 -0
  242. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_paths.py +0 -0
  243. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_patterns_guard.py +0 -0
  244. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_permission_handler_removal.py +0 -0
  245. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_plan_validator.py +0 -0
  246. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_pre_compact.py +0 -0
  247. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_pre_tool_hook.py +0 -0
  248. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_precompact_additional.py +0 -0
  249. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_precompact_toctou_fixes.py +0 -0
  250. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_pricing.py +0 -0
  251. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_recall_chunker.py +0 -0
  252. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_recall_index.py +0 -0
  253. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_references_migration.py +0 -0
  254. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_refgraph.py +0 -0
  255. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_refgraph_query.py +0 -0
  256. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_refgraph_structural.py +0 -0
  257. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_report_contract_check.py +0 -0
  258. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_scripts_src_bootstrap.py +0 -0
  259. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_scripts_stdout_encoding.py +0 -0
  260. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_session_mode_watch.py +0 -0
  261. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_session_utils_additional.py +0 -0
  262. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_settings_hooks_registration.py +0 -0
  263. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_skill_no_builtin_conflict.py +0 -0
  264. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_start_skill_archive_contract.py +0 -0
  265. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_statusline.py +0 -0
  266. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_stop_additional.py +0 -0
  267. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_stop_agent_memory_warn.py +0 -0
  268. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_stop_hook.py +0 -0
  269. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_stop_precompact_fixes.py +0 -0
  270. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_sync_template_stop.py +0 -0
  271. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_template_pre_tool_hook.py +0 -0
  272. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_three_file_sync.py +0 -0
  273. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_usage_ingester.py +0 -0
  274. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_verify_wheel.py +0 -0
  275. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_worktree_guard.py +0 -0
  276. {claude_code_conductor-2.75.0 → claude_code_conductor-2.76.0}/tests/test_wt_agent_sync.py +0 -0
@@ -14,6 +14,22 @@ C3 は、業務アプリケーション開発で製品としての品質を保
14
14
 
15
15
  背景: 業務アプリは機密情報を扱い、作って終わりではなく保守・運用が続く。
16
16
 
17
+ ## 根本解決の原則(監査・レビューを通すための対応をしない)
18
+
19
+ - 監査(C-3)・レビュー(E)・テストの指摘に対して、**指摘を消すためだけの対応(言い換え・周辺の付け足し・機構の差し替え)を行わない**
20
+ - 指摘の背後にある**根本問題を 1 文で書き**、それを解く手段を採る。根本問題を解いているかは、OS・ライブラリの一次資料(ソース・公式ドキュメント)と実測で裏取りしてから確定する
21
+ - **影響範囲が大きくても、コストがかかっても、根本解決できるものは必ず根本解決の手段を取る。** 同じコストを払うなら、修正範囲が広い根本解決の方が、後から積む機能への影響が少なくトータルコストが安い
22
+ - 監査・レビューを通すためだけの対応に払うコストは、開発で最も無駄なコストである。ゲートが緑になることは目的の達成を意味しない
23
+ - 対症療法しか取れない場合は、その理由(根本解決が構造的に不可能・現時点の情報では原因が確定しない等)を明記し、根本解決へ戻るトリガーをセッションファイルの残タスクに残す。「後で直す」をトリガーなしに先送りしない
24
+
25
+ 判断の手順:
26
+
27
+ 1. 指摘・欠陥の**根本問題を 1 文で書く**
28
+ 2. 候補となる対策が、その根本問題を**解くのか・隠すのか**を分ける。隠す対策は採らない
29
+ 3. 解く対策の修正範囲が大きい場合も、設計(architecture-report)と計画(plan-report)に載せて実施する。範囲の大きさを理由に縮小する裁定はユーザーが行う
30
+ 4. 実装前に一次資料と再現実験で仮説を裏取りする。仮説が反証されたら実装せず再調査する
31
+ 5. 是正後は「指摘が消えたか」ではなく「根本問題が解けたか」を実測で示す(Red → Green の反転・本番経路での再現条件の消失)
32
+
17
33
  ## 設計思想
18
34
 
19
35
  - 対策・規約は「書きやすい場所」ではなく「効く場所」に置く。読み手(agent / skill)の Read 経路に届いていない規約は存在しないのと同じ
@@ -157,7 +157,7 @@ wave を起動する前に `git status` が空(未コミット変更なし)
157
157
  各 Agent ツール呼び出しに以下を指定:
158
158
 
159
159
  - `subagent_type`: 上記マッピング表の値
160
- - `model`: **親 Claude は `model:` を指定しない**。`wt_developer` タスクは起動時に PreToolUse hook(`.claude/hooks/tier_autoapply.py`)が `[tier-routing 推奨]`(developer 基準)の推奨 Tier を `model:` へ自動適用する(機械適用・親 Claude が model: を転記する必要はない)。この推奨 Tier の SSOT は `.claude/state/tier_selection.json` の `tier`(無ければ `suggested_model`)であり、kickoff の UserPromptSubmit で 1 度確定して以降 wave をまたいで安定する(`[tier-routing 推奨]` の表示テキストはその派生表示)。hook は実適用した model を `.claude/state/tier_autoapply.jsonl` に記録する(適用者=記録 SSOT)。並列 wave 内に複数の `wt_developer` が居る場合、**全 wt_developer は同一の推奨 Tier(単一 tier_selection.json.tier)で起動される。これは本 MVP の設計として明示的に許容する**(per-task complexity に応じて wt_developer ごとに tier を変える機能は本 MVP のスコープ外・フェーズ 3 以降)。推奨と異なる Tier を使いたい場合のみ `model:` を明示指定する(明示指定は hook に尊重され上書きされない)。`wt_tester` は **test- タスク(Red)に限り機械適用対象**(`C3_TASK_ID` マーカーの `test-` プレフィックスで RED_APPLY_ROLES 注入・confirm- 等の非 test- タスクは対象外=frontmatter 任せ)。`wt_systematic-debugger` / `code-reviewer` / `security-reviewer` は **model: 指定対象外**(frontmatter/元 agent 任せ・機械適用対象外)。fork は model 上書き不可のため対象外。
160
+ - `model`: **親 Claude は `model:` を指定しない**。`wt_developer` タスクは起動時に PreToolUse hook(`.claude/hooks/tier_autoapply.py`)が `[tier-routing 推奨]`(developer 基準)の推奨 Tier を `model:` へ自動適用する(機械適用・親 Claude が model: を転記する必要はない)。この推奨 Tier の SSOT は `.claude/state/tier_selection.json` の `tier`(無ければ `suggested_model`)であり、kickoff の UserPromptSubmit で 1 度確定して以降 wave をまたいで安定する(`[tier-routing 推奨]` の表示テキストはその派生表示)。hook は実適用した model を `.claude/state/tier_autoapply.jsonl` に記録する(適用者=記録 SSOT)。並列 wave 内に複数の `wt_developer` が居る場合、**全 wt_developer は同一の推奨 Tier(単一 tier_selection.json.tier)で起動される。これは本 MVP の設計として明示的に許容する**(per-task complexity に応じて wt_developer ごとに tier を変える機能は本 MVP のスコープ外・フェーズ 3 以降)。推奨と異なる Tier を使いたい場合のみ `model:` を明示指定する(明示指定は hook に尊重され上書きされない)。**上流環境変数の注意**: `CLAUDE_CODE_SUBAGENT_MODEL_FORCE`(Claude Code v2.1.257+)が設定されていると、ハーネスは per-spawn の `model:`(hook 注入・明示指定とも)と agent 定義の `model:` を無視して全サブエージェントを強制モデルで起動する。hook は注入と `tier_autoapply.jsonl` 記録を行うため、記録された tier と実適用モデルが乖離する。C3 は同変数を設定しない。tier-routing を使う環境ではこの変数を設定しないこと(`CLAUDE_CODE_SUBAGENT_MODEL` は既定値扱いで注入が優先されるため影響なし・v2.1.251+)。`wt_tester` は **test- タスク(Red)に限り機械適用対象**(`C3_TASK_ID` マーカーの `test-` プレフィックスで RED_APPLY_ROLES 注入・confirm- 等の非 test- タスクは対象外=frontmatter 任せ)。`wt_systematic-debugger` / `code-reviewer` / `security-reviewer` は **model: 指定対象外**(frontmatter/元 agent 任せ・機械適用対象外)。fork は model 上書き不可のため対象外。
161
161
  - `isolation`: **`read_only: false` タスクのみ `"worktree"` を指定する。ただし `writes` が全て gitignored ファイル(実質 `.claude/reports/` のレポートのみ)のタスク(confirm- 系が典型)は git 的に「未変更」の worktree となるため Agent 完了時に auto-cleanup され、親が取り込む前に成果物が消失する(2026-07-26 実測)ため、worktree を使わず `isolation` を省略して main 直接経路・素の agent(読み替え: `wt_tester`→`tester` 等)で起動する。`read_only: true`(code-reviewer / security-reviewer)はソースを変更しないため worktree 不要。`isolation` を省略して main リポジトリで直接実行し、レポートを main の `.claude/reports/` に直接書かせる。**
162
162
  > **R5 hook による機械強制**: 上記ルールに違反して `read_only: true` のレビュータスクに `isolation: "worktree"` を指定した場合、`.claude/hooks/check_agent_invocation.py`(PreToolUse Agent hook)が exit 2 でブロックする。詳細は `.claude/skills/dev-workflow/references/plan-design-guidelines.md` R5 参照。
163
163
  - `run_in_background`: `true`
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.76.0] - 2026-09-04
4
+
5
+ ### 追加
6
+
7
+ - `.claude/CLAUDE.md` に「根本解決の原則(監査・レビューを通すための対応をしない)」節を追加した。
8
+ 監査(C-3)・レビュー(E)・テストの指摘に対し、指摘を消すためだけの対応(言い換え・周辺の付け足し・
9
+ 機構の差し替え)を禁じ、根本問題を 1 文で書いてそれを解く手段を採る原則 5 項目と、判断の手順 5 段階
10
+ (根本問題の 1 文化 → 解く/隠すの仕分け → 修正範囲が大きくても設計・計画に載せる → 一次資料と再現実験で
11
+ 裏取り → 根本問題が解けたことを実測で示す)を定めた。対症療法しか取れない場合は理由を明記し、
12
+ 根本解決へ戻るトリガーをセッションファイルの残タスクに残す。是正ループの打切条件(3 連続で前提を疑う)は
13
+ dev-workflow E-3 を唯一の正本とし、本節には重複記述を置かない。利用先プロジェクトで運用して不足と
14
+ 判明した規約を C3 本体へ取り込んだもの
15
+
16
+ ### 変更
17
+
18
+ - `parallel-agents` skill の `model:` 指定規則と `docs/spec/02-hooks.md` の tier_autoapply 仕様表に、
19
+ Claude Code v2.1.257 で追加された環境変数 `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` の注意を追記した。
20
+ 同変数が設定されていると per-spawn の `model:`(hook 注入・明示指定とも)と agent 定義の `model:` が
21
+ ハーネス側で無視され、tier_autoapply が記録した tier と実適用モデルが乖離する。C3 は同変数を設定しない
22
+ (`CLAUDE_CODE_SUBAGENT_MODEL` は v2.1.251 以降既定値扱いで注入が優先されるため影響なし)
23
+
3
24
  ## [2.75.0] - 2026-08-16
4
25
 
5
26
  ### 追加
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: claude-code-conductor
3
- Version: 2.75.0
3
+ Version: 2.76.0
4
4
  Summary: Multi-agent orchestration framework for Claude Code with Codex/Cursor adapters (C3)
5
5
  Project-URL: Homepage, https://github.com/satoh-y-0323/claude-code-conductor
6
6
  Project-URL: Repository, https://github.com/satoh-y-0323/claude-code-conductor
@@ -1,3 +1,3 @@
1
1
  """Claude Code Conductor (C3) - multi-agent orchestration framework for Claude Code."""
2
2
 
3
- __version__ = "2.75.0"
3
+ __version__ = "2.76.0"