Everlumen Logo

← Back to Case Studies

Toolstream Temporal Governance Layer (TGL)

Design Specification v0.1

Purpose

Implement a multi-horizon time perception and decision layer that influences:

  • Chat interactions (what the assistant says/asks/frames)
  • Autonomous operation decisioning (what actions it takes, when, and with what guardrails)
  • Inbox ranking (ordering + bundling + deferral logic across tools)

The layer must support simultaneous reasoning across time scales:

  • Ultimate (values / civilizational / existential)
  • Conventional (lifespan / narrative coherence)
  • Strategic (1–10 years)
  • Tactical (weeks–months)
  • Pragmatic (days–weeks, time-bound opportunity windows)
  • Daily (circadian / schedule rhythms)

1. Core Concepts

1.1 Horizons

Define six horizons H = {U, C, S, T, P, D}. Each horizon provides:

  • a scoring function for items (messages, tasks, notifications, proposed actions)
  • a weight w(h) ∈ [0,1], Σ w = 1, dynamically determined by state

1.2 Governance Model

Temporal governance is a control system:

  • Inputs: environment/system/user state
  • Outputs: horizon weights + constraints + explanations
  • Behaviors: ranking, chat policy shaping, autonomy gating

TGL provides:

  • weights: current w vector
  • policies: thresholds, dominance limits, forbidden actions, escalation rules
  • rationales: human-readable explanation snippets

1.3 Objects the Layer Operates On

Normalize everything into "Items" with common metadata:

  • Chat turn (incoming/outgoing)
  • Inbox event (email, ticket update, slack msg, calendar ping, etc.)
  • Task / project artifact
  • Proposed autonomous action (send email, update Jira, schedule meeting, create ticket, etc.)

2. Requirements

2.1 Functional Requirements

  • Multi-horizon scoring for any Item:
    returns scores s_U..s_D plus evidence
  • Dynamic horizon weighting:
    compute w based on state (crisis, runway, deadlines, energy, etc.)
  • Policy gating for autonomy:
    prevent actions misaligned with higher horizons or violating thresholds
  • Inbox ranking:
    compute rank score, produce ordering + bundles + deferrals
  • Chat modulation:
    adapt responses (tone, questions, framing, suggested next steps) based on w and horizon conflict
  • Persistence:
    store long-lived goals/values, projects, and horizon baselines without requiring constant re-elicitation
  • Explainability:
    show "why" at the horizon level (compact and actionable)

2.2 Non-Functional Requirements

  • Latency: inbox ranking should run in < 300ms per item on average (amortized, cached embeddings ok)
  • Robustness: degrade gracefully when goals/state unknown
  • Auditable: log horizon scores, weights, and gating decisions
  • Safety: strict action permissions + reversible operations

3. System Architecture

A) Goal & Values Graph (GVG)

  • persistent ontology: values → life goals → strategic objectives → initiatives → tasks
  • supports versioning + confidence levels + source attribution

B) State Estimator (SE)

Produces a StateVector periodically and on triggers.

  • user state: timezone, typical rhythms, calendar load, inferred energy windows (optional)
  • system state: backlog, open projects, SLA, customer churn risk proxies
  • environment state: deadlines, market/opportunity signals (optional)

C) Horizon Weight Controller (HWC)

Computes w and policies from StateVector.

  • enforces dominance limits ("no tactical dominance > X days without review")
  • manages drift ("strategic underweighted debt")

D) Multi-Horizon Scorer (MHS)

Given Item + GVG + StateVector:

  • outputs s_U..s_D, evidence, extracted constraints (deadlines, stakeholder urgency, etc.)

E) Temporal Decision Engine (TDE)

  • ranks inbox items
  • chooses next autonomous actions
  • shapes chat response directives (questions to ask, framing, caution level)

4. Data Model

4.1 Item Schema (minimal)

item_id
type ∈ {email, jira_update, slack_msg, calendar, task, chat_turn, proposed_action, …}
source (tool + account)
timestamp_created, timestamp_received
deadline (optional, extracted)
stakeholders (optional)
content (text) + content_embedding (optional)
thread_id (optional)
references (links to objects: ticket id, order id, customer id, etc.)

4.2 Goal & Values Graph

Nodes:

  • Value (Ultimate)
  • LifeGoal (Conventional)
  • Objective (Strategic)
  • Initiative (Tactical)
  • Task (Tactical/Pragmatic)

Edges: aligns_with, supports, blocks, depends_on

Node fields: priority, confidence, time_horizon, review_period, owner, tags

4.3 StateVector

now (timezone-aware)
calendar_load_next_7d
deadline_density (count weighted by severity)
backlog_pressure (queue size, SLA risk)
opportunity_signals (optional)
runway_risk / customer_risk proxies (optional)
energy_phase ∈ {morning, afternoon, evening, late} (simple heuristic ok)
recent_horizon_dominance (rolling window)

5. Algorithms

5.1 Multi-Horizon Scoring

For each Item compute s_h ∈ [0,1]. Suggested approach (hybrid):

  • Symbolic extractors: deadlines, "ASAP", meeting times, SLA mentions, stakeholders, financial amounts
  • Semantic match: embedding similarity Item ↔ relevant goal nodes
  • Rules: e.g., deadline within 48h boosts T and P; recurring daily routines boosts D

Example:

  • U score: similarity to values + penalty if violates values constraints
  • C score: similarity to life goals + projects with long identity relevance
  • S score: similarity to strategic objectives + compounding signals
  • T score: relevance to active initiatives + near-term deliverables
  • P score: windowed opportunity, expiring soon, coordination constraints
  • D score: fit to current energy phase + time-of-day appropriateness

Output:

  • scores: {U,C,S,T,P,D}
  • evidence: top matching goal nodes + extracted signals + why

5.2 Horizon Weight Controller

Compute w = f(StateVector) with: baseline weights (user-configurable), state-based modifiers, normalization.

Minimal viable HWC:

  • If deadline_density high → increase T, P
  • If backlog_pressure high → increase T
  • If opportunity_signals high → increase P
  • If "no progress on objectives" detected → increase S
  • If energy_phase low → increase D (for scheduling), but cap it so D doesn't dominate "importance"

Add governance constraints:

  • dominance_cap: if w_T > 0.40 for > N days → trigger strategic review prompt in chat
  • drift_debt: accumulate when strategic underweighted

Deliverables: w vector, policy (thresholds, max autonomy level, review triggers)

5.3 Aggregated Rank Score (Inbox)

RankScore(Item) should combine:

  • weighted horizon score
  • urgency model (deadline proximity, SLA, stakeholder importance)
  • novelty/recency decay
  • thread-aware bundling

Proposed:

base = Σ w_h * s_h
urgency = g(deadline, SLA, escalation keywords)
decay = exp(-λ * age) (for "attention", not for "importance")
thread_boost: if current focus thread matches, boost slightly
final: score = base + α*urgency + β*thread_boost - γ*spam_risk

Outputs: ordered list, bundles by (project, stakeholder, thread, initiative), deferrals with "wake-up" triggers (date/time or event)

5.4 Autonomy Gating

Autonomous actions must pass:

  • permission checks (tool permissions, user-defined)
  • risk checks (sending external comms > internal note)
  • horizon constraints:
    • require s_U above threshold for certain categories
    • require conflict not present (e.g., strong C/S misalignment)
  • uncertainty checks (low confidence → ask in chat)

Define Action Levels:

  • L0: suggest only
  • L1: draft (email/Jira comment) but do not send
  • L2: execute reversible internal actions (tag, label, create task)
  • L3: execute external actions (send email, change ticket state) with strict gating

Gating output must include a short "why" and the horizon conflict, if any.

6. Chat Interaction Specification

TGL must influence chat in three ways:

6.1 Framing

When responding, the assistant should choose a framing mode based on dominant horizons:

  • Strategic-dominant: propose compounding moves, reduce noise, map tasks to objectives
  • Tactical-dominant: prioritize immediate risk reduction, crisp steps, minimal reflection
  • Pragmatic-dominant: highlight time windows, make fast decisions, coordinate stakeholders
  • Daily-dominant: schedule, batch, protect deep work

6.2 Questions the Assistant Asks

When confidence is low, ask the right horizon question:

  • If unclear values conflict → ask ultimate/life intent
  • If unclear initiative linkage → ask tactical context
  • If unclear opportunity window → ask time constraints

6.3 Conflict Surfacing

If a high-urgency item is misaligned with strategy, chat should explicitly surface the conflict, the cost of delay, and the trade-off recommendation.

Example behavior: "This is urgent (T/P), but it pulls you away from Objective X (S). Do you want a tactical sprint or a strategic deferral?"

7. Implementation Plan

Phase 1: MVP (2–4 weeks engineering time)

  • Item schema + ingest pipeline
  • GVG minimal nodes (manual entry + import from existing project metadata)
  • Basic MHS scoring (rules + embeddings)
  • Simple HWC weighting rules
  • Inbox ranking with explanations
  • Autonomy gating limited to L0–L2

Phase 2: Learned Models & Personalization

  • Train/fit weight controller parameters to user feedback (bandit / preference learning)
  • Better horizon scoring via supervised labels ("this was strategic", "this was urgent")
  • Dominance/drift metrics and periodic review prompts

Phase 3: Multi-agent & Memory

  • separate agents per horizon (U/C/S/T/P/D) that vote
  • arbitration layer is HWC + policy
  • long-term memory updates with confidence and provenance

8. Evaluation & Experiments

8.1 Offline Metrics

  • Ranking quality: NDCG@k using human-labeled importance/urgency
  • Action safety: false-positive autonomy executions (must be ~0)
  • Horizon attribution accuracy: agreement with expert labels

8.2 Online Metrics

  • Time-to-important: how fast user reaches top-priority items
  • Context switching reduction: fewer thread hops per session
  • Strategic progress: proportion of weekly time spent on S-aligned items
  • User satisfaction: lightweight "was this the right horizon?" feedback

8.3 Ablations

  • No horizons (baseline)
  • Fixed weights vs dynamic weights
  • Rules-only vs hybrid vs learned
  • With/without dominance constraints

9. Open Research Questions

  • How to infer life goals without being intrusive
  • How to prevent "urgency addiction" when tactical signals stay high
  • How to build trust: explanations that are short but convincing
  • How to quantify "compounding" and "option value" from text streams
  • How to represent ultimate horizon without becoming moralizing or brittle