Tattva Docs
Trust & administration

Notifications

Get told when something you care about changes — without checking the app every hour.

Notifications surface things that need your attention: a tracker breached its threshold, a hypothesis got invalidated, a high-confidence ontology candidate is waiting for review.

Where to find this

  • In-app bell in the top-right of every screen — shows recent notifications.
  • Settings → Notifications (/settings/notifications) — manage what triggers a notification and where it's delivered.

What's on the Notifications screen

The page is titled "Signal subscriptions" with the description: "Route which signals you want, how loud, and where. Scoped to the current project."

  • Your subscriptions section at the top — list of active subscriptions, or empty-state: "No subscriptions yet. Add one below to start receiving signals."
  • Add a subscription form below:
    • SIGNAL TYPES — checkbox "All signal types" (or pick specific ones).
    • MINIMUM SEVERITY dropdown — defaults to "Warn and above".
    • CHANNELS — one row per channel. Each row: channel type dropdown (e.g. In-app), recipient input (e.g. @me for self, or #channel-name for Slack/Teams, or email@example.com), per-channel severity floor (e.g. ≥ Warn), and a trash icon. + Add channel button to add another row.
    • FRAMING dropdown — "Standard — title + 1-line context" (other options include Terse and With actions).
    • CADENCE dropdown — Realtime, Hourly, Daily, Weekly digest, Off.
    • + Add subscription button (bottom).

What can trigger a notification

The platform classifies notifications by type:

TypeWhat triggers it
Tracker criticalA tracker run breached a critical threshold
Tracker needs attentionA tracker run breached a warn threshold
Hypothesis invalidatedA logged decision's hypothesis was marked invalidated
Candidate high confidenceAn ontology candidate with high confidence is waiting for review

You can subscribe to each type independently per project, with per-type severity filters and framing options.

Subscription settings

For each (project, type) combination you can set:

  • Channels — in-app, email, Slack, Teams (one or more)
  • Framing — terse (one line), standard, with-actions (suggest next steps)
  • Digest — realtime, hourly, daily, weekly, or off
  • Minimum severity per channel — e.g. "send to Slack only for critical, in-app for everything"

Status: in progress. The subscription UI is fully implemented and your preferences are stored, but the actual delivery layer (sending the email, posting to Slack, etc.) is being moved to a separate workflow runner (Activepieces). In-app notifications work today; email / Slack / Teams delivery depends on your operator's Activepieces deployment. Confirm with your admin which channels are currently active.

Reading a notification

Each notification shows:

  • Title — what happened in one line
  • Project — which project it came from
  • Source object — the tracker, decision or candidate that triggered it
  • Severity — info / warn / critical
  • Timestamp

Click through to see the full context (e.g. open the tracker's detail page).

Marking notifications read

The in-app bell shows unread count. Open the panel to see all recent notifications; clicking one marks it read.

Suppressing noise

If a notification type is too noisy:

  1. Open Settings → Notifications.
  2. Find the project + type.
  3. Either raise its minimum severity ("only critical") or move it to a digest cadence ("daily summary, not realtime").

If you don't want a type at all, set every channel to off.

Tips

  • Default to in-app + daily-digest email. Realtime email gets ignored after a week.
  • Reserve Slack/Teams for critical. Anything lower will train your team to mute the channel.
  • Use "with-actions" framing for trackers. It saves a click into the app to figure out what to do.
  • Audit subscriptions quarterly. Notification rot is real — every team accumulates dead subscriptions.