diff --git a/README.md b/README.md
index 23dc7cbb..0fd2a96d 100644
--- a/README.md
+++ b/README.md
@@ -138,7 +138,7 @@ What exists now is enough to evaluate the thesis:
- heartbeat, sleep, memory, and Persona-state machinery inherited from live
VoidBot lessons
- Hands, Eyes, Soul, Mind, Continuity, and Substrate Gate receipt families
-- a Proprioception whitepaper mapping Epiphany's body, owners, invariants, and
+- a Modeling whitepaper mapping Epiphany's body, owners, invariants, and
cut lines
- an investor brief tying Epiphany to the Bifrost-first proof loop
diff --git a/docs/README.md b/docs/README.md
index 12f12d7d..89773fd1 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -8,7 +8,7 @@ outside the working notes.
- [Epiphany investor brief](./epiphany_investor_brief.md): one-page value
summary for investors, partners, and design-partner conversations.
- [Epiphany Body whitepaper](./epiphany_body_whitepaper.tex): source TeX for
- the Proprioception architecture overview.
+ the Modeling architecture overview.
- [Epiphany Body whitepaper PDF](./epiphany_body_whitepaper.pdf): compiled
whitepaper for sharing.
diff --git a/docs/epiphany_investor_brief.md b/docs/epiphany_investor_brief.md
index f4f4e751..58b59f36 100644
--- a/docs/epiphany_investor_brief.md
+++ b/docs/epiphany_investor_brief.md
@@ -50,7 +50,7 @@ Epiphany is already more than a pitch deck. The current repo contains:
contract surfaces
- local operator commands for status, coordinator runs, smoke checks, and
CultMesh/Verse context
-- a Proprioception whitepaper that maps the body, owners, inputs, outputs,
+- a Modeling whitepaper that maps the body, owners, inputs, outputs,
invariants, bridges, and current cut line
The key architectural move is extraction: Epiphany began as a Codex-derived
diff --git a/epiphany-core/src/coordinator_launch_context.rs b/epiphany-core/src/coordinator_launch_context.rs
index cadc2704..6c478e88 100644
--- a/epiphany-core/src/coordinator_launch_context.rs
+++ b/epiphany-core/src/coordinator_launch_context.rs
@@ -297,13 +297,13 @@ pub fn append_modeling_work_loop_telemetry_context(
telemetry.telemetry_id = format!("{}-soul-{}", telemetry.telemetry_id, state.revision);
telemetry.produced_at_utc = Utc::now().to_rfc3339_opts(SecondsFormat::Secs, true);
telemetry.source_stage = "hands+soul".to_string();
- telemetry.target_stages = vec!["proprioception".to_string()];
+ telemetry.target_stages = vec!["modeling".to_string()];
telemetry.soul_receipt_ids = soul_receipts
.iter()
.map(|receipt| receipt.id.clone())
.collect();
telemetry.summary = format!(
- "{} Soul acceptance telemetry attached for Proprioception model update.",
+ "{} Soul acceptance telemetry attached for Modeling model update.",
telemetry.summary
);
write_epiphany_cultmesh_work_loop_telemetry(&store, telemetry.clone()).map_err(
@@ -315,9 +315,9 @@ pub fn append_modeling_work_loop_telemetry_context(
},
)?;
}
- context.push_str("\n\n\n");
+ context.push_str("\n\n\n");
context.push_str(
- "Proprioception is modeling the machine after Soul has reviewed the latest Hands consequence telemetry. This packet is loaded from the internal CultMesh Verse, not reconstructed from chat memory.\n",
+ "Modeling is updating the machine model after Soul has reviewed the latest Hands consequence telemetry. This packet is loaded from the internal CultMesh Verse, not reconstructed from chat memory.\n",
);
context.push_str(&render_work_loop_telemetry(&telemetry));
if !soul_receipts.is_empty() {
@@ -336,7 +336,7 @@ pub fn append_modeling_work_loop_telemetry_context(
context.push_str(
"Update the machine model from this verified consequence before another Hands turn. Do not request a new Eyes step merely to rediscover this already-typed telemetry.\n",
);
- context.push_str("");
+ context.push_str("");
Ok(context)
}
@@ -418,7 +418,7 @@ fn work_loop_telemetry_from_hands_chain(
thread_id: state.last_updated_turn_id.clone().unwrap_or_default(),
produced_at_utc: Utc::now().to_rfc3339_opts(SecondsFormat::Secs, true),
source_stage: "hands".to_string(),
- target_stages: vec!["soul".to_string(), "proprioception".to_string()],
+ target_stages: vec!["soul".to_string(), "modeling".to_string()],
lower_bound_receipt_at: lower_bound_receipt_at.to_string(),
hands_intent_id: chain.intent_id.clone(),
hands_review_id: chain.review_id.clone(),
@@ -1355,7 +1355,7 @@ mod tests {
assert_eq!(telemetry.hands_commit_receipt_id, "hands-commit-context");
assert_eq!(
telemetry.target_stages,
- vec!["soul".to_string(), "proprioception".to_string()]
+ vec!["soul".to_string(), "modeling".to_string()]
);
assert!(
telemetry
@@ -1446,7 +1446,7 @@ mod tests {
&state,
)
.map_err(anyhow::Error::msg)?;
- assert!(modeling_context.contains(""));
+ assert!(modeling_context.contains(""));
assert!(modeling_context.contains("hands-patch-context"));
assert!(modeling_context.contains("accept-verification-context"));
assert!(modeling_context.contains("Soul acceptance telemetry"));
@@ -1464,7 +1464,7 @@ mod tests {
)?
.expect("Modeling launch should preserve enriched CultMesh telemetry");
assert_eq!(telemetry.source_stage, "hands+soul");
- assert_eq!(telemetry.target_stages, vec!["proprioception".to_string()]);
+ assert_eq!(telemetry.target_stages, vec!["modeling".to_string()]);
assert_eq!(
telemetry.soul_receipt_ids,
vec!["accept-verification-context".to_string()]
diff --git a/notes/epiphany-fork-implementation-plan.md b/notes/epiphany-fork-implementation-plan.md
index ce881e41..7561ed81 100644
--- a/notes/epiphany-fork-implementation-plan.md
+++ b/notes/epiphany-fork-implementation-plan.md
@@ -78,7 +78,7 @@ Exit evidence:
chosen explicit store contract;
- `EpiphanyCoordinatorService` path names match real ownership.
-### 1. Repair Proprioception
+### 1. Repair Modeling
- Keep `notes/epiphany-current-algorithmic-map.md` aligned with source.
- Distinguish historical evidence from current mechanism in long handoffs.
diff --git a/notes/fresh-workspace-handoff.md b/notes/fresh-workspace-handoff.md
index 64e0b644..cae8f22a 100644
--- a/notes/fresh-workspace-handoff.md
+++ b/notes/fresh-workspace-handoff.md
@@ -1,5 +1,15 @@
# Fresh Workspace Handoff
+## Modeling name authority correction - 2026-07-14
+
+Modeling is the standing embodied organ that models the Body. Proprioception is
+a retired legacy name, not a parallel faculty or worker posture. The global
+Codex doctrine had missed this migration and could still force Self to dispatch
+`Proprioception` workers; runtime work-loop telemetry also targeted the retired
+stage name. Both are corrected to Modeling. Keep legacy string handling only
+where it migrates old persisted agent identity into Modeling, and keep old prose
+only where it is clearly historical evidence.
+
## Current orientation — 2026-07-12
### Aetheria organ-structure evidence — 2026-07-13
diff --git a/state/ledgers.msgpack b/state/ledgers.msgpack
index 6261d99d..bb73a9b3 100644
Binary files a/state/ledgers.msgpack and b/state/ledgers.msgpack differ
diff --git a/state/map.yaml b/state/map.yaml
index fdea1d08..72a06e31 100644
--- a/state/map.yaml
+++ b/state/map.yaml
@@ -360,6 +360,16 @@ rejected_paths:
current_status:
summary: Epiphany state, prompts, coordinator policy, runtime spine, receipts, and operator surfaces are native typed Rust/CultCache/CultMesh/CultNet organs. Vendored Codex retains Codex-native app-server plus OpenAI-compatible auth/model transport only. Canonical state has one transaction owner and one coordinator store boundary; native status/coordinator JSON emits `state`, and the extinct Codex Epiphany routes, DTOs, bridge, migration, and compatibility field cannot decide or describe native truth.
+ organ_naming_authority: >
+ Modeling is the standing embodied organ that models the Body: architecture,
+ dataflow, seams, invariants, graph/checkpoint anatomy, and source-grounded
+ self-sensing. Proprioception is a retired legacy name, not a second organ,
+ task posture, worker title, prompt stage, telemetry target, or whitepaper
+ authority. The global Codex doctrine, runtime Modeling telemetry projection,
+ live implementation plan, README, and packaged docs use Modeling. Legacy
+ string migration may still recognize Proprioception only to rewrite old
+ persisted agent identity into Modeling; archived/historical evidence may
+ retain the former name as provenance.
selected_proposal_authority: >
Direct User intake and exact selection are coordinator/runtime-spine
artifacts. The coordinator launch transaction alone injects the typed