Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

I3431 — A record a process outside the server writes (a knowledge record reaching the index, a ledger line or a captured prompt) reaches an open view within one heartbeat, without a reload

On the 20 s heartbeat the live channel already runs (http/events.rs:70), take crate::live's repository stamp and the stamps of the ledger file and of today's capture directory: three stats per heartbeat, never one per object. When a stamp has moved, emit the frame I3220 defines, carrying the kinds that changed and no content. A knowledge record that the session-end hook wrote, once a commit or git add has brought it into the index, a task.started line, and a captured prompt then all reach open views. Wake followers through crate::change::Generation from feature/the-blackboard-is-pushed once that branch lands, rather than through a second wake mechanism. A woken reader writes nothing, so no frame can cause another.

BLOKOVÁNO vlna 4 · p2 · profil implementation · bezpečné paralelně

Part of every-surface-follows-what-changed — Every surface follows what changed in the repository by push, and a surface that does not says so.

Blocked. This issue cannot start until I3220 is done. The status is derived from that, not declared.

Cíl

On the 20 s heartbeat the live channel already runs (http/events.rs:70), take crate::live's repository stamp and the stamps of the ledger file and of today's capture directory: three stats per heartbeat, never one per object. When a stamp has moved, emit the frame I3220 defines, carrying the kinds that changed and no content. A knowledge record that the session-end hook wrote, once a commit or git add has brought it into the index, a task.started line, and a captured prompt then all reach open views. Wake followers through crate::change::Generation from feature/the-blackboard-is-pushed once that branch lands, rather than through a second wake mechanism. A woken reader writes nothing, so no frame can cause another.

Proč

The owner's 2026-10-19 Cognitive Fabric pack prefers the existing WebSocket stream over polling for the view of intents, knowledge and evidence (campaigns/prismatic-way-cognitive-fabric-prompt-pack/prompts/05_SURFACES.md), and verification/ACCEPTANCE.md forbids unbounded event or hook feedback. I3220 covers writes made through capabilities. Knowledge, the ledger and the capture archive are written outside the server.

Aktuální stav

The session-end hook derives knowledge candidates outside the server (lib/session.sh:663-673). Capture is written by a hook process (.claude/hooks/majordomus-capture). crate::live detects a move only through git's control files, stat'ed on a request's thread, with no watcher (apps/majordomus-cli/src/live.rs:19-40). /ui refreshes every 60 s (share/ui/ui.js:228,404). crate::change::Generation exists only on the unmerged feature/the-blackboard-is-pushed, feature/the-monitor-is-pushed and feature/the-peers-screen-follows-the-blackboard. That work has no issue file on this branch, and apps/majordomus-cli/src/change.rs and http/follow.rs are absent here.

Cílový stav

A staged or committed knowledge record, a new ledger line and a new capture each move an open view within one heartbeat, with no polling added, no per-object stat and no second wake mechanism.

Rozsah

  • apps/majordomus-cli/src/http/events.rs
  • apps/majordomus-cli/src/live.rs
  • share/ui/ui.js
  • .ai/repo/project/intents

Mimo rozsah

  • A filesystem watcher or a new thread
  • Showing untracked candidates
  • A second event bus or socket
  • Frame content beyond the kinds that changed

Závislosti

Co na tom čeká

Kritéria přijetí

  • git add of a new candidate makes an open /ui/knowledge list it within one 20 s heartbeat, without a reload
  • An appended task.started line moves an open intent inspector within one heartbeat
  • A burst of 100 stamp moves wakes a follower a bounded number of times, and ends in a state equal to a fresh read
  • After a wake, the ledger, the index stamp and the capture directory are unchanged by the reader
  • live.rs's per-request cost is measured against the existing benchmark baseline before and after and reported, not asserted

Validace

  • cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib http::events
  • cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib live
  • majordomus plan validate

Požadované důkazy

  • a_record_written_outside_reaches_an_open_view

Důkazy

Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.

Časová osa

zahájeno
—
ověřeno
—
dokončeno
—

Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.

Canonical record: .ai/repo/project/issues/I3431.yaml. Read it back with majordomus plan show I3431.

Prohledává názvy a popisy všech stránek, které tento web publikuje.