Skip to content
Beskid Platform specification

Beskid

Jump to a Beskid service

Beskid

Jump to a Beskid service

Contracts and edge cases

Platform spec article

Contracts and edge cases

Spec standingStandard

Owner
Piotr Mikstacki
Submitter
Piotr Mikstacki

Document contracts and edge cases for the Console Terminal Events feature: role-specific normative detail beyond the feature hub.

  • Feature hub: Console Terminal Events
  • Sibling articles in this bundle (design model, contracts, flow, examples, verification)
IDRequirement
EVT-001PollResize must compare against lastSize and only send on change.
EVT-002Failed Channel.Send must be ignored silently in v1 poll loop (no panic).
EVT-003SubscribeOnResize must set hub.lastSize and raise OnResize immediately with QuerySize().
EVT-004Default size when all probes fail should be 80×24 via env fallback.
  • Non-TTY stdout: QuerySize may return env defaults; resize events may never fire.
  • Rapid resize: Coalescing is caller responsibility; each poll may emit at most one message.
  • Closed channel: Send errors are dropped per EVT-002.

See the verification and traceability article in this bundle and compiler/corelib/beskid_corelib/tests/corelib_tests/src/console/.