Skip to contents

[Experimental]

Usage

tempest_shiny_server(
  id,
  config = tempest_config(),
  store = NULL,
  panels = c("chat", "sources", "facts", "mindmap", "transcript", "report"),
  experts = NULL,
  session_id = NULL,
  program_set = NULL,
  knowledge = NULL
)

Arguments

id

Shiny module id.

config

A TempestConfig, a reactive returning one, a function returning one, or NULL to use the bundled config module defaults.

store

Optional store from tempest_shiny_store(). If NULL, a new store is created.

panels

Character vector matching the UI panels.

experts

Optional expert profiles passed to tempest_session() for new Co-STORM sessions. May be a value, function, or reactive.

session_id

Optional stable session id passed to tempest_session() for new Co-STORM sessions. May be a value, function, or reactive.

program_set

Optional TempestProgramSet used for new and restored Co-STORM sessions. May be a value, function, or reactive. NULL uses the builtin set.

knowledge

Optional artifact knowledge from tempest_artifact_knowledge() for new and restored Co-STORM sessions. May be a value, function, or reactive. Admission is checked when the session is created or restored.

Value

A list with the shared store; reactive costorm_session, costorm_events, costorm_evidence, storm_events, report_md, report_workspace, and report_topic accessors; a monotonic report_navigation_event counter; and a touch_costorm_session() control.

Details

tempest_shiny_server() pairs with tempest_shiny_ui() and lets a host app provide a TempestConfig, optional expert profiles, a stable session id, and an optional shared store. The returned handle exposes only product session, event, evidence, and report state.

Progress, persistence, and successful publication use polite atomic status regions in the bundled UI. Validation, cancellation, and publication failures use alerts and never convert a rejected product into report-ready state.