alphacouncil-agent 0.9.2 → 1.0.0

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 (493) hide show
  1. package/.claude/commands/alpha.md +22 -3
  2. package/.claude-plugin/marketplace.json +3 -3
  3. package/.claude-plugin/plugin.json +2 -2
  4. package/.codex-plugin/plugin.json +4 -4
  5. package/.grok/commands/alpha.md +22 -3
  6. package/.opencode/command/alpha.md +22 -3
  7. package/AGENTS.md +42 -4
  8. package/CHANGELOG.md +164 -0
  9. package/CLAUDE.md +59 -7
  10. package/README.ja.md +25 -11
  11. package/README.md +44 -12
  12. package/README.zh-CN.md +37 -12
  13. package/commands/alpha.md +22 -3
  14. package/data/authored/core-seats.mjs +808 -0
  15. package/data/authored/growth-seats.mjs +581 -0
  16. package/data/authored/index.mjs +114 -0
  17. package/data/authored/quant-seats.mjs +564 -0
  18. package/data/authored/value-seats.mjs +663 -0
  19. package/data/build-profile.v1.json +2 -1
  20. package/data/council-evaluation-protocol.v1.json +7 -4
  21. package/data/master-selector-method-locales.v1.mjs +296 -0
  22. package/data/persona-v3-ai-assisted-solo-profile.v1.json +2 -2
  23. package/data/persona-v3-build-specs.v1.mjs +60 -3
  24. package/docs/INSTALL.md +43 -6
  25. package/docs/personas.md +2 -1
  26. package/docs/plans/v1.0-roadmap.md +487 -0
  27. package/docs/releases/v0.9.3.md +86 -0
  28. package/docs/releases/v0.9.4.md +79 -0
  29. package/docs/releases/v0.9.5.md +96 -0
  30. package/docs/releases/v1.0.0.md +164 -0
  31. package/docs/report-contract.md +75 -2
  32. package/knowledge/ai-assisted-solo/experiments/runs/a.json +13 -13
  33. package/knowledge/ai-assisted-solo/experiments/runs/b.json +2 -2
  34. package/knowledge/ai-assisted-solo/experiments/runs/c.json +2 -2
  35. package/knowledge/ai-assisted-solo/experiments/runs/d13.json +126 -126
  36. package/knowledge/ai-assisted-solo/experiments/runs/d26.json +274 -254
  37. package/knowledge/ai-assisted-solo/experiments/runs/e-d13.json +129 -129
  38. package/knowledge/ai-assisted-solo/experiments/runs/e-d26.json +277 -257
  39. package/knowledge/ai-assisted-solo/experiments/runs/h_ai_reference.json +278 -258
  40. package/knowledge/ai-assisted-solo/experiments/simulation-input.json +7278 -556
  41. package/knowledge/ai-assisted-solo/experiments/simulation-manifest.json +22 -22
  42. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_ackman/reviews/{change_value_bridge.ai-review.json → market_capitalisation.ai-review.json} +46 -46
  43. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_ackman/reviews/{power_map.ai-review.json → owner_earnings_yield.ai-review.json} +46 -46
  44. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_aschenbrenner/reviews/{compute_power_bridge.ai-review.json → market_capitalisation.ai-review.json} +46 -46
  45. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_aschenbrenner/reviews/{timeline_reverse_valuation.ai-review.json → price_implied_cash_yield.ai-review.json} +46 -46
  46. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_asness/reviews/{crowding_cost_stress.ai-review.json → nominal_earnings_yield_gap.ai-review.json} +49 -49
  47. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_asness/reviews/{factor_decomposer.ai-review.json → real_earnings_yield_gap.ai-review.json} +49 -49
  48. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_bogle/reviews/expected_return_over_long_bond.ai-review.json +277 -0
  49. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_bogle/reviews/fundamental_expected_return.ai-review.json +277 -0
  50. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_buffett/reviews/{incremental_returns.ai-review.json → market_capitalisation.ai-review.json} +46 -46
  51. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_buffett/reviews/{owner_earnings_rebuilder.ai-review.json → owner_earnings_yield.ai-review.json} +46 -46
  52. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_burry/reviews/{mispricing_carry.ai-review.json → net_current_asset_surplus_per_share.ai-review.json} +49 -49
  53. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_burry/reviews/{capital_structure_reader.ai-review.json → net_current_asset_value_per_share.ai-review.json} +46 -46
  54. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_cathie_wood/reviews/{cost_adoption_curve.ai-review.json → current_cash_yield.ai-review.json} +46 -46
  55. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_cathie_wood/reviews/{capture_valuation_bridge.ai-review.json → market_capitalisation.ai-review.json} +46 -46
  56. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_dalio/reviews/{debt_driver_stress.ai-review.json → policy_real_rate.ai-review.json} +49 -49
  57. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_dalio/reviews/{regime_classifier.ai-review.json → real_curve_slope.ai-review.json} +49 -49
  58. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_damodaran/reviews/{reverse_valuation.ai-review.json → implied_equity_risk_premium.ai-review.json} +49 -49
  59. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_damodaran/reviews/{story_dcf.ai-review.json → premium_versus_long_run_average.ai-review.json} +49 -49
  60. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_druckenmiller/reviews/{liquidity_revision_map.ai-review.json → liquidity_curve_impulse.ai-review.json} +49 -49
  61. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_druckenmiller/reviews/{inflection_payoff.ai-review.json → policy_real_rate.ai-review.json} +49 -49
  62. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_duan_yongping/reviews/{opportunity_cost.ai-review.json → five_year_opportunity_cost.ai-review.json} +46 -46
  63. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_duan_yongping/reviews/{user_value_evidence.ai-review.json → margin_retention.ai-review.json} +46 -46
  64. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_fisher/reviews/{research_productivity.ai-review.json → margin_retention.ai-review.json} +46 -46
  65. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_fisher/reviews/{scuttlebutt_graph.ai-review.json → reinvestment_spread.ai-review.json} +49 -49
  66. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_forensic_short/reviews/{borrow_catalyst.ai-review.json → cash_conversion_gap.ai-review.json} +49 -49
  67. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_forensic_short/reviews/{accounting_rebuilder.ai-review.json → cash_cover_of_leverage.ai-review.json} +46 -46
  68. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_graham/reviews/{asset_floor.ai-review.json → defensive_hurdle_base.ai-review.json} +46 -46
  69. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_graham/reviews/{normalized_earnings.ai-review.json → half_normalised_earnings_yield.ai-review.json} +46 -46
  70. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_jhunjhunwala/reviews/{penetration_liquidity.ai-review.json → cash_quality_gap.ai-review.json} +49 -49
  71. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_jhunjhunwala/reviews/{promoter_governance.ai-review.json → real_structural_growth.ai-review.json} +49 -49
  72. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_klarman/reviews/{recovery_waterfall.ai-review.json → downside_asset_coverage.ai-review.json} +46 -46
  73. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_klarman/reviews/{cash_catalyst_compare.ai-review.json → market_capitalisation.ai-review.json} +46 -46
  74. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_li_lu/reviews/{promise_integrity_ledger.ai-review.json → cash_backed_decade_return.ai-review.json} +46 -46
  75. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_li_lu/reviews/{ten_year_return_bridge.ai-review.json → decade_return_over_long_bond.ai-review.json} +49 -49
  76. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_lynch/reviews/{story_numbers_check.ai-review.json → growth_justified_capitalisation.ai-review.json} +46 -46
  77. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_lynch/reviews/{category_classifier.ai-review.json → market_capitalisation.ai-review.json} +46 -46
  78. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_marks/reviews/{cycle_temperature.ai-review.json → credit_cycle_position.ai-review.json} +49 -49
  79. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_marks/reviews/{implied_expectations.ai-review.json → equity_over_corporate_debt.ai-review.json} +49 -49
  80. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_munger/reviews/{failure_path_graph.ai-review.json → debt_service_cushion.ai-review.json} +49 -49
  81. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_munger/reviews/{incentive_map.ai-review.json → reported_earnings_cash_gap.ai-review.json} +49 -49
  82. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_natenberg/reviews/{surface_builder.ai-review.json → normalised_skew.ai-review.json} +46 -46
  83. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_natenberg/reviews/{greeks_payoff.ai-review.json → round_trip_cost.ai-review.json} +46 -46
  84. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_pabrai/reviews/{downside_floor.ai-review.json → downside_floor_coverage.ai-review.json} +46 -46
  85. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_pabrai/reviews/{discrete_payoff.ai-review.json → market_capitalisation.ai-review.json} +46 -46
  86. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_simons/reviews/{oos_cost_test.ai-review.json → absolute_session_move.ai-review.json} +42 -42
  87. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_simons/reviews/{leakage_audit.ai-review.json → session_move_over_implied.ai-review.json} +46 -46
  88. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_sinclair/reviews/{realized_vol_forecast.ai-review.json → round_trip_cost.ai-review.json} +46 -46
  89. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_sinclair/reviews/{net_edge_sizer.ai-review.json → volatility_per_unit_of_width.ai-review.json} +46 -46
  90. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_soros/reviews/{reversal_monitor.ai-review.json → credit_cycle_position.ai-review.json} +49 -49
  91. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_soros/reviews/{reflexivity_graph.ai-review.json → financing_burden.ai-review.json} +46 -46
  92. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_taleb/reviews/{tail_friction.ai-review.json → debt_service_cushion.ai-review.json} +49 -49
  93. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_taleb/reviews/{payoff_ruin.ai-review.json → normalised_skew.ai-review.json} +46 -46
  94. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_thorp/reviews/{edge_recalculator.ai-review.json → edge_per_unit_of_volatility.ai-review.json} +46 -46
  95. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/master_thorp/reviews/{fractional_kelly.ai-review.json → net_edge.ai-review.json} +49 -49
  96. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-formula-reviews/review-manifest.json +288 -270
  97. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-semantic-adjudications/index.json +2 -2
  98. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-semantic-extractions/index.json +2 -2
  99. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-semantic-skeptic-reviews/index.json +2 -2
  100. package/knowledge/ai-assisted-solo/reviews/persona-v3-ai-source-prereviews/index.json +6 -2
  101. package/knowledge/solo-test/masters/master_ackman/decision_policy.json +122 -11
  102. package/knowledge/solo-test/masters/master_ackman/doctrine.jsonl +2 -2
  103. package/knowledge/solo-test/masters/master_ackman/manifest.json +27 -10
  104. package/knowledge/solo-test/masters/master_ackman/provisional-index.json +3 -3
  105. package/knowledge/solo-test/masters/master_ackman/sources.jsonl +1 -1
  106. package/knowledge/solo-test/masters/master_ackman/tools.json +56 -30
  107. package/knowledge/solo-test/masters/master_aschenbrenner/decision_policy.json +101 -10
  108. package/knowledge/solo-test/masters/master_aschenbrenner/doctrine.jsonl +2 -2
  109. package/knowledge/solo-test/masters/master_aschenbrenner/manifest.json +26 -8
  110. package/knowledge/solo-test/masters/master_aschenbrenner/provisional-index.json +3 -3
  111. package/knowledge/solo-test/masters/master_aschenbrenner/sources.jsonl +1 -1
  112. package/knowledge/solo-test/masters/master_aschenbrenner/tools.json +56 -30
  113. package/knowledge/solo-test/masters/master_asness/decision_policy.json +89 -10
  114. package/knowledge/solo-test/masters/master_asness/doctrine.jsonl +2 -2
  115. package/knowledge/solo-test/masters/master_asness/manifest.json +25 -8
  116. package/knowledge/solo-test/masters/master_asness/provisional-index.json +3 -3
  117. package/knowledge/solo-test/masters/master_asness/sources.jsonl +1 -1
  118. package/knowledge/solo-test/masters/master_asness/tools.json +56 -30
  119. package/knowledge/solo-test/masters/master_bogle/counterfactuals.jsonl +0 -0
  120. package/knowledge/solo-test/masters/master_bogle/decision_cases.jsonl +0 -0
  121. package/knowledge/solo-test/masters/master_bogle/decision_policy.json +170 -0
  122. package/knowledge/solo-test/masters/master_bogle/doctrine.jsonl +14 -0
  123. package/knowledge/solo-test/masters/master_bogle/evaluation/calibration_cases.jsonl +0 -0
  124. package/knowledge/solo-test/masters/master_bogle/evaluation/experiments.json +5 -0
  125. package/knowledge/solo-test/masters/master_bogle/evaluation/golden_cases.jsonl +0 -0
  126. package/knowledge/solo-test/masters/master_bogle/evaluation/pairwise_cases.jsonl +0 -0
  127. package/knowledge/solo-test/masters/master_bogle/failures.jsonl +0 -0
  128. package/knowledge/solo-test/masters/master_bogle/manifest.json +141 -0
  129. package/knowledge/solo-test/masters/master_bogle/memory_policy.json +5 -0
  130. package/knowledge/solo-test/masters/master_bogle/provisional-index.json +41 -0
  131. package/knowledge/solo-test/masters/master_bogle/research_policy.json +11 -0
  132. package/knowledge/solo-test/masters/master_bogle/sources.jsonl +1 -0
  133. package/knowledge/solo-test/masters/master_bogle/tools.json +120 -0
  134. package/knowledge/solo-test/masters/master_bogle/voice.en.md +7 -0
  135. package/knowledge/solo-test/masters/master_bogle/voice.zh.md +7 -0
  136. package/knowledge/solo-test/masters/master_buffett/decision_policy.json +102 -11
  137. package/knowledge/solo-test/masters/master_buffett/doctrine.jsonl +2 -2
  138. package/knowledge/solo-test/masters/master_buffett/manifest.json +24 -8
  139. package/knowledge/solo-test/masters/master_buffett/provisional-index.json +3 -3
  140. package/knowledge/solo-test/masters/master_buffett/sources.jsonl +1 -1
  141. package/knowledge/solo-test/masters/master_buffett/tools.json +55 -29
  142. package/knowledge/solo-test/masters/master_burry/decision_policy.json +102 -12
  143. package/knowledge/solo-test/masters/master_burry/doctrine.jsonl +2 -2
  144. package/knowledge/solo-test/masters/master_burry/manifest.json +26 -10
  145. package/knowledge/solo-test/masters/master_burry/provisional-index.json +3 -3
  146. package/knowledge/solo-test/masters/master_burry/sources.jsonl +1 -1
  147. package/knowledge/solo-test/masters/master_burry/tools.json +56 -30
  148. package/knowledge/solo-test/masters/master_cathie_wood/decision_policy.json +74 -12
  149. package/knowledge/solo-test/masters/master_cathie_wood/doctrine.jsonl +2 -2
  150. package/knowledge/solo-test/masters/master_cathie_wood/manifest.json +26 -10
  151. package/knowledge/solo-test/masters/master_cathie_wood/provisional-index.json +3 -3
  152. package/knowledge/solo-test/masters/master_cathie_wood/sources.jsonl +1 -1
  153. package/knowledge/solo-test/masters/master_cathie_wood/tools.json +56 -30
  154. package/knowledge/solo-test/masters/master_dalio/decision_policy.json +123 -16
  155. package/knowledge/solo-test/masters/master_dalio/doctrine.jsonl +2 -2
  156. package/knowledge/solo-test/masters/master_dalio/manifest.json +24 -8
  157. package/knowledge/solo-test/masters/master_dalio/provisional-index.json +3 -3
  158. package/knowledge/solo-test/masters/master_dalio/sources.jsonl +1 -1
  159. package/knowledge/solo-test/masters/master_dalio/tools.json +56 -30
  160. package/knowledge/solo-test/masters/master_damodaran/decision_policy.json +58 -10
  161. package/knowledge/solo-test/masters/master_damodaran/doctrine.jsonl +2 -2
  162. package/knowledge/solo-test/masters/master_damodaran/manifest.json +23 -8
  163. package/knowledge/solo-test/masters/master_damodaran/provisional-index.json +3 -3
  164. package/knowledge/solo-test/masters/master_damodaran/sources.jsonl +1 -1
  165. package/knowledge/solo-test/masters/master_damodaran/tools.json +54 -28
  166. package/knowledge/solo-test/masters/master_druckenmiller/decision_policy.json +89 -10
  167. package/knowledge/solo-test/masters/master_druckenmiller/doctrine.jsonl +2 -2
  168. package/knowledge/solo-test/masters/master_druckenmiller/manifest.json +25 -8
  169. package/knowledge/solo-test/masters/master_druckenmiller/provisional-index.json +3 -3
  170. package/knowledge/solo-test/masters/master_druckenmiller/sources.jsonl +1 -1
  171. package/knowledge/solo-test/masters/master_druckenmiller/tools.json +55 -29
  172. package/knowledge/solo-test/masters/master_duan_yongping/decision_policy.json +138 -13
  173. package/knowledge/solo-test/masters/master_duan_yongping/doctrine.jsonl +2 -2
  174. package/knowledge/solo-test/masters/master_duan_yongping/manifest.json +31 -11
  175. package/knowledge/solo-test/masters/master_duan_yongping/provisional-index.json +3 -3
  176. package/knowledge/solo-test/masters/master_duan_yongping/sources.jsonl +1 -1
  177. package/knowledge/solo-test/masters/master_duan_yongping/tools.json +82 -30
  178. package/knowledge/solo-test/masters/master_fisher/decision_policy.json +102 -11
  179. package/knowledge/solo-test/masters/master_fisher/doctrine.jsonl +2 -2
  180. package/knowledge/solo-test/masters/master_fisher/manifest.json +27 -10
  181. package/knowledge/solo-test/masters/master_fisher/provisional-index.json +3 -3
  182. package/knowledge/solo-test/masters/master_fisher/sources.jsonl +1 -1
  183. package/knowledge/solo-test/masters/master_fisher/tools.json +58 -32
  184. package/knowledge/solo-test/masters/master_forensic_short/decision_policy.json +93 -14
  185. package/knowledge/solo-test/masters/master_forensic_short/doctrine.jsonl +2 -2
  186. package/knowledge/solo-test/masters/master_forensic_short/manifest.json +20 -8
  187. package/knowledge/solo-test/masters/master_forensic_short/provisional-index.json +3 -3
  188. package/knowledge/solo-test/masters/master_forensic_short/sources.jsonl +1 -1
  189. package/knowledge/solo-test/masters/master_forensic_short/tools.json +53 -27
  190. package/knowledge/solo-test/masters/master_graham/decision_policy.json +103 -12
  191. package/knowledge/solo-test/masters/master_graham/doctrine.jsonl +2 -2
  192. package/knowledge/solo-test/masters/master_graham/manifest.json +26 -8
  193. package/knowledge/solo-test/masters/master_graham/provisional-index.json +3 -3
  194. package/knowledge/solo-test/masters/master_graham/sources.jsonl +1 -1
  195. package/knowledge/solo-test/masters/master_graham/tools.json +67 -28
  196. package/knowledge/solo-test/masters/master_jhunjhunwala/decision_policy.json +77 -12
  197. package/knowledge/solo-test/masters/master_jhunjhunwala/doctrine.jsonl +2 -2
  198. package/knowledge/solo-test/masters/master_jhunjhunwala/manifest.json +25 -10
  199. package/knowledge/solo-test/masters/master_jhunjhunwala/provisional-index.json +3 -3
  200. package/knowledge/solo-test/masters/master_jhunjhunwala/sources.jsonl +1 -1
  201. package/knowledge/solo-test/masters/master_jhunjhunwala/tools.json +54 -28
  202. package/knowledge/solo-test/masters/master_klarman/decision_policy.json +105 -14
  203. package/knowledge/solo-test/masters/master_klarman/doctrine.jsonl +2 -2
  204. package/knowledge/solo-test/masters/master_klarman/manifest.json +22 -6
  205. package/knowledge/solo-test/masters/master_klarman/provisional-index.json +3 -3
  206. package/knowledge/solo-test/masters/master_klarman/sources.jsonl +1 -1
  207. package/knowledge/solo-test/masters/master_klarman/tools.json +55 -29
  208. package/knowledge/solo-test/masters/master_li_lu/decision_policy.json +101 -10
  209. package/knowledge/solo-test/masters/master_li_lu/doctrine.jsonl +2 -2
  210. package/knowledge/solo-test/masters/master_li_lu/manifest.json +27 -10
  211. package/knowledge/solo-test/masters/master_li_lu/provisional-index.json +3 -3
  212. package/knowledge/solo-test/masters/master_li_lu/sources.jsonl +1 -1
  213. package/knowledge/solo-test/masters/master_li_lu/tools.json +58 -32
  214. package/knowledge/solo-test/masters/master_lynch/decision_policy.json +127 -16
  215. package/knowledge/solo-test/masters/master_lynch/doctrine.jsonl +2 -2
  216. package/knowledge/solo-test/masters/master_lynch/manifest.json +28 -10
  217. package/knowledge/solo-test/masters/master_lynch/provisional-index.json +3 -3
  218. package/knowledge/solo-test/masters/master_lynch/sources.jsonl +1 -1
  219. package/knowledge/solo-test/masters/master_lynch/tools.json +67 -28
  220. package/knowledge/solo-test/masters/master_marks/decision_policy.json +71 -9
  221. package/knowledge/solo-test/masters/master_marks/doctrine.jsonl +2 -2
  222. package/knowledge/solo-test/masters/master_marks/manifest.json +25 -10
  223. package/knowledge/solo-test/masters/master_marks/provisional-index.json +3 -3
  224. package/knowledge/solo-test/masters/master_marks/sources.jsonl +1 -1
  225. package/knowledge/solo-test/masters/master_marks/tools.json +54 -28
  226. package/knowledge/solo-test/masters/master_munger/decision_policy.json +141 -16
  227. package/knowledge/solo-test/masters/master_munger/doctrine.jsonl +2 -2
  228. package/knowledge/solo-test/masters/master_munger/manifest.json +24 -10
  229. package/knowledge/solo-test/masters/master_munger/provisional-index.json +3 -3
  230. package/knowledge/solo-test/masters/master_munger/sources.jsonl +1 -1
  231. package/knowledge/solo-test/masters/master_munger/tools.json +52 -26
  232. package/knowledge/solo-test/masters/master_natenberg/decision_policy.json +59 -11
  233. package/knowledge/solo-test/masters/master_natenberg/doctrine.jsonl +2 -2
  234. package/knowledge/solo-test/masters/master_natenberg/manifest.json +23 -10
  235. package/knowledge/solo-test/masters/master_natenberg/provisional-index.json +3 -3
  236. package/knowledge/solo-test/masters/master_natenberg/sources.jsonl +1 -1
  237. package/knowledge/solo-test/masters/master_natenberg/tools.json +50 -24
  238. package/knowledge/solo-test/masters/master_pabrai/decision_policy.json +125 -14
  239. package/knowledge/solo-test/masters/master_pabrai/doctrine.jsonl +2 -2
  240. package/knowledge/solo-test/masters/master_pabrai/manifest.json +22 -6
  241. package/knowledge/solo-test/masters/master_pabrai/provisional-index.json +3 -3
  242. package/knowledge/solo-test/masters/master_pabrai/sources.jsonl +1 -1
  243. package/knowledge/solo-test/masters/master_pabrai/tools.json +55 -29
  244. package/knowledge/solo-test/masters/master_simons/decision_policy.json +59 -11
  245. package/knowledge/solo-test/masters/master_simons/doctrine.jsonl +2 -2
  246. package/knowledge/solo-test/masters/master_simons/manifest.json +22 -8
  247. package/knowledge/solo-test/masters/master_simons/provisional-index.json +3 -3
  248. package/knowledge/solo-test/masters/master_simons/sources.jsonl +1 -1
  249. package/knowledge/solo-test/masters/master_simons/tools.json +43 -30
  250. package/knowledge/solo-test/masters/master_sinclair/decision_policy.json +59 -11
  251. package/knowledge/solo-test/masters/master_sinclair/doctrine.jsonl +2 -2
  252. package/knowledge/solo-test/masters/master_sinclair/manifest.json +22 -10
  253. package/knowledge/solo-test/masters/master_sinclair/provisional-index.json +3 -3
  254. package/knowledge/solo-test/masters/master_sinclair/sources.jsonl +1 -1
  255. package/knowledge/solo-test/masters/master_sinclair/tools.json +54 -28
  256. package/knowledge/solo-test/masters/master_soros/decision_policy.json +98 -10
  257. package/knowledge/solo-test/masters/master_soros/doctrine.jsonl +2 -2
  258. package/knowledge/solo-test/masters/master_soros/manifest.json +24 -11
  259. package/knowledge/solo-test/masters/master_soros/provisional-index.json +3 -3
  260. package/knowledge/solo-test/masters/master_soros/sources.jsonl +1 -1
  261. package/knowledge/solo-test/masters/master_soros/tools.json +54 -28
  262. package/knowledge/solo-test/masters/master_taleb/decision_policy.json +124 -13
  263. package/knowledge/solo-test/masters/master_taleb/doctrine.jsonl +2 -2
  264. package/knowledge/solo-test/masters/master_taleb/manifest.json +23 -9
  265. package/knowledge/solo-test/masters/master_taleb/provisional-index.json +3 -3
  266. package/knowledge/solo-test/masters/master_taleb/sources.jsonl +1 -1
  267. package/knowledge/solo-test/masters/master_taleb/tools.json +50 -24
  268. package/knowledge/solo-test/masters/master_thorp/decision_policy.json +61 -13
  269. package/knowledge/solo-test/masters/master_thorp/doctrine.jsonl +2 -2
  270. package/knowledge/solo-test/masters/master_thorp/manifest.json +25 -10
  271. package/knowledge/solo-test/masters/master_thorp/provisional-index.json +3 -3
  272. package/knowledge/solo-test/masters/master_thorp/sources.jsonl +1 -1
  273. package/knowledge/solo-test/masters/master_thorp/tools.json +56 -30
  274. package/knowledge/solo-test/persona-v3-solo-test-formulas/compilation-manifest.json +290 -264
  275. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_ackman/components/tools.json +58 -32
  276. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_ackman/provisional-derivations/market_capitalisation.derived-proxy-evidence.json +76 -0
  277. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_ackman/provisional-derivations/owner_earnings_yield.derived-proxy-evidence.json +76 -0
  278. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_aschenbrenner/components/tools.json +58 -32
  279. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_aschenbrenner/provisional-derivations/market_capitalisation.derived-proxy-evidence.json +76 -0
  280. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_aschenbrenner/provisional-derivations/price_implied_cash_yield.derived-proxy-evidence.json +76 -0
  281. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_asness/components/tools.json +58 -32
  282. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_asness/provisional-derivations/nominal_earnings_yield_gap.derived-proxy-evidence.json +76 -0
  283. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_asness/provisional-derivations/real_earnings_yield_gap.derived-proxy-evidence.json +76 -0
  284. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_bogle/components/tools.json +120 -0
  285. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_bogle/provisional-derivations/expected_return_over_long_bond.derived-proxy-evidence.json +77 -0
  286. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_bogle/provisional-derivations/fundamental_expected_return.derived-proxy-evidence.json +76 -0
  287. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_buffett/components/tools.json +57 -31
  288. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_buffett/provisional-derivations/market_capitalisation.derived-proxy-evidence.json +76 -0
  289. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_buffett/provisional-derivations/owner_earnings_yield.derived-proxy-evidence.json +76 -0
  290. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_burry/components/tools.json +58 -32
  291. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_burry/provisional-derivations/net_current_asset_surplus_per_share.derived-proxy-evidence.json +77 -0
  292. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_burry/provisional-derivations/net_current_asset_value_per_share.derived-proxy-evidence.json +76 -0
  293. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_cathie_wood/components/tools.json +58 -32
  294. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_cathie_wood/provisional-derivations/current_cash_yield.derived-proxy-evidence.json +76 -0
  295. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_cathie_wood/provisional-derivations/market_capitalisation.derived-proxy-evidence.json +76 -0
  296. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_dalio/components/tools.json +58 -32
  297. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_dalio/provisional-derivations/policy_real_rate.derived-proxy-evidence.json +76 -0
  298. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_dalio/provisional-derivations/real_curve_slope.derived-proxy-evidence.json +76 -0
  299. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_damodaran/components/tools.json +56 -30
  300. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_damodaran/provisional-derivations/implied_equity_risk_premium.derived-proxy-evidence.json +76 -0
  301. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_damodaran/provisional-derivations/{reverse_valuation.derived-proxy-evidence.json → premium_versus_long_run_average.derived-proxy-evidence.json} +29 -16
  302. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_druckenmiller/components/tools.json +57 -31
  303. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_druckenmiller/provisional-derivations/liquidity_curve_impulse.derived-proxy-evidence.json +76 -0
  304. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_druckenmiller/provisional-derivations/policy_real_rate.derived-proxy-evidence.json +76 -0
  305. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_duan_yongping/components/tools.json +84 -32
  306. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_duan_yongping/provisional-derivations/five_year_opportunity_cost.derived-proxy-evidence.json +102 -0
  307. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_duan_yongping/provisional-derivations/margin_retention.derived-proxy-evidence.json +76 -0
  308. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_fisher/components/tools.json +60 -34
  309. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_fisher/provisional-derivations/margin_retention.derived-proxy-evidence.json +76 -0
  310. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_fisher/provisional-derivations/reinvestment_spread.derived-proxy-evidence.json +76 -0
  311. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_forensic_short/components/tools.json +55 -29
  312. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_forensic_short/provisional-derivations/{accounting_rebuilder.derived-proxy-evidence.json → cash_conversion_gap.derived-proxy-evidence.json} +28 -15
  313. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_forensic_short/provisional-derivations/cash_cover_of_leverage.derived-proxy-evidence.json +76 -0
  314. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_graham/components/tools.json +69 -30
  315. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_graham/provisional-derivations/defensive_hurdle_base.derived-proxy-evidence.json +89 -0
  316. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_graham/provisional-derivations/half_normalised_earnings_yield.derived-proxy-evidence.json +76 -0
  317. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_jhunjhunwala/components/tools.json +56 -30
  318. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_jhunjhunwala/provisional-derivations/cash_quality_gap.derived-proxy-evidence.json +76 -0
  319. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_jhunjhunwala/provisional-derivations/real_structural_growth.derived-proxy-evidence.json +76 -0
  320. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_klarman/components/tools.json +57 -31
  321. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_klarman/provisional-derivations/downside_asset_coverage.derived-proxy-evidence.json +76 -0
  322. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_klarman/provisional-derivations/market_capitalisation.derived-proxy-evidence.json +76 -0
  323. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_li_lu/components/tools.json +60 -34
  324. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_li_lu/provisional-derivations/cash_backed_decade_return.derived-proxy-evidence.json +76 -0
  325. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_li_lu/provisional-derivations/decade_return_over_long_bond.derived-proxy-evidence.json +76 -0
  326. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_lynch/components/tools.json +69 -30
  327. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_lynch/provisional-derivations/growth_justified_capitalisation.derived-proxy-evidence.json +89 -0
  328. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_lynch/provisional-derivations/market_capitalisation.derived-proxy-evidence.json +76 -0
  329. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_marks/components/tools.json +56 -30
  330. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_marks/provisional-derivations/credit_cycle_position.derived-proxy-evidence.json +76 -0
  331. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_marks/provisional-derivations/equity_over_corporate_debt.derived-proxy-evidence.json +76 -0
  332. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_munger/components/tools.json +54 -28
  333. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_munger/provisional-derivations/debt_service_cushion.derived-proxy-evidence.json +76 -0
  334. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_munger/provisional-derivations/reported_earnings_cash_gap.derived-proxy-evidence.json +76 -0
  335. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_natenberg/components/tools.json +52 -26
  336. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_natenberg/provisional-derivations/{surface_builder.derived-proxy-evidence.json → normalised_skew.derived-proxy-evidence.json} +27 -14
  337. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_natenberg/provisional-derivations/round_trip_cost.derived-proxy-evidence.json +76 -0
  338. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_pabrai/components/tools.json +57 -31
  339. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_pabrai/provisional-derivations/downside_floor_coverage.derived-proxy-evidence.json +76 -0
  340. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_pabrai/provisional-derivations/market_capitalisation.derived-proxy-evidence.json +76 -0
  341. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_simons/components/tools.json +45 -32
  342. package/knowledge/solo-test/persona-v3-solo-test-formulas/{master_natenberg/provisional-derivations/greeks_payoff.derived-proxy-evidence.json → master_simons/provisional-derivations/absolute_session_move.derived-proxy-evidence.json} +17 -17
  343. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_simons/provisional-derivations/session_move_over_implied.derived-proxy-evidence.json +77 -0
  344. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_sinclair/components/tools.json +56 -30
  345. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_sinclair/provisional-derivations/round_trip_cost.derived-proxy-evidence.json +76 -0
  346. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_sinclair/provisional-derivations/volatility_per_unit_of_width.derived-proxy-evidence.json +76 -0
  347. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_soros/components/tools.json +56 -30
  348. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_soros/provisional-derivations/credit_cycle_position.derived-proxy-evidence.json +76 -0
  349. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_soros/provisional-derivations/financing_burden.derived-proxy-evidence.json +76 -0
  350. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_taleb/components/tools.json +52 -26
  351. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_taleb/provisional-derivations/debt_service_cushion.derived-proxy-evidence.json +76 -0
  352. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_taleb/provisional-derivations/{tail_friction.derived-proxy-evidence.json → normalised_skew.derived-proxy-evidence.json} +27 -14
  353. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_thorp/components/tools.json +58 -32
  354. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_thorp/provisional-derivations/edge_per_unit_of_volatility.derived-proxy-evidence.json +77 -0
  355. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_thorp/provisional-derivations/net_edge.derived-proxy-evidence.json +76 -0
  356. package/mcp/lib/breadth.mjs +122 -0
  357. package/mcp/lib/codex.mjs +3 -3
  358. package/mcp/lib/constants.mjs +76 -25
  359. package/mcp/lib/council-options.mjs +95 -40
  360. package/mcp/lib/council-selection.mjs +95 -9
  361. package/mcp/lib/damodaran.mjs +119 -0
  362. package/mcp/lib/fred.mjs +246 -0
  363. package/mcp/lib/fund-holdings-parsers.mjs +297 -0
  364. package/mcp/lib/fundamentals.mjs +801 -0
  365. package/mcp/lib/funds.mjs +750 -0
  366. package/mcp/lib/gates.mjs +149 -15
  367. package/mcp/lib/grounding.mjs +188 -36
  368. package/mcp/lib/index-aggregate.mjs +718 -0
  369. package/mcp/lib/insider-ownership.mjs +149 -0
  370. package/mcp/lib/instrument-facts.mjs +557 -0
  371. package/mcp/lib/instruments.mjs +191 -0
  372. package/mcp/lib/lang.mjs +109 -2
  373. package/mcp/lib/markdown.mjs +620 -138
  374. package/mcp/lib/master-catalog.mjs +32 -3
  375. package/mcp/lib/orchestrator.mjs +1121 -290
  376. package/mcp/lib/packets.mjs +227 -21
  377. package/mcp/lib/personas/engine.mjs +44 -31
  378. package/mcp/lib/personas-v3/compiler.mjs +2 -0
  379. package/mcp/lib/personas-v3/deterministic-executor.mjs +13 -2
  380. package/mcp/lib/personas-v3/ga-external-evidence.mjs +3 -2
  381. package/mcp/lib/personas-v3/ga-gate.mjs +2 -1
  382. package/mcp/lib/personas-v3/ga-package-evidence.mjs +5 -4
  383. package/mcp/lib/personas-v3/grounding-adapter.mjs +309 -2
  384. package/mcp/lib/personas-v3/loader.mjs +10 -7
  385. package/mcp/lib/personas-v3/production-root.mjs +5 -4
  386. package/mcp/lib/personas-v3/release-formula-evidence.mjs +14 -7
  387. package/mcp/lib/personas-v3/release-source-evidence.mjs +2 -1
  388. package/mcp/lib/personas-v3/releases.mjs +5 -4
  389. package/mcp/lib/personas-v3/runtime-release-integrity.mjs +6 -5
  390. package/mcp/lib/personas-v3/semantic-source-adjudication.mjs +2 -1
  391. package/mcp/lib/personas-v3/semantic-source-extraction.mjs +2 -1
  392. package/mcp/lib/personas-v3/semantic-source-skeptic-review.mjs +2 -1
  393. package/mcp/lib/personas-v3/source-acquisition.mjs +10 -3
  394. package/mcp/lib/personas-v3/source-review-operations.mjs +3 -2
  395. package/mcp/lib/personas-v3/staging.mjs +22 -3
  396. package/mcp/lib/prompts.mjs +119 -2
  397. package/mcp/lib/quotes.mjs +5 -0
  398. package/mcp/lib/rpc.mjs +101 -42
  399. package/mcp/lib/run-store.mjs +28 -3
  400. package/mcp/lib/sec.mjs +32 -0
  401. package/mcp/lib/tables.mjs +11 -0
  402. package/mcp/lib/voice.mjs +122 -0
  403. package/mcp/lib/xbrl-aggregates.mjs +153 -0
  404. package/mcp/lib/xbrl-series.mjs +339 -0
  405. package/mcp/lib/xlsx.mjs +155 -0
  406. package/package.json +5 -5
  407. package/personas/masters/masters-value/bogle.md +145 -0
  408. package/schemas/council-evaluation-protocol-v1.schema.json +2 -2
  409. package/schemas/persona-v3-ai-assisted-solo-profile-v1.schema.json +2 -2
  410. package/schemas/persona-v3-ai-machine-simulation-v1.schema.json +1 -1
  411. package/schemas/persona-v3-build-spec-v1.schema.json +3 -3
  412. package/schemas/persona-v3-release-formula-review-evidence-v1.schema.json +3 -3
  413. package/schemas/persona-v3-release-manifest-v1.schema.json +6 -6
  414. package/schemas/persona-v3-release-source-review-evidence-v1.schema.json +3 -3
  415. package/schemas/persona-v3-tool-graph-v1.schema.json +1 -1
  416. package/schemas/persona-v3.schema.json +37 -2
  417. package/schemas/source-review-batch-v1.schema.json +9 -9
  418. package/scripts/assemble-persona-v3-release.mjs +3 -2
  419. package/scripts/build-persona-v3-solo-test-packs.mjs +6 -8
  420. package/scripts/check-persona-v3-ga.mjs +1 -1
  421. package/scripts/check-persona-v3-production-candidates.mjs +1 -1
  422. package/scripts/compile-persona-v3-formulas.mjs +19 -18
  423. package/scripts/doctor.mjs +11 -9
  424. package/scripts/export-persona-source-review-batch.mjs +1 -1
  425. package/scripts/generate-persona-v3-drafts.mjs +2 -2
  426. package/scripts/lib/build-profile.mjs +24 -0
  427. package/scripts/lib/council-evaluation-protocol.mjs +7 -6
  428. package/scripts/lib/host-capabilities.mjs +2 -1
  429. package/scripts/lib/packaged-host-parity.mjs +63 -8
  430. package/scripts/lib/persona-v3-ai-assisted-solo-status.mjs +6 -4
  431. package/scripts/lib/persona-v3-ai-formula-review.mjs +6 -5
  432. package/scripts/lib/persona-v3-ai-machine-simulations.mjs +32 -4
  433. package/scripts/lib/persona-v3-build-specs.mjs +3 -2
  434. package/scripts/lib/persona-v3-draft-packs.mjs +2 -2
  435. package/scripts/lib/persona-v3-formula-pipeline.mjs +11 -10
  436. package/scripts/lib/persona-v3-production-candidates.mjs +10 -9
  437. package/scripts/lib/persona-v3-solo-formula-pipeline.mjs +182 -16
  438. package/scripts/lib/persona-v3-solo-test-packs.mjs +143 -16
  439. package/scripts/package-smoke.mjs +32 -12
  440. package/scripts/report-persona-corpus-gaps.mjs +4 -1
  441. package/scripts/review-persona-v3-solo-formulas.mjs +12 -8
  442. package/scripts/run-tests.mjs +23 -2
  443. package/scripts/scaffold-persona-v3-staging.mjs +1 -1
  444. package/skills/agent-skills-governance/SKILL.md +8 -2
  445. package/skills/alphacouncil-agent/SKILL.md +60 -9
  446. package/skills/public-equity-investing/SKILL.md +17 -0
  447. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_ackman/provisional-derivations/change_value_bridge.derived-proxy-evidence.json +0 -64
  448. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_ackman/provisional-derivations/power_map.derived-proxy-evidence.json +0 -64
  449. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_aschenbrenner/provisional-derivations/compute_power_bridge.derived-proxy-evidence.json +0 -64
  450. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_aschenbrenner/provisional-derivations/timeline_reverse_valuation.derived-proxy-evidence.json +0 -64
  451. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_asness/provisional-derivations/crowding_cost_stress.derived-proxy-evidence.json +0 -64
  452. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_asness/provisional-derivations/factor_decomposer.derived-proxy-evidence.json +0 -64
  453. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_buffett/provisional-derivations/incremental_returns.derived-proxy-evidence.json +0 -64
  454. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_buffett/provisional-derivations/owner_earnings_rebuilder.derived-proxy-evidence.json +0 -64
  455. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_burry/provisional-derivations/capital_structure_reader.derived-proxy-evidence.json +0 -64
  456. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_burry/provisional-derivations/mispricing_carry.derived-proxy-evidence.json +0 -64
  457. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_cathie_wood/provisional-derivations/capture_valuation_bridge.derived-proxy-evidence.json +0 -64
  458. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_cathie_wood/provisional-derivations/cost_adoption_curve.derived-proxy-evidence.json +0 -64
  459. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_dalio/provisional-derivations/debt_driver_stress.derived-proxy-evidence.json +0 -64
  460. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_dalio/provisional-derivations/regime_classifier.derived-proxy-evidence.json +0 -64
  461. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_damodaran/provisional-derivations/story_dcf.derived-proxy-evidence.json +0 -64
  462. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_druckenmiller/provisional-derivations/inflection_payoff.derived-proxy-evidence.json +0 -64
  463. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_druckenmiller/provisional-derivations/liquidity_revision_map.derived-proxy-evidence.json +0 -64
  464. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_duan_yongping/provisional-derivations/opportunity_cost.derived-proxy-evidence.json +0 -64
  465. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_duan_yongping/provisional-derivations/user_value_evidence.derived-proxy-evidence.json +0 -64
  466. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_fisher/provisional-derivations/research_productivity.derived-proxy-evidence.json +0 -64
  467. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_fisher/provisional-derivations/scuttlebutt_graph.derived-proxy-evidence.json +0 -64
  468. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_forensic_short/provisional-derivations/borrow_catalyst.derived-proxy-evidence.json +0 -64
  469. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_graham/provisional-derivations/asset_floor.derived-proxy-evidence.json +0 -64
  470. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_graham/provisional-derivations/normalized_earnings.derived-proxy-evidence.json +0 -64
  471. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_jhunjhunwala/provisional-derivations/penetration_liquidity.derived-proxy-evidence.json +0 -64
  472. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_jhunjhunwala/provisional-derivations/promoter_governance.derived-proxy-evidence.json +0 -64
  473. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_klarman/provisional-derivations/cash_catalyst_compare.derived-proxy-evidence.json +0 -64
  474. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_klarman/provisional-derivations/recovery_waterfall.derived-proxy-evidence.json +0 -64
  475. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_li_lu/provisional-derivations/promise_integrity_ledger.derived-proxy-evidence.json +0 -64
  476. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_li_lu/provisional-derivations/ten_year_return_bridge.derived-proxy-evidence.json +0 -64
  477. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_lynch/provisional-derivations/category_classifier.derived-proxy-evidence.json +0 -64
  478. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_lynch/provisional-derivations/story_numbers_check.derived-proxy-evidence.json +0 -64
  479. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_marks/provisional-derivations/cycle_temperature.derived-proxy-evidence.json +0 -64
  480. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_marks/provisional-derivations/implied_expectations.derived-proxy-evidence.json +0 -64
  481. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_munger/provisional-derivations/failure_path_graph.derived-proxy-evidence.json +0 -64
  482. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_munger/provisional-derivations/incentive_map.derived-proxy-evidence.json +0 -64
  483. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_pabrai/provisional-derivations/discrete_payoff.derived-proxy-evidence.json +0 -64
  484. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_pabrai/provisional-derivations/downside_floor.derived-proxy-evidence.json +0 -64
  485. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_simons/provisional-derivations/leakage_audit.derived-proxy-evidence.json +0 -64
  486. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_simons/provisional-derivations/oos_cost_test.derived-proxy-evidence.json +0 -64
  487. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_sinclair/provisional-derivations/net_edge_sizer.derived-proxy-evidence.json +0 -64
  488. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_sinclair/provisional-derivations/realized_vol_forecast.derived-proxy-evidence.json +0 -64
  489. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_soros/provisional-derivations/reflexivity_graph.derived-proxy-evidence.json +0 -64
  490. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_soros/provisional-derivations/reversal_monitor.derived-proxy-evidence.json +0 -64
  491. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_taleb/provisional-derivations/payoff_ruin.derived-proxy-evidence.json +0 -64
  492. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_thorp/provisional-derivations/edge_recalculator.derived-proxy-evidence.json +0 -64
  493. package/knowledge/solo-test/persona-v3-solo-test-formulas/master_thorp/provisional-derivations/fractional_kelly.derived-proxy-evidence.json +0 -64
@@ -12,7 +12,7 @@ Request: **$ARGUMENTS**
12
12
  | `$ARGUMENTS` looks like | Do this |
13
13
  |---|---|
14
14
  | *(empty)* | Print the mode table below and stop. Do not start a run. |
15
- | a ticker alone, or a question | **Full council.** Go to "Full council" below. |
15
+ | a ticker alone, or a question | **Full council.** Go to "Full council" below. Plugin-managed headless has a hard 30-minute queue-to-terminal bound; visible-host execution does not. |
16
16
  | ticker + `quick` | The plugin-managed headless `quick_v1` council: 4 fixed analysts, 1-4 selected methods, one parallel bull/bear round and a short PM inside a hard 10-minute ceiling. |
17
17
  | ticker + `screen` | `screen_ticker` only. No language-model judgment, no subagents. |
18
18
  | ticker + `options` | `get_options_chain` only. |
@@ -22,7 +22,7 @@ Request: **$ARGUMENTS**
22
22
  When `$ARGUMENTS` is empty, print exactly this and stop:
23
23
 
24
24
  ```
25
- /alpha <TICKER> full council — shows every master, then asks which to run
25
+ /alpha <TICKER> full council — shows every master; headless run is bounded <=30m
26
26
  /alpha <TICKER> quick quick_v1: 4 analysts incl. news + 1-4 masters + 1 parallel debate round (<=10m)
27
27
  /alpha <TICKER> screen mechanical filings screen only (no model spend)
28
28
  /alpha <TICKER> options IV term structure, skew, positioning (no model spend)
@@ -39,7 +39,9 @@ is and use `market_coverage`, rather than returning nothing.
39
39
 
40
40
  Say plainly that the four marked modes call keyless data tools and spawn no subagents, so
41
41
  they cost nothing beyond this turn. Council modes can launch model workers; selected method
42
- seats may instead complete deterministically or return a recorded `out_of_scope` result.
42
+ seats first complete deterministically (including recorded `out_of_scope`) and, on the
43
+ plugin-managed headless path, each selected v3 seat then gets one isolated voice worker that
44
+ may explain but cannot change the frozen stance. This is not the named person's real speech.
43
45
 
44
46
  ## Council selection gate — mandatory for full and quick
45
47
 
@@ -94,6 +96,23 @@ master-selection contract.
94
96
  6. Full mode fails closed at the evidence barrier. If any mandatory evidence role still
95
97
  fails after its bounded parse repair, do not spend more model calls on masters, bull/bear
96
98
  or PM. Persist an `incomplete` run naming the failed evidence and skipped downstream roles.
99
+ 7. For the hard runtime contract, call plugin-managed headless `analyze_symbol` once with
100
+ `council_mode:"full"`, `wait_for_completion:false`, the full-mode receipt and optionally
101
+ `total_timeout_ms` no greater than `1800000`. Poll the same durable `run_id` to terminal.
102
+ All eight mandatory evidence roles start in one wave; every selected v3 method gets a
103
+ frozen deterministic stance plus its own isolated voice worker; Bull/Bear run in parallel
104
+ within each of three rounds with a barrier between rounds; then the PM runs. Queueing,
105
+ retries and final persistence share the 30-minute clock. At expiry the saved run is
106
+ `incomplete`, never silently shortened or relabeled complete. This guarantees terminal
107
+ persistence, not all-seat success during search/model/data-provider degradation.
108
+ 8. `plan_visible_run` is owned by the external host. The plugin cannot force-stop its Task
109
+ agents, so visible-host full must not be advertised as meeting the 30-minute deadline.
110
+ 9. The terminal full handoff must include the system price snapshot (or explicit unavailable
111
+ gap), every selected stable master ID/stance/voice-worker explanation or failure, and all
112
+ eight analyst statuses and summaries. A method-seat explanation is a recorded provisional
113
+ lens output, never a quotation, endorsement or current statement by the named person.
114
+ System-owned labels support `zh-CN`, `en`, `ja` and `ko`; propagate the request language
115
+ to every worker.
97
116
 
98
117
  ## Quick mode — plugin-managed headless quick_v1
99
118
 
@@ -6,14 +6,14 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "AlphaCouncil plugins for public-equity research.",
9
- "version": "0.9.2"
9
+ "version": "1.0.0"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "alphacouncil-agent",
14
14
  "source": "./",
15
- "description": "Multi-agent equity research: evidence packets, bull/bear debate, portfolio-manager decision.",
16
- "version": "0.9.2",
15
+ "description": "Multi-agent company, ETF and index research: evidence packets, method seats, bull/bear debate and portfolio-manager synthesis.",
16
+ "version": "1.0.0",
17
17
  "author": {
18
18
  "name": "Zhao73"
19
19
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "alphacouncil-agent",
3
- "version": "0.9.2",
4
- "description": "Multi-agent public-equity research workflow for Claude Code: spawns analyst workers, gathers sourced JSON evidence packets, runs bull/bear debate, and produces a portfolio-manager Buy/Overweight/Hold/Underweight/Sell decision with a full report.",
3
+ "version": "1.0.0",
4
+ "description": "Multi-agent company, ETF and market-index research for Claude Code with sourced evidence, method seats, bull/bear debate and a full portfolio-manager report.",
5
5
  "author": {
6
6
  "name": "Zhao73"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "alphacouncil-agent",
3
- "version": "0.9.2",
4
- "description": "Host-visible or background public-equity research workflow with shared evidence packets.",
3
+ "version": "1.0.0",
4
+ "description": "Host-visible or background company, ETF and index research with shared evidence packets.",
5
5
  "author": {
6
6
  "name": "Zhao73"
7
7
  },
@@ -11,8 +11,8 @@
11
11
  "skills": "./skills/",
12
12
  "interface": {
13
13
  "displayName": "AlphaCouncil Agent",
14
- "shortDescription": "Run visible or background equity research workflows.",
15
- "longDescription": "AlphaCouncil Agent supports host-orchestrated visible Codex analyst threads for public-equity research, plus background MCP workers for saved evidence packets, filings, news, management commentary, valuation, debate, and portfolio decisions.",
14
+ "shortDescription": "Run company, ETF and index research councils.",
15
+ "longDescription": "AlphaCouncil Agent supports host-orchestrated visible Codex threads and background MCP workers for operating companies, ETF holdings look-through and aggregate index research, with saved evidence packets, filings, news, valuation, method seats, debate and portfolio decisions.",
16
16
  "developerName": "Zhao73",
17
17
  "category": "Finance",
18
18
  "capabilities": [
@@ -12,7 +12,7 @@ Request: **$ARGUMENTS**
12
12
  | `$ARGUMENTS` looks like | Do this |
13
13
  |---|---|
14
14
  | *(empty)* | Print the mode table below and stop. Do not start a run. |
15
- | a ticker alone, or a question | **Full council.** Go to "Full council" below. |
15
+ | a ticker alone, or a question | **Full council.** Go to "Full council" below. Plugin-managed headless has a hard 30-minute queue-to-terminal bound; visible-host execution does not. |
16
16
  | ticker + `quick` | The plugin-managed headless `quick_v1` council: 4 fixed analysts, 1-4 selected methods, one parallel bull/bear round and a short PM inside a hard 10-minute ceiling. |
17
17
  | ticker + `screen` | `screen_ticker` only. No language-model judgment, no subagents. |
18
18
  | ticker + `options` | `get_options_chain` only. |
@@ -22,7 +22,7 @@ Request: **$ARGUMENTS**
22
22
  When `$ARGUMENTS` is empty, print exactly this and stop:
23
23
 
24
24
  ```
25
- /alpha <TICKER> full council — shows every master, then asks which to run
25
+ /alpha <TICKER> full council — shows every master; headless run is bounded <=30m
26
26
  /alpha <TICKER> quick quick_v1: 4 analysts incl. news + 1-4 masters + 1 parallel debate round (<=10m)
27
27
  /alpha <TICKER> screen mechanical filings screen only (no model spend)
28
28
  /alpha <TICKER> options IV term structure, skew, positioning (no model spend)
@@ -39,7 +39,9 @@ is and use `market_coverage`, rather than returning nothing.
39
39
 
40
40
  Say plainly that the four marked modes call keyless data tools and spawn no subagents, so
41
41
  they cost nothing beyond this turn. Council modes can launch model workers; selected method
42
- seats may instead complete deterministically or return a recorded `out_of_scope` result.
42
+ seats first complete deterministically (including recorded `out_of_scope`) and, on the
43
+ plugin-managed headless path, each selected v3 seat then gets one isolated voice worker that
44
+ may explain but cannot change the frozen stance. This is not the named person's real speech.
43
45
 
44
46
  ## Council selection gate — mandatory for full and quick
45
47
 
@@ -94,6 +96,23 @@ master-selection contract.
94
96
  6. Full mode fails closed at the evidence barrier. If any mandatory evidence role still
95
97
  fails after its bounded parse repair, do not spend more model calls on masters, bull/bear
96
98
  or PM. Persist an `incomplete` run naming the failed evidence and skipped downstream roles.
99
+ 7. For the hard runtime contract, call plugin-managed headless `analyze_symbol` once with
100
+ `council_mode:"full"`, `wait_for_completion:false`, the full-mode receipt and optionally
101
+ `total_timeout_ms` no greater than `1800000`. Poll the same durable `run_id` to terminal.
102
+ All eight mandatory evidence roles start in one wave; every selected v3 method gets a
103
+ frozen deterministic stance plus its own isolated voice worker; Bull/Bear run in parallel
104
+ within each of three rounds with a barrier between rounds; then the PM runs. Queueing,
105
+ retries and final persistence share the 30-minute clock. At expiry the saved run is
106
+ `incomplete`, never silently shortened or relabeled complete. This guarantees terminal
107
+ persistence, not all-seat success during search/model/data-provider degradation.
108
+ 8. `plan_visible_run` is owned by the external host. The plugin cannot force-stop its Task
109
+ agents, so visible-host full must not be advertised as meeting the 30-minute deadline.
110
+ 9. The terminal full handoff must include the system price snapshot (or explicit unavailable
111
+ gap), every selected stable master ID/stance/voice-worker explanation or failure, and all
112
+ eight analyst statuses and summaries. A method-seat explanation is a recorded provisional
113
+ lens output, never a quotation, endorsement or current statement by the named person.
114
+ System-owned labels support `zh-CN`, `en`, `ja` and `ko`; propagate the request language
115
+ to every worker.
97
116
 
98
117
  ## Quick mode — plugin-managed headless quick_v1
99
118
 
@@ -12,7 +12,7 @@ Request: **$ARGUMENTS**
12
12
  | `$ARGUMENTS` looks like | Do this |
13
13
  |---|---|
14
14
  | *(empty)* | Print the mode table below and stop. Do not start a run. |
15
- | a ticker alone, or a question | **Full council.** Go to "Full council" below. |
15
+ | a ticker alone, or a question | **Full council.** Go to "Full council" below. Plugin-managed headless has a hard 30-minute queue-to-terminal bound; visible-host execution does not. |
16
16
  | ticker + `quick` | The plugin-managed headless `quick_v1` council: 4 fixed analysts, 1-4 selected methods, one parallel bull/bear round and a short PM inside a hard 10-minute ceiling. |
17
17
  | ticker + `screen` | `screen_ticker` only. No language-model judgment, no subagents. |
18
18
  | ticker + `options` | `get_options_chain` only. |
@@ -22,7 +22,7 @@ Request: **$ARGUMENTS**
22
22
  When `$ARGUMENTS` is empty, print exactly this and stop:
23
23
 
24
24
  ```
25
- /alpha <TICKER> full council — shows every master, then asks which to run
25
+ /alpha <TICKER> full council — shows every master; headless run is bounded <=30m
26
26
  /alpha <TICKER> quick quick_v1: 4 analysts incl. news + 1-4 masters + 1 parallel debate round (<=10m)
27
27
  /alpha <TICKER> screen mechanical filings screen only (no model spend)
28
28
  /alpha <TICKER> options IV term structure, skew, positioning (no model spend)
@@ -39,7 +39,9 @@ is and use `market_coverage`, rather than returning nothing.
39
39
 
40
40
  Say plainly that the four marked modes call keyless data tools and spawn no subagents, so
41
41
  they cost nothing beyond this turn. Council modes can launch model workers; selected method
42
- seats may instead complete deterministically or return a recorded `out_of_scope` result.
42
+ seats first complete deterministically (including recorded `out_of_scope`) and, on the
43
+ plugin-managed headless path, each selected v3 seat then gets one isolated voice worker that
44
+ may explain but cannot change the frozen stance. This is not the named person's real speech.
43
45
 
44
46
  ## Council selection gate — mandatory for full and quick
45
47
 
@@ -94,6 +96,23 @@ master-selection contract.
94
96
  6. Full mode fails closed at the evidence barrier. If any mandatory evidence role still
95
97
  fails after its bounded parse repair, do not spend more model calls on masters, bull/bear
96
98
  or PM. Persist an `incomplete` run naming the failed evidence and skipped downstream roles.
99
+ 7. For the hard runtime contract, call plugin-managed headless `analyze_symbol` once with
100
+ `council_mode:"full"`, `wait_for_completion:false`, the full-mode receipt and optionally
101
+ `total_timeout_ms` no greater than `1800000`. Poll the same durable `run_id` to terminal.
102
+ All eight mandatory evidence roles start in one wave; every selected v3 method gets a
103
+ frozen deterministic stance plus its own isolated voice worker; Bull/Bear run in parallel
104
+ within each of three rounds with a barrier between rounds; then the PM runs. Queueing,
105
+ retries and final persistence share the 30-minute clock. At expiry the saved run is
106
+ `incomplete`, never silently shortened or relabeled complete. This guarantees terminal
107
+ persistence, not all-seat success during search/model/data-provider degradation.
108
+ 8. `plan_visible_run` is owned by the external host. The plugin cannot force-stop its Task
109
+ agents, so visible-host full must not be advertised as meeting the 30-minute deadline.
110
+ 9. The terminal full handoff must include the system price snapshot (or explicit unavailable
111
+ gap), every selected stable master ID/stance/voice-worker explanation or failure, and all
112
+ eight analyst statuses and summaries. A method-seat explanation is a recorded provisional
113
+ lens output, never a quotation, endorsement or current statement by the named person.
114
+ System-owned labels support `zh-CN`, `en`, `ja` and `ko`; propagate the request language
115
+ to every worker.
97
116
 
98
117
  ## Quick mode — plugin-managed headless quick_v1
99
118
 
package/AGENTS.md CHANGED
@@ -10,11 +10,12 @@ Run `npm run check` after any code or prompt change.
10
10
 
11
11
  ## Current Release Boundary
12
12
 
13
- Package/plugin version `0.9.2` is a non-GA preview published to npm's `next` dist-tag and
14
- marked as a GitHub prerelease. Its build channel remains `solo_test`: 26 physical provisional
13
+ Package/plugin version `1.0.0` is a non-GA GitHub preview. This source upgrade does
14
+ not mutate npm dist-tags; verify npm independently before claiming `next` serves 1.0.0. Its
15
+ build channel remains `solo_test`: 26 physical provisional
15
16
  PersonaPack v3 packs, 26 `operator_lens` seats, 52 `provisional_derived_proxy` tools,
16
17
  0 operational seats and 0 validated `method_model` seats. Do not present this feature
17
- release, a passing quick report or a packaged smoke as PersonaPack production GA.
18
+ release, a passing full/quick report or a packaged smoke as PersonaPack production GA.
18
19
 
19
20
  ## Council Modes
20
21
 
@@ -24,6 +25,24 @@ mandatory evidence role still fails after its one bounded parse-only repair, per
24
25
  failure/diagnostic artifacts, skip method/debate/PM model calls and terminate `incomplete`
25
26
  before downstream synthesis. Never auto-downgrade that run to quick.
26
27
 
28
+ Plugin-managed headless full runs launched with `analyze_symbol` have a hard
29
+ queue-to-terminal-persistence ceiling of 1800000 ms. The eight mandatory evidence workers
30
+ start in one parallel wave. Each selected v3 method first produces a deterministic, frozen
31
+ stance and then gets one isolated voice worker that may explain, but never change, that
32
+ stance. Bull and Bear run in parallel within each of the three rounds, with a hard barrier
33
+ between rounds, followed by the PM. Retries, queueing and persistence consume the same
34
+ deadline; callers and environment variables may lower it, never raise it. At expiry, persist
35
+ a terminal fail-closed `incomplete` run and name every missing/skipped seat. The clock
36
+ guarantees terminal persistence, not successful completion when data providers, search or
37
+ model transport deteriorates.
38
+
39
+ This 30-minute enforcement belongs only to plugin-managed headless `analyze_symbol`. A
40
+ visible-host full run is scheduled by the external host, so the plugin cannot force-stop its
41
+ subagents or promise the same deadline. It still returns one post-evidence explanation
42
+ worker per non-blocked selected physical v3 seat, including deterministic `out_of_scope`
43
+ seats, and the PM waits for every returned worker. Do not advertise a visible run as
44
+ SLA-bound.
45
+
27
46
  `quick` is explicit and uses `quick_v1`. It can run only through plugin-managed headless
28
47
  `analyze_symbol`; `plan_visible_run` rejects it. Quick launches the fixed four evidence roles
29
48
  `market_data`, `earnings_deep_dive`, `valuation_long_short`, and
@@ -43,6 +62,25 @@ structure only; it does not turn degraded into complete or imply full-council eq
43
62
  Method-seat output is a recorded provisional lens result, never a quotation from the named
44
63
  person.
45
64
 
65
+ Classify the instrument before choosing evidence routes. Operating companies may use SEC
66
+ Company Facts or local structured issuer financials; ETFs and mutual funds use
67
+ `fund_lookthrough`; cash indices use `index_aggregate`. Fund/index work must cover dated
68
+ holdings or constituents and weights, methodology, concentration, fee or index rules,
69
+ liquidity/tracking/flows and same-date aggregate valuation with disclosed coverage. Never
70
+ create fund/index revenue, company EPS, management guidance, fund-insider Form 4 activity or
71
+ portfolio financials made by adding a few constituents. Company-style data routes must be
72
+ recorded as not applicable for funds and indices, not as research failures.
73
+
74
+ Every terminal full handoff must show a system-owned price snapshot (price, currency,
75
+ timestamp and source when available, otherwise an explicit unavailable-data record), every
76
+ selected stable master ID with its frozen stance and readable explanation/status, and all
77
+ eight mandatory analyst statuses and summaries. The handoff's final section carries the
78
+ exact selected-seat count and one statement per selected ID. Visible PM completion returns
79
+ `handoff_contract=inline_user_response_v1`; deliver its `user_response_markdown` instead of
80
+ an ACK-only recap. System-owned report/handoff prose is localized for `zh-CN`, `en`, `ja`
81
+ and `ko`; workers receive the run language. Never present a method-seat explanation as the
82
+ real person's current words, quote or endorsement.
83
+
46
84
  ## Hosts
47
85
 
48
86
  The MCP server is the load-bearing integration on every host: it reads `personas/` directly,
@@ -126,7 +164,7 @@ rather than four in a menu of a hundred.
126
164
 
127
165
  | Invocation | What runs | Model spend |
128
166
  |---|---|---|
129
- | `/alpha <ticker>` | Shows every master, confirms `1..N`/ranges/`all`, then runs the full council | one subagent per selected seat |
167
+ | `/alpha <ticker>` | Shows every master, confirms `1..N`/ranges/`all`, then runs full; plugin-managed headless is ≤30m | deterministic stance + one isolated voice worker per selected v3 seat |
130
168
  | `/alpha <ticker> quick` | Shows all 26, confirms 1-4 (no `all`), then plugin-managed `quick_v1` (≤10m) | varies with selection |
131
169
  | `/alpha <ticker> screen` | Mechanical filings screen only | **none** |
132
170
  | `/alpha <ticker> options` | IV term structure, skew, positioning | **none** |
package/CHANGELOG.md CHANGED
@@ -2,6 +2,170 @@
2
2
 
3
3
  Notable changes per release. Dates are UTC.
4
4
 
5
+ ## [1.0.0] — 2026-07-29
6
+
7
+ The release where the method seats stop abstaining on everything. Full notes in
8
+ `docs/releases/v1.0.0.md`.
9
+
10
+ All twenty-seven seats now run their own arithmetic and their own thresholds. Measured on live
11
+ grounding across eight symbols, twenty-six of twenty-seven reach a stance somewhere with no
12
+ contract failures. `master_jhunjhunwala` declines everywhere by construction: its first filter
13
+ is the promoter shareholding record, which US filings do not contain, and the seat names that
14
+ gap rather than substituting for it.
15
+
16
+ ### Changed
17
+
18
+ - `prepublishOnly` verifies the package rather than GA readiness. It ran `npm run check`, which
19
+ includes reports that exit non-zero until the corpus has human-reviewed method models and a
20
+ live four-host E2E run — a state this build declares it is not in and cannot reach without
21
+ work outside the repository. Gating `npm publish` on it meant a self-declared non-GA preview
22
+ could never ship at all. GA readiness keeps its own gate in `release:check`, which is
23
+ unchanged and still fails closed.
24
+
25
+ ### Added
26
+
27
+ - Four keyless feeds supplying the facts the seats actually ask for: dated FRED series with
28
+ history (net liquidity, its impulse over a stated window, the growth/inflation quadrant),
29
+ company fundamentals derived from XBRL (owner earnings, NCAV, downside values, growth,
30
+ incremental return on capital, leverage), published daily fund holdings from four issuers,
31
+ and index aggregates (valuation, breadth, put/call, volatility).
32
+ - Look-through aggregation, so an operating-company method can read a basket. Absolute-currency
33
+ facts have no aggregation path at all, and every aggregate carries the coverage weight it was
34
+ computed over.
35
+ - Authored method logic. A seat may carry its real formulas and a real decision policy —
36
+ eligibility, hard vetoes, scoring — instead of the generated identity proxy. A seat that is
37
+ not authored is unchanged, so the set fills in one seat at a time.
38
+ - A reader-facing voice: five first-person fields per seat plus a `position_intent` that
39
+ narrows the frozen stance and is rejected server-side if it does not.
40
+
41
+ ### Fixed
42
+
43
+ - Classifier failed open: with no exchange metadata, common fund tickers were asserted to be
44
+ operating companies; fund registrant SIC codes were read as evidence of an operating company;
45
+ a fund named after an index was routed as a cash index, disabling its option chain.
46
+ - Japanese and Korean reports could never publish — a relabelled commentary section legally
47
+ contains a section alias and won heading assignment, so the per-seat gate failed against PM
48
+ prose permanently. The gate now anchors on the system section's content marker.
49
+ - Worker statements were interpolated raw into a system-owned section, so a statement
50
+ containing a heading captured the section the quality gate validates.
51
+ - The status snapshot and the blocking gates disagreed about a seat with no status entry, so a
52
+ recovered run reported complete while being hard-rejected.
53
+ - Declined seats no longer schedule an explanation worker; the stance is frozen and the record
54
+ is already readable, so the worker cost one sequential model turn per seat and changed nothing.
55
+ - Fundamentals re-registered filing records under the consuming metric's period, silently
56
+ dropping every fact that shared a record with the mechanical screen.
57
+ - The look-through aggregator was handed a nested object where it reads one number per ticker,
58
+ so every aggregate refused while the constituents sat resolved in memory.
59
+ - `not_applicable` strings and the fund/index research contract were English-only inside
60
+ localized reports.
61
+
62
+ ### Assurance boundary
63
+
64
+ Unchanged. Build channel `solo_test`; admission `operator_lens`; `production_eligible=false`.
65
+ Authored formulas are AI-written and unreviewed, and record that in place of the
66
+ "mechanical identity proxy" limitation, which would otherwise be false. No human has reviewed
67
+ either kind. Method-seat outputs remain project-derived provisional lenses, not quotations or
68
+ current views of the named people.
69
+
70
+ ## [0.9.5] — 2026-07-28
71
+
72
+ ### Fixed
73
+
74
+ - Preserved Yahoo instrument metadata and classified operating companies, ETFs, mutual
75
+ funds, cash indices and other market instruments before choosing a research route.
76
+ SEC ticker/registrant names provide a fallback when quote metadata is unavailable.
77
+ - Stopped ETF/fund/index runs from invoking operating-company Company Facts or structured
78
+ issuer financials. Those routes are now explicit `not_applicable` records rather than
79
+ false research failures.
80
+ - Added role-specific ETF/index assignments for all eight evidence seats and a system-owned
81
+ fund/index report section covering methodology, dated holdings/weights, concentration,
82
+ fees/rules, liquidity/tracking/flows and disciplined aggregate valuation.
83
+ - Added readable deterministic statements for every completed or `out_of_scope` physical
84
+ v3 seat. The full handoff ends with the exact selected-seat count and one statement per
85
+ stable ID; an `all` selection therefore ends with all 26 method-seat statements.
86
+ - Returned the saved handoff inline from visible portfolio-manager completion and replay
87
+ (`inline_user_response_v1`) so hosts do not replace it with an ACK-only recap.
88
+ - Strengthened `report_quality` from a Master Bench heading check to per-selected-seat
89
+ readable and rendered statement coverage. Missing text or IDs now force
90
+ `needs_revision`.
91
+ - Decoupled runtime package version from the unchanged PersonaPack snapshot. `0.9.5` keeps
92
+ `persona_pack_version=0.9.4`, preserving existing pack hashes and simulation evidence
93
+ instead of rerunning method validation for a routing-only release.
94
+
95
+ ### Acceptance boundary
96
+
97
+ - Still `solo_test`, non-GA, `production_eligible=false`, `method_model_eligible=false`,
98
+ with 26 provisional `operator_lens` packs and zero approved method models.
99
+ - This source change does not publish npm or mutate dist-tags. See
100
+ `docs/releases/v0.9.5.md` for the full routing and delivery contract.
101
+
102
+ ## [0.9.4] — 2026-07-28
103
+
104
+ ### Fixed
105
+
106
+ - Canonicalized `zh-CN`/English/Japanese/Korean selection language before catalog, intent
107
+ and receipt binding; `auto` now infers CJK prompts and unsupported explicit locales fail
108
+ instead of silently presenting English as localized output.
109
+ - Rebuilt all 26 provisional physical v3 packs with four-locale selector copy. Chinese
110
+ `method` fields are no longer copied English, and Japanese/Korean selection plus
111
+ confirmation text is localized.
112
+ - Added reader-language enforcement for evidence, isolated method voice, Bull/Bear and PM
113
+ packets. Plugin-managed workers use one bounded no-search repair before failing closed;
114
+ visible-host recording rejects wrong-language packets before persistence.
115
+ - Added Japanese/Korean execution-failure, deterministic method and manager fallback copy;
116
+ removed mixed-English system Master Bench and delayed-quote labels.
117
+ - Added report-language status to `report_quality` so an English report cannot pass a
118
+ Japanese or Korean run.
119
+ - Revalidated the complete selection-record/receipt binding and recomputed `selection_hash`
120
+ before consumption, so tampering cannot be persisted as audit evidence or burn a receipt.
121
+ - Replaced reader-facing snake-case best-for domains with reviewed four-language copy while
122
+ preserving stable machine domain IDs outside the display fields.
123
+ - Required six ordered Bull/Bear round records and exact Round-3 Q&A before a visible full
124
+ PM can complete; identical retries are idempotent and conflicting replays fail closed.
125
+ - Routed quick PM through the shared language/parse repair path and separated real
126
+ timeout/transport/language failures from `DRY_RUN` and malformed-JSON failures.
127
+
128
+ ### Acceptance boundary
129
+
130
+ - The package check now packs and offline-installs the physical tarball, starts the installed
131
+ server, and proves 31 tools, 26 seats, all four selector locales, stable-ID confirmation,
132
+ one-time receipt consumption and replay rejection.
133
+ - Still `solo_test`, non-GA, `production_eligible=false`, `method_model_eligible=false`,
134
+ with 26 provisional `operator_lens` packs and zero approved method models.
135
+
136
+ ## [0.9.3] — 2026-07-28
137
+
138
+ This is a **non-GA full-council runtime and reporting correction** on the `solo_test`
139
+ channel. It retains the `full_v2`/`quick_v1` contracts and all PersonaPack maturity gates.
140
+
141
+ ### Added
142
+
143
+ - Plugin-managed headless full now has a hard 1,800,000 ms queue-to-terminal-persistence
144
+ ceiling. Deadline expiry persists a fail-closed `incomplete` run with every affected role;
145
+ it does not claim all-seat success under external provider degradation.
146
+ - Every selected physical v3 method now freezes its deterministic stance and then launches
147
+ one isolated voice worker for that stable ID. The worker can explain but cannot alter the
148
+ stance or manufacture missing typed facts. Output is explicitly a provisional method-seat
149
+ result, not the named person's words or endorsement.
150
+ - Full handoff now lists all selected master IDs/stances/worker statuses, all eight mandatory
151
+ analyst statuses/summaries, and a system-owned price snapshot or explicit quote-data gap.
152
+ - System-owned labels and failure text support Chinese (`zh-CN`), English, Japanese and
153
+ Korean, while stable IDs and JSON keys stay unchanged.
154
+
155
+ ### Changed
156
+
157
+ - The eight mandatory full evidence workers start in one parallel wave.
158
+ - Bull and Bear start in parallel inside each full debate round, while inter-round barriers
159
+ and exact Round-2-to-Round-3 Q&A binding remain mandatory.
160
+ - Parse-only repair receives a separate bounded conversion budget and does not repeat the
161
+ original evidence web research.
162
+ - Documentation now separates the enforceable plugin-managed headless deadline from visible
163
+ host orchestration, whose external subagents the plugin cannot force-stop.
164
+
165
+ The ten-minute `quick_v1` contract is unchanged. Build channel remains `solo_test`;
166
+ `production_eligible=false`, `method_model_eligible=false`, operational seats = 0 and
167
+ validated `method_model` seats = 0. Formal production GA remains fail-closed.
168
+
5
169
  ## [0.9.2] — 2026-07-28
6
170
 
7
171
  This is a **non-GA hotfix** for the bounded quick-council preview. `0.9.1` passed the
package/CLAUDE.md CHANGED
@@ -8,7 +8,10 @@ The plugin turns `@alphacouncil-agent <ticker/request>` into one of two explicit
8
8
 
9
9
  - `full_v2` is the default: display and confirm the method catalog, run all eight mandatory
10
10
  evidence roles, run every selected method, complete the three-round Bull/Bear cross-exam,
11
- run the PM, and write the complete report. If mandatory evidence still fails after its one
11
+ run the PM, and write the complete report. Plugin-managed headless full starts all eight
12
+ evidence workers in one parallel wave, gives every selected v3 method one isolated voice
13
+ worker after its deterministic stance is frozen, and runs Bull/Bear in parallel within
14
+ each round with barriers between rounds. If mandatory evidence still fails after its one
12
15
  bounded parse-only repair, persist the failure package, skip method/debate/PM model calls,
13
16
  and terminate `incomplete` before downstream synthesis.
14
17
  - `quick_v1` runs only when explicitly requested and only through plugin-managed headless
@@ -22,14 +25,14 @@ non-investment test output.
22
25
 
23
26
  ## Current Build Profile
24
27
 
25
- The declared package/plugin version is `0.9.2`. It is published to npm's `next` dist-tag and
26
- as a GitHub prerelease: a non-GA quick-council preview. The build channel remains
28
+ The declared package/plugin version is `1.0.0`. It is a non-GA GitHub preview; this source
29
+ upgrade does not publish npm or change its dist-tags. The build channel remains
27
30
  `solo_test`. The isolated packaged tree contains 26 physical v3 packs and 52 executable
28
31
  `provisional_derived_proxy` tools.
29
32
  Every seat is still a provisional `operator_lens`: operational = 0, `method_model` = 0,
30
33
  human source approvals = 0, human formula approvals = 0, human approval signatures = 0.
31
34
  The production loader rejects these packs and formal production GA remains fail-closed.
32
- See `docs/releases/v0.9.2.md` and `docs/report-contract.md`.
35
+ See `docs/releases/v1.0.0.md` and `docs/report-contract.md`.
33
36
 
34
37
  ## Agent-Skills Governance
35
38
 
@@ -54,6 +57,31 @@ one-use, mode-bound `selection_receipt` with the same symbol, prompt, language a
54
57
  No research, run directory or worker may start before that receipt exists. Data-only
55
58
  `screen`, `options`, `news` and `market` modes skip the selection gate.
56
59
 
60
+ ## Full v2 Runtime Contract
61
+
62
+ - Plugin-managed headless `analyze_symbol(council_mode="full")` has a hard 1800000 ms
63
+ queue-to-terminal-persistence ceiling. Queueing, grounding, bounded repair, all workers,
64
+ synthesis and artifact persistence share that clock. A caller or environment may lower
65
+ the limit, never raise it.
66
+ - Start the eight mandatory evidence workers in one parallel wave. A failed mandatory role
67
+ after its single bounded parse-only repair closes the evidence barrier and terminates
68
+ `incomplete`; never refill the result from memory.
69
+ - For each selected physical v3 seat, execute the deterministic policy first and freeze its
70
+ stance. Then run exactly one isolated explanation worker for that stable ID. The worker
71
+ may make the method-seat result readable but cannot alter the stance or invent missing
72
+ typed facts. Its text is a recorded provisional lens explanation, not the named person's
73
+ words, endorsement or current opinion.
74
+ - Run Bull and Bear in parallel within Round 1, wait for both, then repeat for Round 2 and
75
+ Round 3. Preserve the exact Round-2-question to Round-3-answer binding. Start the PM only
76
+ after both Round-3 sides pass.
77
+ - On global expiry, stop new downstream work and persist a terminal fail-closed `incomplete`
78
+ run naming every timed-out, failed and skipped role. The ceiling guarantees a terminal
79
+ artifact, not that external search/model/data services will let all seats succeed.
80
+ - The plugin cannot enforce this deadline on `plan_visible_run` host subagents. Visible full
81
+ runs retain the same evidence/report gates but must not be described as 30-minute bounded.
82
+ Run every returned post-evidence v3 explanation worker, including a frozen
83
+ `out_of_scope` seat, and record its `acknowledged_stance` before debate.
84
+
57
85
  ## Quick v1 Fixed Contract
58
86
 
59
87
  - Fixed parallel evidence wave: `market_data`, `earnings_deep_dive`,
@@ -74,6 +102,22 @@ No research, run directory or worker may start before that receipt exists. Data-
74
102
  - A selected method result is a recorded provisional lens output, never a quotation from the
75
103
  named person.
76
104
 
105
+ ## Instrument Routing Contract
106
+
107
+ - Classify the symbol before selecting financial-data routes. Operating companies use
108
+ `operating_company`; ETFs and mutual funds use `fund_lookthrough`; cash indices use
109
+ `index_aggregate`.
110
+ - Do not call operating-company Company Facts or structured issuer financials for a fund or
111
+ index. Record those paths as not applicable, then research dated holdings/constituents and
112
+ weights, methodology, concentration, fees or index rules, liquidity/tracking/flows,
113
+ rebalances and same-date aggregate valuation with explicit coverage weight.
114
+ - Never create fund/index revenue, company EPS, management guidance, fund-insider Form 4
115
+ activity, or a portfolio financial statement by adding a few constituents.
116
+ - Every selected physical v3 method gets a readable final statement, including deterministic
117
+ `out_of_scope` results. Full handoff ends with the exact selected-seat count and all of
118
+ those statements. Visible PM completion returns `user_response_markdown`; use it as the
119
+ final response body rather than reducing it to an ACK.
120
+
77
121
  ## Analyst Roles
78
122
 
79
123
  Default evidence roles (the eight-seat default fan-out):
@@ -98,7 +142,10 @@ parallel wave.
98
142
 
99
143
  Master Bench: the complete generated catalog has 26 selectable lenses. Both modes display
100
144
  all 26. Full accepts any non-empty selection or `all`; quick accepts only 1-4. Selected
101
- methods run between evidence and debate; quick runs them in one parallel wave. Full/deep
145
+ methods run between evidence and debate. In plugin-managed headless mode, each selected v3
146
+ seat is a frozen deterministic stance plus its own isolated voice worker; this is a
147
+ process-isolated worker, not a persistent sidebar agent and not the real person. Quick runs
148
+ its 1-4 seats in one parallel wave. Full/deep
102
149
  verifiers are `source_fidelity`, `rederivation`, and `refuter`; quick does not run this
103
150
  adversarial fan-out. See `skills/alphacouncil-agent/SKILL.md` and `docs/personas.md`.
104
151
 
@@ -155,8 +202,13 @@ report, and a passing quick report must never be presented as full-equivalent.
155
202
  The final chat handoff may be concise, but it must not replace the saved report. Terminal runs
156
203
  must write mode-appropriate `final_report.md`, `user_response.md`, `artifact_index.md`,
157
204
  `report_quality.json`, per-seat Markdown, and Bull/Bear/PM output or explicit failure records.
158
- Tell the user the terminal status, report contract and file locations. `degraded` is a real
159
- quick-only terminal state, never a synonym for complete.
205
+ A full handoff must list all eight mandatory analyst statuses and summaries, every selected
206
+ stable master ID with frozen stance and isolated-worker explanation/status, and one
207
+ system-owned price snapshot with currency/time/source or an explicit unavailable-data gap.
208
+ Tell the user the terminal status, report contract, elapsed/deadline state and file locations.
209
+ System-owned labels and failure text support `zh-CN`, `en`, `ja` and `ko`; propagate the
210
+ request language to every worker. `degraded` is a real quick-only terminal state, never a
211
+ synonym for complete.
160
212
 
161
213
  Never hide missing data. If a source is unavailable, say so in `open_questions` and in the final report's data-gap section. If no critical data is missing, explicitly state that no critical data gaps were found.
162
214