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.

I2982 — The monitor page is pushed over the live channel, and says when it polls

Let the one socket client follow the blackboard channel and move /cockpit/monitor onto it. /events?follow=blackboard takes for (the reader whose signals are marked), sources (the monitor sources, mesh and executor by default) and frames (snapshot, signals or both); a shared read is keyed by what it reads. socket.js keeps the opaque cursor of the last blackboard.signals frame and the epoch of stream.ready, resumes with both, and hands a stream.resync to the page. The monitor page renders the channel with its own cursor and epoch, adds pushed signals on top, and polls /api/v1/monitor only when the channel could not be opened, saying so.

BLOKOVÁNO vlna 2 · p1 · profil implementation · běží samostatně

Part of peer-blackboard — The peer blackboard is one projection, pushed live to every surface.

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

Cíl

Let the one socket client follow the blackboard channel and move /cockpit/monitor onto it. /events?follow=blackboard takes for (the reader whose signals are marked), sources (the monitor sources, mesh and executor by default) and frames (snapshot, signals or both); a shared read is keyed by what it reads. socket.js keeps the opaque cursor of the last blackboard.signals frame and the epoch of stream.ready, resumes with both, and hands a stream.resync to the page. The monitor page renders the channel with its own cursor and epoch, adds pushed signals on top, and polls /api/v1/monitor only when the channel could not be opened, saying so.

Proč

/cockpit/monitor asks the whole monitor every five seconds per tab, and says it is live while it polls.

Aktuální stav

socket.js follows executions only, with a numeric sequence cursor; monitor.js polls /api/v1/monitor every five seconds while visible.

Cílový stav

A review request reaches an open monitor page as a row without a poll; a page whose channel is refused polls and labels itself as polling.

Rozsah

  • apps/majordomus-cli/src/http/follow.rs
  • apps/majordomus-cli/src/cockpit/monitor.rs
  • share/cockpit/socket.js
  • share/cockpit/monitor.js
  • .ai/repo/adrs/0176-the-blackboard-is-one-projection-pushed-over-one-socket.md
  • .ai/repo/project/intents/the-peer-blackboard-is-one-reality.yaml
  • docs/BLACKBOARD.md
  • test/cases/3382_the_monitor_is_pushed.sh

Závislosti

Co na tom čeká

Kritéria přijetí

  • A follower given for= receives signals marked for_you for that reader, and one given frames=signals receives no snapshot
  • socket.js resumes a blackboard channel with the last cursor and epoch, and reports stream.resync to the page
  • The monitor page adds a pushed signal without polling, and polls with a label only when the channel is refused

Validace

  • majordomus plan validate
  • bash test/run.sh 3382_the_monitor_is_pushed

Požadované důkazy

  • case_monitor_pushed

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/I2982.yaml. Read it back with majordomus plan show I2982.

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