shellbrain 0.1.48__tar.gz → 0.1.49__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 (495) hide show
  1. {shellbrain-0.1.48 → shellbrain-0.1.49}/PKG-INFO +3 -10
  2. {shellbrain-0.1.48 → shellbrain-0.1.49}/README.md +2 -9
  3. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/build_context/execute.py +4 -33
  4. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/deterministic_graph_recall.py +0 -16
  5. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/inner_agents/prompt.py +4 -13
  6. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/recall_records.py +0 -1
  7. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/records.py +0 -1
  8. {shellbrain-0.1.48 → shellbrain-0.1.49}/pyproject.toml +1 -1
  9. {shellbrain-0.1.48 → shellbrain-0.1.49}/shellbrain.egg-info/PKG-INFO +3 -10
  10. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/__init__.py +0 -0
  11. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/__main__.py +0 -0
  12. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/__init__.py +0 -0
  13. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/__init__.py +0 -0
  14. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/admin_errors.py +0 -0
  15. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/associations.py +0 -0
  16. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/backups.py +0 -0
  17. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/concepts.py +0 -0
  18. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/episodes.py +0 -0
  19. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/evidence.py +0 -0
  20. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/guidance.py +0 -0
  21. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/identity.py +0 -0
  22. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/ids.py +0 -0
  23. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/inner_agents.py +0 -0
  24. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/knowledge_builder.py +0 -0
  25. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/machine_config.py +0 -0
  26. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/memories.py +0 -0
  27. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/repositories.py +0 -0
  28. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/runtime_context.py +0 -0
  29. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/scenarios.py +0 -0
  30. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/session_state.py +0 -0
  31. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/settings.py +0 -0
  32. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/snapshots.py +0 -0
  33. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/structural_memory_relations.py +0 -0
  34. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/utility.py +0 -0
  35. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/entities/wiki_summaries.py +0 -0
  36. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/errors.py +0 -0
  37. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/__init__.py +0 -0
  38. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/concepts/__init__.py +0 -0
  39. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/concepts/relation_rules.py +0 -0
  40. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/concepts/search_text.py +0 -0
  41. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/episodes/__init__.py +0 -0
  42. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/episodes/event_content.py +0 -0
  43. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/episodes/knowledge_building.py +0 -0
  44. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/memories/__init__.py +0 -0
  45. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/memories/add_plan.py +0 -0
  46. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/memories/link_rules.py +0 -0
  47. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/memories/update_plan.py +0 -0
  48. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/__init__.py +0 -0
  49. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/bm25.py +0 -0
  50. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/context_pack.py +0 -0
  51. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/expansion.py +0 -0
  52. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/fusion_rrf.py +0 -0
  53. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/lexical_query.py +0 -0
  54. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/ontology_semantics.py +0 -0
  55. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/retrieval/scoring.py +0 -0
  56. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/policies/wiki_summary_freshness.py +0 -0
  57. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/__init__.py +0 -0
  58. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/__init__.py +0 -0
  59. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/concept_repositories.py +0 -0
  60. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/episode_repositories.py +0 -0
  61. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/guidance.py +0 -0
  62. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/knowledge_builder.py +0 -0
  63. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/memory_repositories.py +0 -0
  64. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/problem_runs.py +0 -0
  65. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/repository_index.py +0 -0
  66. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/retrieval_repositories.py +0 -0
  67. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/snapshots.py +0 -0
  68. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/unit_of_work.py +0 -0
  69. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/db/wiki_summaries.py +0 -0
  70. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/embeddings/__init__.py +0 -0
  71. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/embeddings/provider.py +0 -0
  72. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/embeddings/retrieval.py +0 -0
  73. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/host_apps/__init__.py +0 -0
  74. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/host_apps/inner_agents.py +0 -0
  75. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/local_state/__init__.py +0 -0
  76. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/local_state/session_state_store.py +0 -0
  77. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/local_state/shadow_git.py +0 -0
  78. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/reporting/__init__.py +0 -0
  79. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/reporting/metrics.py +0 -0
  80. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/system/__init__.py +0 -0
  81. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/system/clock.py +0 -0
  82. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/ports/system/idgen.py +0 -0
  83. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/__init__.py +0 -0
  84. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/__init__.py +0 -0
  85. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/analytics_diagnostics.py +0 -0
  86. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/backfill_model_usage/__init__.py +0 -0
  87. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/backfill_model_usage/backfill_model_usage.py +0 -0
  88. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/backfill_model_usage/request.py +0 -0
  89. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/backfill_model_usage/result.py +0 -0
  90. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/create_backup.py +0 -0
  91. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/diagnose_runtime.py +0 -0
  92. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/generate_analytics_report.py +0 -0
  93. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/initialize_runtime.py +0 -0
  94. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/restore_backup.py +0 -0
  95. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/admin/verify_backup.py +0 -0
  96. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/build_guidance.py +0 -0
  97. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/__init__.py +0 -0
  98. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/add/__init__.py +0 -0
  99. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/add/execute.py +0 -0
  100. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/add/request.py +0 -0
  101. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/add/result.py +0 -0
  102. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/containment_checks.py +0 -0
  103. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/embeddings.py +0 -0
  104. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/reference_checks.py +0 -0
  105. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/show/__init__.py +0 -0
  106. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/show/execute.py +0 -0
  107. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/show/request.py +0 -0
  108. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/show/result.py +0 -0
  109. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/update/__init__.py +0 -0
  110. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/update/execute.py +0 -0
  111. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/update/request.py +0 -0
  112. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/update/result.py +0 -0
  113. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/concepts/views.py +0 -0
  114. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/__init__.py +0 -0
  115. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/events/__init__.py +0 -0
  116. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/events/request.py +0 -0
  117. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/sync_discovered_host_session.py +0 -0
  118. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/sync_episode/__init__.py +0 -0
  119. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/sync_episode/request.py +0 -0
  120. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/sync_episode/result.py +0 -0
  121. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/episodes/sync_episode/sync_episode.py +0 -0
  122. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/__init__.py +0 -0
  123. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/build_knowledge/__init__.py +0 -0
  124. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/build_knowledge/execute.py +0 -0
  125. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/build_knowledge/request.py +0 -0
  126. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/build_knowledge/result.py +0 -0
  127. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/teach_knowledge/__init__.py +0 -0
  128. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/teach_knowledge/execute.py +0 -0
  129. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/teach_knowledge/request.py +0 -0
  130. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/knowledge_builder/teach_knowledge/result.py +0 -0
  131. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/__init__.py +0 -0
  132. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/add/__init__.py +0 -0
  133. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/add/execute.py +0 -0
  134. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/add/request.py +0 -0
  135. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/add/result.py +0 -0
  136. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/effect_plan.py +0 -0
  137. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/reference_checks.py +0 -0
  138. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/update/__init__.py +0 -0
  139. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/update/execute.py +0 -0
  140. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/update/request.py +0 -0
  141. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/memories/update/result.py +0 -0
  142. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/metrics/__init__.py +0 -0
  143. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/metrics/analyze_agent_behavior.py +0 -0
  144. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/metrics/build_snapshot.py +0 -0
  145. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/metrics/generate_dashboard.py +0 -0
  146. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/plan_execution.py +0 -0
  147. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/__init__.py +0 -0
  148. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/build_context/__init__.py +0 -0
  149. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/concept_seed_retrieval.py +0 -0
  150. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/context_pack_pipeline.py +0 -0
  151. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/expansion.py +0 -0
  152. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/read/__init__.py +0 -0
  153. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/read/execute.py +0 -0
  154. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/read/request.py +0 -0
  155. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/read/result.py +0 -0
  156. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/read_concepts.py +0 -0
  157. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/recall/__init__.py +0 -0
  158. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/recall/execute.py +0 -0
  159. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/recall/request.py +0 -0
  160. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/recall/result.py +0 -0
  161. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/retrieval/seed_retrieval.py +0 -0
  162. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/scenarios/__init__.py +0 -0
  163. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/scenarios/record/__init__.py +0 -0
  164. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/scenarios/record/execute.py +0 -0
  165. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/scenarios/record/request.py +0 -0
  166. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/scenarios/record/result.py +0 -0
  167. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/__init__.py +0 -0
  168. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/capture_snapshot/__init__.py +0 -0
  169. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/capture_snapshot/execute.py +0 -0
  170. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/capture_snapshot/request.py +0 -0
  171. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/capture_snapshot/result.py +0 -0
  172. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/code_delta_context/__init__.py +0 -0
  173. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/code_delta_context/execute.py +0 -0
  174. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/snapshots/code_delta_context/request.py +0 -0
  175. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/wiki/__init__.py +0 -0
  176. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/wiki/execute.py +0 -0
  177. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/wiki/request.py +0 -0
  178. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/wiki/result.py +0 -0
  179. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/core/use_cases/wiki/summaries.py +0 -0
  180. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/__init__.py +0 -0
  181. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/__init__.py +0 -0
  182. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/error_responses.py +0 -0
  183. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/__init__.py +0 -0
  184. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/cli_operation.py +0 -0
  185. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/dependencies.py +0 -0
  186. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/human/__init__.py +0 -0
  187. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/human/admin.py +0 -0
  188. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/human/admin_dependencies.py +0 -0
  189. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/human/init.py +0 -0
  190. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/human/metrics.py +0 -0
  191. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/human/upgrade.py +0 -0
  192. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/human/wiki.py +0 -0
  193. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/__init__.py +0 -0
  194. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/concepts/__init__.py +0 -0
  195. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/concepts/add.py +0 -0
  196. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/concepts/show.py +0 -0
  197. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/concepts/update.py +0 -0
  198. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/episodes/__init__.py +0 -0
  199. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/episodes/events.py +0 -0
  200. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/episodes/selection.py +0 -0
  201. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/episodes/serialization.py +0 -0
  202. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/memories/__init__.py +0 -0
  203. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/memories/add.py +0 -0
  204. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/memories/update.py +0 -0
  205. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/memories/utility_vote_evidence.py +0 -0
  206. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/retrieval/__init__.py +0 -0
  207. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/retrieval/execution.py +0 -0
  208. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/retrieval/read.py +0 -0
  209. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/scenarios/__init__.py +0 -0
  210. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/internal_agent/scenarios/record.py +0 -0
  211. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/result_envelopes.py +0 -0
  212. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/session_state.py +0 -0
  213. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/working_agent/__init__.py +0 -0
  214. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/working_agent/recall.py +0 -0
  215. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/working_agent/snapshot.py +0 -0
  216. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/handlers/working_agent/teach.py +0 -0
  217. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/main.py +0 -0
  218. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/operation_command.py +0 -0
  219. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/parser/__init__.py +0 -0
  220. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/parser/builder.py +0 -0
  221. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/presenters/__init__.py +0 -0
  222. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/presenters/init.py +0 -0
  223. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/presenters/json.py +0 -0
  224. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/presenters/metrics.py +0 -0
  225. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/__init__.py +0 -0
  226. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/concepts.py +0 -0
  227. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/episodes.py +0 -0
  228. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/hydration.py +0 -0
  229. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/memories.py +0 -0
  230. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/payload_validation.py +0 -0
  231. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/prepared.py +0 -0
  232. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/retrieval.py +0 -0
  233. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/scenarios.py +0 -0
  234. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/request_parsing/teach.py +0 -0
  235. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/runner.py +0 -0
  236. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/cli/runtime.py +0 -0
  237. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/host_hooks/__init__.py +0 -0
  238. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/host_hooks/claude_session_start.py +0 -0
  239. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/host_hooks/cursor_statusline.py +0 -0
  240. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/jobs/__init__.py +0 -0
  241. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/entrypoints/jobs/episode_sync.py +0 -0
  242. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/__init__.py +0 -0
  243. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/__init__.py +0 -0
  244. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/__init__.py +0 -0
  245. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/app_role_safety.py +0 -0
  246. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/backups/__init__.py +0 -0
  247. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/backups/destructive_guard.py +0 -0
  248. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/backups/logical_backup.py +0 -0
  249. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/backups/manifest_store.py +0 -0
  250. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/backups/restore.py +0 -0
  251. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/connection.py +0 -0
  252. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/instance_guard.py +0 -0
  253. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/migrations.py +0 -0
  254. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/privileges.py +0 -0
  255. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/provisioning/__init__.py +0 -0
  256. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/provisioning/docker_prerequisites.py +0 -0
  257. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/provisioning/external_postgres.py +0 -0
  258. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/provisioning/init_effects.py +0 -0
  259. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/provisioning/managed_local.py +0 -0
  260. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/admin/storage_setup.py +0 -0
  261. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/__init__.py +0 -0
  262. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/engine.py +0 -0
  263. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/__init__.py +0 -0
  264. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/associations.py +0 -0
  265. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/concepts.py +0 -0
  266. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/episodes.py +0 -0
  267. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/evidence.py +0 -0
  268. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/experiences.py +0 -0
  269. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/instance_metadata.py +0 -0
  270. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/knowledge_builder.py +0 -0
  271. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/memories.py +0 -0
  272. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/metadata.py +0 -0
  273. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/problem_runs.py +0 -0
  274. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/registry.py +0 -0
  275. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/snapshots.py +0 -0
  276. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/telemetry.py +0 -0
  277. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/utility.py +0 -0
  278. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/views.py +0 -0
  279. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/models/wiki_summaries.py +0 -0
  280. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/queries/__init__.py +0 -0
  281. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/queries/agent_behavior.py +0 -0
  282. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/queries/analytics.py +0 -0
  283. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/queries/metrics.py +0 -0
  284. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/queries/metrics_adapter.py +0 -0
  285. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/queries/model_usage_backfill.py +0 -0
  286. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/__init__.py +0 -0
  287. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/__init__.py +0 -0
  288. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/associations_repo.py +0 -0
  289. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/concepts_repo.py +0 -0
  290. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/episodes_repo.py +0 -0
  291. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/evidence_repo.py +0 -0
  292. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/experiences_repo.py +0 -0
  293. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/knowledge_builder_repo.py +0 -0
  294. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/memories_repo.py +0 -0
  295. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/problem_runs_repo.py +0 -0
  296. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/read_policy_repo.py +0 -0
  297. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/repository_index_repo.py +0 -0
  298. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/snapshots_repo.py +0 -0
  299. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/telemetry_repo.py +0 -0
  300. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/utility_repo.py +0 -0
  301. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/relational/wiki_summaries_repo.py +0 -0
  302. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/semantic/__init__.py +0 -0
  303. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/semantic/concept_retrieval_repo.py +0 -0
  304. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/semantic/keyword_retrieval_repo.py +0 -0
  305. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/repos/semantic/semantic_retrieval_repo.py +0 -0
  306. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/session.py +0 -0
  307. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/db/runtime/uow.py +0 -0
  308. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/embeddings/__init__.py +0 -0
  309. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/embeddings/local_provider.py +0 -0
  310. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/embeddings/prewarm.py +0 -0
  311. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/embeddings/query_vector_search.py +0 -0
  312. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/__init__.py +0 -0
  313. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/__init__.py +0 -0
  314. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/claude.py +0 -0
  315. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/codex.py +0 -0
  316. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/cursor.py +0 -0
  317. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/cursor_statusline_config.py +0 -0
  318. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/inspection.py +0 -0
  319. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/managed_markdown.py +0 -0
  320. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/managed_tree.py +0 -0
  321. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/packaged_assets.py +0 -0
  322. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/paths.py +0 -0
  323. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/service.py +0 -0
  324. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/assets/types.py +0 -0
  325. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/identity/__init__.py +0 -0
  326. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/identity/claude_hook_install.py +0 -0
  327. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/identity/claude_runtime.py +0 -0
  328. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/identity/codex_runtime.py +0 -0
  329. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/identity/compatibility.py +0 -0
  330. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/identity/cursor_statusline.py +0 -0
  331. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/identity/resolver.py +0 -0
  332. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/inner_agents/__init__.py +0 -0
  333. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/inner_agents/claude_cli.py +0 -0
  334. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/inner_agents/codex_cli.py +0 -0
  335. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/inner_agents/output_parser.py +0 -0
  336. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/__init__.py +0 -0
  337. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/claude_code.py +0 -0
  338. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/codex.py +0 -0
  339. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/cursor.py +0 -0
  340. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/model_usage.py +0 -0
  341. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/normalization.py +0 -0
  342. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/session_selection.py +0 -0
  343. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/source_discovery.py +0 -0
  344. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/host_apps/transcripts/tool_filter.py +0 -0
  345. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/__init__.py +0 -0
  346. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/init_lock.py +0 -0
  347. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/machine_config_store.py +0 -0
  348. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/operation_registration.py +0 -0
  349. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/paths.py +0 -0
  350. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/recall_mode_store.py +0 -0
  351. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/repo_registration_store.py +0 -0
  352. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/session_state_file_store.py +0 -0
  353. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/local_state/shadow_git_store.py +0 -0
  354. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/process/__init__.py +0 -0
  355. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/process/episode_sync/__init__.py +0 -0
  356. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/process/episode_sync/autostart.py +0 -0
  357. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/process/episode_sync/launcher.py +0 -0
  358. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/process/episode_sync/lock_file.py +0 -0
  359. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/process/episode_sync/poller.py +0 -0
  360. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/process/episode_sync/status_store.py +0 -0
  361. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/__init__.py +0 -0
  362. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/metrics/__init__.py +0 -0
  363. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/metrics/artifacts.py +0 -0
  364. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/metrics/browser.py +0 -0
  365. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/metrics/pager.py +0 -0
  366. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/metrics/render_html.py +0 -0
  367. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/wiki/__init__.py +0 -0
  368. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/wiki/browser.py +0 -0
  369. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/wiki/render_html.py +0 -0
  370. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/wiki/server.py +0 -0
  371. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/reporting/wiki/summary_worker.py +0 -0
  372. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/system/__init__.py +0 -0
  373. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/system/clock.py +0 -0
  374. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/system/id_generator.py +0 -0
  375. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/system/package_upgrade.py +0 -0
  376. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/__init__.py +0 -0
  377. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/inner_agent_records.py +0 -0
  378. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/operation_invocations.py +0 -0
  379. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/operation_polling.py +0 -0
  380. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/read_records.py +0 -0
  381. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/recorder.py +0 -0
  382. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/sink.py +0 -0
  383. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/storage_protocols.py +0 -0
  384. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/sync_records.py +0 -0
  385. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/infrastructure/telemetry/write_records.py +0 -0
  386. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/settings/__init__.py +0 -0
  387. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/settings/defaults/create_policy.yaml +0 -0
  388. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/settings/defaults/read_policy.yaml +0 -0
  389. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/settings/defaults/runtime.yaml +0 -0
  390. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/settings/defaults/thresholds.yaml +0 -0
  391. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/settings/defaults/update_policy.yaml +0 -0
  392. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/settings/internal-agents/defaults.yaml +0 -0
  393. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/__init__.py +0 -0
  394. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/admin.py +0 -0
  395. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/admin_db.py +0 -0
  396. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/admin_dependencies.py +0 -0
  397. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/admin_diagnose.py +0 -0
  398. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/analytics.py +0 -0
  399. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/backup.py +0 -0
  400. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/cli.py +0 -0
  401. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/cli_runtime.py +0 -0
  402. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/config.py +0 -0
  403. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/create_policy.py +0 -0
  404. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/db.py +0 -0
  405. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/dsn_resolution.py +0 -0
  406. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/embeddings.py +0 -0
  407. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/episode_poller.py +0 -0
  408. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/episode_sync_launcher.py +0 -0
  409. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/host_hooks.py +0 -0
  410. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/internal_agent_config.py +0 -0
  411. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/internal_agents.py +0 -0
  412. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/knowledge_builder.py +0 -0
  413. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/metrics.py +0 -0
  414. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/migrations.py +0 -0
  415. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/model_usage_backfill.py +0 -0
  416. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/operation_dependencies.py +0 -0
  417. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/read_policy.py +0 -0
  418. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/repo_context.py +0 -0
  419. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/repos.py +0 -0
  420. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/retrieval.py +0 -0
  421. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/runtime_admin.py +0 -0
  422. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/runtime_context.py +0 -0
  423. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/settings.py +0 -0
  424. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/snapshot_baseline.py +0 -0
  425. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/thresholds.py +0 -0
  426. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/update_policy.py +0 -0
  427. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/use_cases.py +0 -0
  428. {shellbrain-0.1.48 → shellbrain-0.1.49}/app/startup/wiki.py +0 -0
  429. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/__init__.py +0 -0
  430. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/_legacy_usage_views.py +0 -0
  431. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/_usage_view_sql.py +0 -0
  432. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/env.py +0 -0
  433. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260226_0001_initial_schema.py +0 -0
  434. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260312_0002_add_hard_invariants.py +0 -0
  435. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260312_0003_drop_create_confidence.py +0 -0
  436. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260313_0004_episode_sync_hardening.py +0 -0
  437. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260313_0005_evidence_episode_event_refs.py +0 -0
  438. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260318_0006_usage_telemetry_schema.py +0 -0
  439. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260319_0007_identity_session_guidance.py +0 -0
  440. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260320_0008_instance_metadata_and_backup_safety.py +0 -0
  441. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260410_0009_frontier_memory_family.py +0 -0
  442. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260414_0010_model_usage_telemetry.py +0 -0
  443. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260414_0011_usage_problem_tokens_multi_solution_metrics.py +0 -0
  444. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260415_0012_read_pack_cost_and_read_roi.py +0 -0
  445. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260421_0013_concept_context_graph.py +0 -0
  446. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260422_0014_concept_read_telemetry.py +0 -0
  447. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260422_0015_problem_runs.py +0 -0
  448. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260508_0016_recall_telemetry.py +0 -0
  449. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260511_0017_inner_agent_invocations.py +0 -0
  450. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260513_0018_knowledge_build_runs.py +0 -0
  451. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260515_0019_scenario_records.py +0 -0
  452. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260516_0020_knowledge_build_observability.py +0 -0
  453. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260519_0021_knowledge_build_watermark_stable.py +0 -0
  454. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260519_0022_update_evidence_links.py +0 -0
  455. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260519_0023_explicit_teach_trigger.py +0 -0
  456. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260519_0024_read_retrieval_latency_indexes.py +0 -0
  457. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260519_0025_repair_recall_source_input_section_constraint.py +0 -0
  458. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260519_0026_repair_knowledge_build_trigger_constraint.py +0 -0
  459. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260519_0027_concept_embeddings.py +0 -0
  460. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260520_0028_knowledge_build_lifecycle.py +0 -0
  461. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260522_0029_remove_frontier_and_memory_anchors.py +0 -0
  462. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260522_0030_concept_lifecycle_events.py +0 -0
  463. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260522_0031_unified_evidence_storage.py +0 -0
  464. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260522_0032_memory_lifecycle_events.py +0 -0
  465. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260522_0033_concept_memory_role_cleanup.py +0 -0
  466. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260522_0034_structural_memory_relations.py +0 -0
  467. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260522_0035_retire_legacy_compatibility_tables.py +0 -0
  468. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260526_0036_shadow_snapshots.py +0 -0
  469. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/20260606_0037_wiki_summaries.py +0 -0
  470. {shellbrain-0.1.48 → shellbrain-0.1.49}/migrations/versions/__init__.py +0 -0
  471. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/__init__.py +0 -0
  472. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/claude/CLAUDE.md +0 -0
  473. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/claude/skills/shellbrain/SKILL.md +0 -0
  474. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/claude/skills/shellbrain-usage-review/SKILL.md +0 -0
  475. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/AGENTS.md +0 -0
  476. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/clean-architecture/SKILL.md +0 -0
  477. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/clean-code/SKILL.md +0 -0
  478. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain/SKILL.md +0 -0
  479. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain/agents/openai.yaml +0 -0
  480. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain/assets/shellbrain-large.svg +0 -0
  481. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain/assets/shellbrain-small.svg +0 -0
  482. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain/assets/shellbrain_logo.png +0 -0
  483. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain/references/session-workflow.md +0 -0
  484. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain-usage-review/SKILL.md +0 -0
  485. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain-usage-review/agents/openai.yaml +0 -0
  486. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain-usage-review/assets/shellbrain-small.svg +0 -0
  487. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/codex/shellbrain-usage-review/assets/shellbrain_logo.png +0 -0
  488. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/cursor/skills/shellbrain/SKILL.md +0 -0
  489. {shellbrain-0.1.48 → shellbrain-0.1.49}/onboarding_assets/cursor/skills/shellbrain-usage-review/SKILL.md +0 -0
  490. {shellbrain-0.1.48 → shellbrain-0.1.49}/setup.cfg +0 -0
  491. {shellbrain-0.1.48 → shellbrain-0.1.49}/shellbrain.egg-info/SOURCES.txt +0 -0
  492. {shellbrain-0.1.48 → shellbrain-0.1.49}/shellbrain.egg-info/dependency_links.txt +0 -0
  493. {shellbrain-0.1.48 → shellbrain-0.1.49}/shellbrain.egg-info/entry_points.txt +0 -0
  494. {shellbrain-0.1.48 → shellbrain-0.1.49}/shellbrain.egg-info/requires.txt +0 -0
  495. {shellbrain-0.1.48 → shellbrain-0.1.49}/shellbrain.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: shellbrain
3
- Version: 0.1.48
3
+ Version: 0.1.49
4
4
  Summary: Repo-scoped Shellbrain CLI with explicit evidence-backed writes.
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -69,7 +69,7 @@ The episodic layer is truth. Empirical memory extracts. Concept memory abstracts
69
69
 
70
70
  ### Recall
71
71
 
72
- **Working agents call `shellbrain recall`.** That is the normal interface they have to think about. One command, **one _carefully curated_ compact brief**, with sources cited.
72
+ **Working agents call `shellbrain recall`.** That is the normal interface they have to think about. One command, **one _carefully curated_ compact brief** for the task at hand.
73
73
 
74
74
  Recall receives only the quoted query, so include the relevant task, failure, subsystem, or decision naturally in the question.
75
75
 
@@ -92,14 +92,7 @@ Response shape:
92
92
  "anchors": ["`README.md`"],
93
93
  "conflicts": ["..."],
94
94
  "gaps": ["..."],
95
- "next_checks": ["..."],
96
- "sources": [
97
- {
98
- "kind": "memory",
99
- "id": "...",
100
- "section": "direct"
101
- }
102
- ]
95
+ "next_checks": ["..."]
103
96
  },
104
97
  "fallback_reason": null
105
98
  },
@@ -55,7 +55,7 @@ The episodic layer is truth. Empirical memory extracts. Concept memory abstracts
55
55
 
56
56
  ### Recall
57
57
 
58
- **Working agents call `shellbrain recall`.** That is the normal interface they have to think about. One command, **one _carefully curated_ compact brief**, with sources cited.
58
+ **Working agents call `shellbrain recall`.** That is the normal interface they have to think about. One command, **one _carefully curated_ compact brief** for the task at hand.
59
59
 
60
60
  Recall receives only the quoted query, so include the relevant task, failure, subsystem, or decision naturally in the question.
61
61
 
@@ -78,14 +78,7 @@ Response shape:
78
78
  "anchors": ["`README.md`"],
79
79
  "conflicts": ["..."],
80
80
  "gaps": ["..."],
81
- "next_checks": ["..."],
82
- "sources": [
83
- {
84
- "kind": "memory",
85
- "id": "...",
86
- "section": "direct"
87
- }
88
- ]
81
+ "next_checks": ["..."]
89
82
  },
90
83
  "fallback_reason": null
91
84
  },
@@ -174,10 +174,7 @@ def _provider_result(
174
174
 
175
175
  read_trace = _read_trace(inner_agent_result)
176
176
  source_items = _source_items_from_read_trace(read_trace)
177
- brief = _normalize_provider_brief(
178
- inner_agent_result.brief or {},
179
- deterministic_sources=_sources_from_source_items(source_items),
180
- )
177
+ brief = _normalize_provider_brief(inner_agent_result.brief or {})
181
178
  fallback_reason = (
182
179
  "no_candidates"
183
180
  if not source_items and _read_trace_no_context_reason(read_trace)
@@ -271,10 +268,7 @@ def _deterministic_graph_result(
271
268
  )
272
269
  if synthesis_result.status == "ok" and synthesis_result.brief is not None:
273
270
  return RecallMemoryResult(
274
- brief=_normalize_provider_brief(
275
- synthesis_result.brief,
276
- deterministic_sources=_sources_from_source_items(source_items),
277
- ),
271
+ brief=_normalize_provider_brief(synthesis_result.brief),
278
272
  fallback_reason=None,
279
273
  telemetry={
280
274
  "candidate_pack": graph_pack,
@@ -432,16 +426,13 @@ def _no_context_brief() -> dict[str, Any]:
432
426
  "conflicts": [],
433
427
  "gaps": ["Shellbrain has no relevant memories or concepts for this query."],
434
428
  "next_checks": [],
435
- "sources": [],
436
429
  }
437
430
 
438
431
 
439
- def _normalize_provider_brief(
440
- brief: dict[str, Any], *, deterministic_sources: list[dict[str, Any]]
441
- ) -> dict[str, Any]:
432
+ def _normalize_provider_brief(brief: dict[str, Any]) -> dict[str, Any]:
442
433
  """Ensure provider output keeps the stable worker-facing brief shape."""
443
434
 
444
- normalized = {
435
+ return {
445
436
  "summary": str(brief.get("summary") or "").strip()
446
437
  or "Shellbrain synthesized relevant recall context.",
447
438
  "constraints": _string_list(brief.get("constraints")),
@@ -452,9 +443,7 @@ def _normalize_provider_brief(
452
443
  "conflicts": _string_list(brief.get("conflicts")),
453
444
  "gaps": _string_list(brief.get("gaps")),
454
445
  "next_checks": _string_list(brief.get("next_checks")),
455
- "sources": deterministic_sources,
456
446
  }
457
- return normalized
458
447
 
459
448
 
460
449
  def _string_list(value: Any) -> list[str]:
@@ -589,7 +578,6 @@ def _source_items_from_read_trace(read_trace: dict[str, Any]) -> list[dict[str,
589
578
  "source_kind": source_kind,
590
579
  "source_id": source_id,
591
580
  "input_section": "inner_agent.read_trace",
592
- "output_section": "sources",
593
581
  }
594
582
  )
595
583
  ordinal += 1
@@ -604,29 +592,12 @@ def _source_items_from_read_trace(read_trace: dict[str, Any]) -> list[dict[str,
604
592
  "source_kind": "concept",
605
593
  "source_id": concept_ref,
606
594
  "input_section": "inner_agent.read_trace",
607
- "output_section": "sources",
608
595
  }
609
596
  )
610
597
  ordinal += 1
611
598
  return items
612
599
 
613
600
 
614
- def _sources_from_source_items(
615
- source_items: list[dict[str, Any]]
616
- ) -> list[dict[str, Any]]:
617
- """Render brief sources from telemetry provenance rows."""
618
-
619
- return [
620
- {
621
- "kind": item["source_kind"],
622
- "id": item["source_id"],
623
- "section": item["input_section"],
624
- }
625
- for item in source_items
626
- if item.get("output_section") is not None
627
- ]
628
-
629
-
630
601
  def _read_trace_no_context_reason(read_trace: dict[str, Any]) -> str | None:
631
602
  """Return an explicit no-context reason from provider trace, when present."""
632
603
 
@@ -220,7 +220,6 @@ def deterministic_brief_from_graph_pack(pack: dict[str, Any]) -> dict[str, Any]:
220
220
  "conflicts": [],
221
221
  "gaps": ["Shellbrain has no relevant memories or concepts for this query."],
222
222
  "next_checks": [],
223
- "sources": [],
224
223
  }
225
224
  concept_items = concepts + neighbors
226
225
  constraints = _brief_memory_texts(
@@ -265,7 +264,6 @@ def deterministic_brief_from_graph_pack(pack: dict[str, Any]) -> dict[str, Any]:
265
264
  ),
266
265
  "gaps": [],
267
266
  "next_checks": _next_checks(pack),
268
- "sources": _sources_from_graph_pack(pack),
269
267
  }
270
268
 
271
269
 
@@ -288,7 +286,6 @@ def source_items_from_graph_pack(pack: dict[str, Any]) -> list[dict[str, Any]]:
288
286
  "source_kind": "memory",
289
287
  "source_id": source_id,
290
288
  "input_section": _source_section_for_memory(memory),
291
- "output_section": "sources",
292
289
  }
293
290
  )
294
291
  ordinal += 1
@@ -309,7 +306,6 @@ def source_items_from_graph_pack(pack: dict[str, Any]) -> list[dict[str, Any]]:
309
306
  "source_kind": "concept",
310
307
  "source_id": str(source_id),
311
308
  "input_section": "concept_orientation",
312
- "output_section": "sources",
313
309
  }
314
310
  )
315
311
  ordinal += 1
@@ -1208,18 +1204,6 @@ def _next_checks(pack: dict[str, Any]) -> list[str]:
1208
1204
  return list(dict.fromkeys(checks))[:3]
1209
1205
 
1210
1206
 
1211
- def _sources_from_graph_pack(pack: dict[str, Any]) -> list[dict[str, str]]:
1212
- return [
1213
- {
1214
- "kind": item["source_kind"],
1215
- "id": item["source_id"],
1216
- "section": item["input_section"],
1217
- }
1218
- for item in source_items_from_graph_pack(pack)
1219
- if item.get("output_section") is not None
1220
- ]
1221
-
1222
-
1223
1207
  def _conflict_summary(item: object) -> str:
1224
1208
  if isinstance(item, dict):
1225
1209
  return str(item.get("summary") or item.get("reason") or item)
@@ -154,13 +154,13 @@ context, with empty or minimal arrays and a concrete
154
154
  Lead with the answer. Keep only details that change what the worker should do.
155
155
  Use plain English. One idea per sentence. Leave sections empty unless useful.
156
156
  Summary: max two sentences. Lists: max three items. Items: max one sentence.
157
- Full provenance belongs in telemetry; keep visible sources and anchors minimal.
157
+ Full provenance belongs in telemetry; keep visible anchors minimal.
158
158
 
159
159
  # OUTPUT
160
160
  Return only valid JSON matching `output_contract`.
161
161
  The brief must be compact and action-oriented: summary, constraints,
162
162
  known_traps, prior_cases, concept_orientation, anchors, conflicts, gaps,
163
- next_checks, and sources. Use conflicts for stale, disputed, superseded,
163
+ and next_checks. Use conflicts for stale, disputed, superseded,
164
164
  low-confidence, or mutually inconsistent context. Use gaps for missing context
165
165
  or unresolved questions. Use next_checks for one to three concrete checks the
166
166
  worker should perform because retrieved context makes them high leverage.
@@ -317,9 +317,8 @@ Summary: max two sentences. Lists: max three items. Items: max one sentence.
317
317
  Full provenance belongs in telemetry; keep visible anchors minimal.
318
318
 
319
319
  # OUTPUT
320
- Return only valid JSON matching `output_contract`. Return a `brief` object only;
321
- do not include read_trace or sources. Keep each list compact. Shellbrain attaches
322
- deterministic source provenance after synthesis.
320
+ Return only valid JSON matching `output_contract`. Return a `brief` object only.
321
+ Keep each list compact.
323
322
  """
324
323
 
325
324
 
@@ -903,14 +902,6 @@ def render_build_context_prompt(request: InnerAgentRunRequest) -> str:
903
902
  "conflicts": ["string"],
904
903
  "gaps": ["string"],
905
904
  "next_checks": ["string"],
906
- "sources": [
907
- {
908
- "kind": "memory|concept|episode_event",
909
- "id": "source id or concept ref",
910
- "facet": "claim|relation|grounding|memory_link|event|memory when applicable",
911
- "used_in": "summary|constraints|known_traps|prior_cases|concept_orientation|anchors|conflicts|gaps|next_checks",
912
- }
913
- ],
914
905
  },
915
906
  "read_trace": {
916
907
  "commands": [
@@ -50,7 +50,6 @@ def build_recall_summary_records(
50
50
  source_kind=str(item["source_kind"]),
51
51
  source_id=str(item["source_id"]),
52
52
  input_section=str(item["input_section"]),
53
- output_section=_optional_string(item.get("output_section")),
54
53
  )
55
54
  )
56
55
 
@@ -107,7 +107,6 @@ class RecallSourceItemRecord:
107
107
  source_kind: str
108
108
  source_id: str
109
109
  input_section: str
110
- output_section: str | None
111
110
 
112
111
 
113
112
  @dataclass(frozen=True)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "shellbrain"
7
- version = "0.1.48"
7
+ version = "0.1.49"
8
8
  description = "Repo-scoped Shellbrain CLI with explicit evidence-backed writes."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: shellbrain
3
- Version: 0.1.48
3
+ Version: 0.1.49
4
4
  Summary: Repo-scoped Shellbrain CLI with explicit evidence-backed writes.
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -69,7 +69,7 @@ The episodic layer is truth. Empirical memory extracts. Concept memory abstracts
69
69
 
70
70
  ### Recall
71
71
 
72
- **Working agents call `shellbrain recall`.** That is the normal interface they have to think about. One command, **one _carefully curated_ compact brief**, with sources cited.
72
+ **Working agents call `shellbrain recall`.** That is the normal interface they have to think about. One command, **one _carefully curated_ compact brief** for the task at hand.
73
73
 
74
74
  Recall receives only the quoted query, so include the relevant task, failure, subsystem, or decision naturally in the question.
75
75
 
@@ -92,14 +92,7 @@ Response shape:
92
92
  "anchors": ["`README.md`"],
93
93
  "conflicts": ["..."],
94
94
  "gaps": ["..."],
95
- "next_checks": ["..."],
96
- "sources": [
97
- {
98
- "kind": "memory",
99
- "id": "...",
100
- "section": "direct"
101
- }
102
- ]
95
+ "next_checks": ["..."]
103
96
  },
104
97
  "fallback_reason": null
105
98
  },
File without changes
File without changes