- agency.Explain answers "why did this happen?" for an execution,
approval, capability request, plan step, intention or event from
recorded state only: action, immediate plan step, plan, intention and
any subordinate intention, originating wants, goal, supporting beliefs
and their evidence, conflicting wants with their resolution,
commitments applied, formation and reconsideration decisions, the
expectation and its outcome, and explicit gaps where nothing is
recorded. Hidden model reasoning is never shown because it is not
stored.
- agency.Attribute classifies an outcome as caused (a recorded causal
link from one of the mind's actions), followed (the mind acted on the
same target earlier with no recorded link), independent or unknown;
temporal order alone is never taken for causation.
- New introspection intents answer from records: why an action happened,
what was believed at a past time (from append-only belief versions),
which earlier state is the mind's (lineage), what would have happened
without an event (only from completed counterfactual experiments,
otherwise "no evidence"), how the mind changed, and what it wants,
intends and has committed to.
- research.ScoreIntrospection compares a reply with the recorded facts
sentence by sentence (supported, partially supported, unsupported,
contradicted, unknown). Fluent reasons with no recorded counterpart earn
nothing, and a claim that an action was done is checked against
execution records. Every reply is scored; results are append-only
research measurements (migration 0028), and failures raise
unsupported_explanation or action_claim_without_record warnings.
Phase 8, completing milestone M1. A user message is stored and appended
as an observation event carrying trust, actor, channel and reference. The
perceive process analyses it deterministically (intent, introspection
kind, entities, claims, urgency) and, within the per-cycle model
allowance, enriches it through the perceive prompt. Its handler writes a
perception event, an episodic memory with participants, turns claims into
beliefs whose evidence is the message, and builds a response intent from
state: beliefs and memories for the topic, evidence rows for why-questions,
the uncertain band, contested beliefs and their links, recent learning,
status changes, and honest declines for subsystems that do not exist yet
or for requests with no capabilities. The respond prompt phrases the
intent when a model is assigned; otherwise the reply is a direct
rendering of the intent. response_generated cites the message, the
perception, every belief and memory used, the episode and the model call.
API: conversations, messages with optional wait, one-shot ask; chat UI
with live refresh and a per-reply intent view. Sample mind Dani as a
strictly decoded seed document with an import endpoint and noemactl mind
import. tests/m1 drives all fourteen milestone steps including restart.