docs(missions): record why template role prose is not deletable
Plan §12 proposed deleting the ~1,250 lines of `system_prompt` prose across the 23 team templates as instruction-shaped injection. Tracing the two prompt paths shows that would be strictly harmful: - Missions never see it. `topology_exec::build_prompt` synthesizes its own one-line system text from the role slot, so the prose costs zero mission tokens and deleting it saves zero. - Chat depends on it. `mission_orchestrator` copies it into `agents.system_prompt`, which is the base prompt `cm_runtime::brain::compose_system` augments for a claw's chat turns. Deleting it leaves every mission-minted claw with no identity in chat. The prose is also mostly information (domain standards, wire discipline) rather than instructions restating general competence, which is the kind ablation keeps. Comment left at the one injection site so this isn't re-derived. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 5
parent
ca45597c79
commit
95bd65540c
@@ -364,6 +364,14 @@ async fn mint_team_from_template(
|
||||
workspace_id,
|
||||
name: format!("{} · {}", team_name, role.slot),
|
||||
job_title: role.slot.clone(),
|
||||
// This is the ONLY consumer of the templates' `system_prompt` prose,
|
||||
// and it feeds the *chat* path, not missions: it lands in
|
||||
// `agents.system_prompt`, which `cm_runtime::brain::compose_system`
|
||||
// uses as the base prompt for a claw's chat turns. A mission turn
|
||||
// never sees it — `topology_exec::build_prompt` synthesizes its own
|
||||
// one-line system text from the role slot alone. So deleting the
|
||||
// template prose to save mission tokens would save exactly zero and
|
||||
// would leave every mission-minted claw with no identity in chat.
|
||||
system_prompt: role.system_prompt.clone(),
|
||||
avatar: String::new(),
|
||||
accent: default_accent_for(&role.slot).to_string(),
|
||||
|
||||
Reference in New Issue
Block a user