Back to list
Rwb3n

observation-triage-cycle

by Rwb3n

0🍴 0📅 Jan 22, 2026

SKILL.md


name: observation-triage-cycle description: HAIOS Observation Triage Cycle for processing captured observations. Use when scanning archived work items to triage and act on observations. Guides SCAN->TRIAGE->PROMOTE workflow with dimension validation. generated: 2025-12-28 last_updated: '2026-01-07T20:28:24'

Observation Triage Cycle

This skill defines the SCAN-TRIAGE-PROMOTE cycle for processing archived observations and routing them to actionable outcomes.

When to Use

Manual invocation: Skill(skill="observation-triage-cycle") when processing accumulated observations. Via recipe: just triage-observations for quick scan. Scheduled: Can be invoked during heartbeat or session-end.


The Cycle

SCAN --> TRIAGE --> PROMOTE
  |         |           |
  |         |           +-> spawn:INV, spawn:WORK, spawn:FIX
  |         |           +-> memory (store insight)
  |         |           +-> discuss (flag for operator)
  |         |           +-> dismiss (no action)
  |         |
  |         +-> Apply dimensions: category, action, priority
  |
  +-> Find archived observations with triage_status: pending

1. SCAN Phase

Goal: Find archived work items with untriaged observations.

Actions:

  1. Run scan command:
    just triage-observations
    
  2. Report count of items with pending observations
  3. List work items and observation summaries

Exit Criteria:

  • Scan completed
  • Count and list of pending observations reported

Tools: Bash(just triage-observations), Read


2. TRIAGE Phase

Goal: Classify each observation with category, action, and priority.

Triage Dimensions (Industry Standard):

DimensionQuestionValues
CategoryWhat type?bug, gap, debt, insight, question, noise
ActionWhat to do?spawn:INV, spawn:WORK, spawn:FIX, memory, discuss, dismiss
PriorityWhen?P0 (blocking), P1 (this session), P2 (next), P3 (backlog)

Actions:

  1. For each observation, prompt for dimensions:
    • Category: What type of observation is this?
    • Action: What should happen next?
    • Priority: How urgent is this?
  2. Validate dimensions (ValueError if invalid)
  3. Collect triaged observations

Example Triage Prompt:

Observation: "commit-close recipe uses legacy patterns"
Section: Gaps Noticed
Source: E2-217

Category? [bug/gap/debt/insight/question/noise]: gap
Action? [spawn:INV/spawn:WORK/spawn:FIX/memory/discuss/dismiss]: spawn:FIX
Priority? [P0/P1/P2/P3]: P2

Exit Criteria:

  • All observations triaged with valid dimensions
  • Triaged list ready for promotion

Tools: AskUserQuestion (for dimension selection), triage_observation()


3. PROMOTE Phase

Goal: Execute the action for each triaged observation.

Action Handlers:

ActionExecution
spawn:INVCreate investigation via /new-investigation
spawn:WORKCreate work item via /new-work
spawn:FIXCreate quick fix work item (priority P1)
memoryStore insight via ingester_ingest
discussFlag for operator (report but no action)
dismissMark as noise (no action needed)

Actions:

  1. For each triaged observation, execute action
  2. Track results (spawned IDs, memory IDs)
  3. Update observations.md with triage log entry
  4. Set triage_status: triaged in frontmatter

Exit Criteria:

  • All actions executed
  • Observations.md updated with triage log
  • triage_status updated to triaged

Tools: /new-investigation, /new-work, ingester_ingest, Edit


Composition Map

PhasePrimary ToolOutput
SCANBash, ReadList of pending observations
TRIAGEAskUserQuestionTriaged observation list
PROMOTE/new-*, ingesterAction results

Quick Reference

PhaseQuestion to AskIf NO
SCANAny pending observations?Exit - nothing to triage
TRIAGEAll dimensions valid?Reprompt with validation error
PROMOTEAction executed?Report error, continue to next

Key Design Decisions

DecisionChoiceRationale
Standalone skillNot embedded in close-work-cycleKeeps closure lean; triage runs independently
Interactive triageAgent prompts per observationAvoids automated misclassification
triage_status fieldIn frontmatterEnables scan to skip processed files
Industry dimensionsbug/gap/debt/insight/question/noiseAligns with bug triage patterns

  • E2-217: Observation Capture Gate (capture mechanism)
  • INV-047: Close Cycle Observation Phase Ordering (capture timing)
  • INV-023: ReasoningBank Feedback Loop Architecture (same pattern)
  • close-work-cycle skill: Captures observations during closure
  • observations.py: Core functions for scan, parse, triage, promote

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon