Record the recall measurement and the two subsystem contracts (V-719)
docs/evals/2026-08-15-locative-answerability-verifier.md rules the resident model out as a recall answerability verifier. Its constrained output was syntactically reliable and neither semantically reliable nor isolated from instructions inside stored memory: five false accepts out of 32 held-out cases, two of them prompt injections carried in the memory text, all five identical across three fixed-seed repeats. design.md carries the reminder row as it now is, one-shot or recurring, with the outbox and the cancellation invariants. routing.md carries the new stage 0 frames and the cancellation rung. deployment.md carries the /reminders contract. The assistant_workday scenario exercises the turn sequence end to end. --no-verify: master is the working branch this session by the owner's call. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -135,6 +135,29 @@ second getting it right. Every rule was added against a measurement.
|
||||
and "сколько будет 17 на 23". Wired after the agenda rules and **before** the
|
||||
feed and list rules. "что такое лента" is a definition question, and the feed
|
||||
rule would take it on the noun alone.
|
||||
- **Local product help and current public releases** (V-720, 2026-08-15).
|
||||
`MavenHelpGrammar` keeps a question such as "как отменить напоминание" on
|
||||
`SourceSelf`, where the answer names the command Maven actually accepts.
|
||||
`PublicCurrentVersionGrammar` anchors an explicitly current software release
|
||||
on `SourceWorld`, but declines first-person ownership. Together they stop
|
||||
operational help leaking to an unrelated search result and stop public
|
||||
release questions dying at the personal-memory boundary.
|
||||
- **Thin references and implicit elapsed questions** (2026-08-15).
|
||||
`AmbiguousFragmentGrammar` refuses filler plus an unresolved demonstrative
|
||||
("ну это") instead of letting a statistical head invent context.
|
||||
`ImplicitElapsedQueryGrammar` reads the Russian question word order in
|
||||
"давно я не тренировался" as recall; the declarative order "я давно не
|
||||
тренировался" remains a statement.
|
||||
- **Completed reminder reports** (V-719, 2026-08-15).
|
||||
`ReminderCancellationReportGrammar` keeps "я отменил напоминание" in the
|
||||
non-mutating chat lane. It is neither the addressed imperative accepted by
|
||||
cancellation nor evidence that Maven should search unrelated personal
|
||||
memory.
|
||||
- **Named ecosystem service attention** (2026-08-15). The colloquial frame
|
||||
"что там с X" reaches Praxis only for the four service names in Maven's
|
||||
architecture. The open-set version still belongs to Nexus; a bare act or an
|
||||
anaphoric target never crosses into Nexus/Hexis merely because an act head
|
||||
fired.
|
||||
- **Russian possession statements** (`PossessionStatementGrammar`, V-577,
|
||||
2026-08-13). The closed grammatical frame `у меня …` anchors a plain
|
||||
declaration as `IntentNote`; its remainder is open and contains no noun list.
|
||||
@@ -187,6 +210,28 @@ against 3.9µs before, benchmarked at 20000x.
|
||||
`Slots.Text` is deliberately not filled. A grammar that left it empty meant it,
|
||||
and `agendaQueryBuild` hands the query chain the utterance itself.
|
||||
|
||||
### Reminder cancellation gets first refusal
|
||||
|
||||
`cmd/mavend/reminder_cancel.go` is a stateful pre-route resolver, ahead of a
|
||||
parked clarification and the statistical cascade. It accepts only an addressed
|
||||
command-position imperative plus the explicit reminder/alarm noun. Whole-token
|
||||
closed lexicons establish that frame; morphology compares a stored subject.
|
||||
Questions ("как отменить"), reported speech, past-tense reports, and
|
||||
prohibitions do not establish mutation authority.
|
||||
|
||||
Resolution reads every pending reminder. Subject terms retain negation and
|
||||
quantities; parsed time must pass the same resolved-hour gate as capture. A
|
||||
single match calls the typed `CancelReminder` IPC method. Several matches are
|
||||
stored as `Session.Candidates` in the spoken order, capped at five, and only a
|
||||
whole affirmative ordinal may consume that list. Re-querying on the follow-up
|
||||
would let state changes move the ordinal, so it is forbidden. No match, an
|
||||
unread time, an out-of-range or spent ordinal, and an ambiguous delivery result
|
||||
all produce an explicit no-op.
|
||||
|
||||
This rung is also present in `preRouteLadder`, so `/trace` records whether it
|
||||
won or declined on every surface. The reminder web page uses the same IPC
|
||||
mutation rather than a second store path.
|
||||
|
||||
## Stage 0b: the routing heads
|
||||
|
||||
Routing has a bounded output space, so it is classification rather than
|
||||
|
||||
Reference in New Issue
Block a user