refactor: rename solstone agents concept to talents master
Land the pre-release agents -> talents vocabulary rename in one coordinated commit while the surface area is still cheap to change and there are no external consumers to preserve. This keeps the product language coherent before release and avoids shipping a half-renamed runtime, API, and journal layout. Key changes: - Split the old `think/agents.py` surface into `think/talents.py` for runtime execution and `think/providers_cli.py` for the standalone `sol providers check` health-check CLI. - Remove `sol agents`; add `sol providers check` for provider health, and have Cortex spawn talents via `[sys.executable, "-m", TALENT_EXECUTION_MODULE]` instead of shelling out through `sol`. - Apply the vocabulary split consistently: `talent` means config/prompt definition, `use` means one invocation (`agent_id` -> `use_id`, `running_agents` -> `running_uses`, `agent_requests` -> `use_requests`, and related helpers/attrs). - Rename wire/runtime events: dream chronicle `agent.{fail,dispatch,complete,skip}` -> `talent.*`, Callosum `agent_{started,completed}` -> `talent_*`, and `agent_updated` -> `talent_updated`. - Rename the day route from `/api/agents/<day>` to `/api/talents/<day>` and return both `uses` (invocations) and `talents` (config metadata) in the payload. - Rename the journal layout from `<journal>/agents/` to `<journal>/talents/` across root/day/segment/health locations and add `apps/sol/maint/004_rename_agents_to_talents.py` for automatic live-journal migration on supervisor startup. - Bump the stats schema from v2 to v3 and require top-level `"talents"`. - Keep the only allowed compatibility shim in `think/pipeline_health.py` and `apps/home/routes.py`, where historical dream chronicle readers accept both legacy `agent.*` and new `talent.*` event names through 2026-05-01. - Add `scripts/gate_agents_rename.py` and wire it into `make ci` to prevent reintroduction of legacy rename patterns. Out-of-scope followups: - Decompose `think/talents.py` (1,300+ lines) into submodules. - Restructure `think/talent.py` + `think/talent_cli.py` into a `think/talent/` package. - Remove the historical read-side shims after the 2026-05-01 sunset. Operator verification after supervisor restart on a live journal: - Migration script runs at startup and renames pre-existing `<journal>/agents/` dirs to `<journal>/talents/`. - Cortex spawn logs show `[sys.executable, -m, think.talents]`. - `sol providers check` reports all providers (Anthropic, OpenAI, Google, Ollama). - `sol agents` fails with unknown command. - Home yesterdays-card renders on a journal that has both pre- and post-rename chronicle events. - `make ci` is green and the rename gate passes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>