Hermes report

Session Learning Extraction

Structured learning captured from BB and Hermes sessions. JSONL is the source of truth. This page is generated by the renderer.

5Total Items
2Principles
1Systems
2Presentation Rules
0SOP Candidates
0Routing Updates
5Activation Queue

Summary

Current dataset has 5 extraction items. Activation proposals stay queued here until BB approves a protected write or follow-up workflow.

Principles

Principles candidate

Principles need activation fields

Context: Use when deciding whether a session lesson is ready for durable storage, a report, a skill patch, or no save.

Rule: A principle is not complete until it has context, rule, failure test, evidence, proposed home, activation, and reason.

Failure test: The extraction can be rendered, but BB or a future agent still has to infer why it matters or what protected write it implies.

Reason: Makes the report actionable without auto-writing protected context.

Proposed home: 90-System/Schemas/session-learning-extraction.schema.json

Activation: renderer

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
A principle needs context, rule, failure test, evidence, and activation route.
schemaactivationquality-gate
Principles candidate

Useful context beats principle labels

Context: Use when extracting reusable lessons from BB and Hermes sessions. A short label is only useful if the future agent can tell when to apply it.

Rule: Capture the operating context with the lesson. Include when it applies, what to do, what failure looks like, evidence, proposed home, activation route, and reason.

Failure test: A future agent can read the title but still cannot tell when to use it, what behaviour changes, or where it should be activated.

Reason: Prevents durable learning from turning into vague slogans that do not change future behaviour.

Proposed home: 20-Knowledge/Frameworks/Session-Learning-Extraction.md

Activation: vault

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Useful context beats principle labels.
session-learningprinciplesextraction

Systems

Systems candidate

Cursor backfill prevents silent data loss

Context: Use in cron jobs that process session windows where provider, laptop, delivery, or network failure can interrupt a run.

Rule: Advance last_successful_processed_at only after durable outputs are written. Failed runs leave the cursor unchanged and next run backfills from the last success with safety overlap.

Failure test: A cron run fails before writing data, but the next run starts after the failed window and skipped sessions are never reconsidered.

Reason: Protects extraction coverage when scheduled jobs fail or delivery breaks.

Proposed home: 90-System/Hermes/Session-Learning-Extraction/state.json

Activation: cron

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Cursor/backfill must prevent silent data loss after failed cron runs.
croncursorbackfill

Presentation Rules

Presentation Rules candidate

Reports should be data-first

Context: Use when building recurring Hermes reports or update surfaces that will be regenerated many times.

Rule: Start with schema and JSONL, then build a deterministic renderer, then generate HTML. Do not hand-author future report HTML after the renderer exists.

Failure test: The report looks good once, but later updates require manual HTML edits and drift away from the data model.

Reason: Keeps report updates repeatable, verifiable, and less dependent on LLM layout choices.

Proposed home: 90-System/Hermes/Session-Learning-Extraction/scripts/render_report.py

Activation: renderer

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Reports should be data-first: schema/JSON first, renderer second, HTML last.
reportsrendererjsonl
Presentation Rules candidate

Simple version stays visible

Context: Use when reports contain detail cards, accordions, evidence, or expanded sections.

Rule: Keep the plain-English meaning and action state visible without requiring BB to expand every item.

Failure test: BB has to open each detail block just to know whether something matters, needs approval, or is safe to ignore.

Reason: Preserves scanability when a report becomes detailed.

Proposed home: renderer template and future report design rules

Activation: renderer

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Simple versions must stay visible when reports get detailed.
report-uiscanabilitybb-facing

SOP Candidates

No items yet.

Routing Updates

No items yet.

Activation Queue

Presentation Rules candidate

Reports should be data-first

Context: Use when building recurring Hermes reports or update surfaces that will be regenerated many times.

Rule: Start with schema and JSONL, then build a deterministic renderer, then generate HTML. Do not hand-author future report HTML after the renderer exists.

Failure test: The report looks good once, but later updates require manual HTML edits and drift away from the data model.

Reason: Keeps report updates repeatable, verifiable, and less dependent on LLM layout choices.

Proposed home: 90-System/Hermes/Session-Learning-Extraction/scripts/render_report.py

Activation: renderer

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Reports should be data-first: schema/JSON first, renderer second, HTML last.
reportsrendererjsonl
Presentation Rules candidate

Simple version stays visible

Context: Use when reports contain detail cards, accordions, evidence, or expanded sections.

Rule: Keep the plain-English meaning and action state visible without requiring BB to expand every item.

Failure test: BB has to open each detail block just to know whether something matters, needs approval, or is safe to ignore.

Reason: Preserves scanability when a report becomes detailed.

Proposed home: renderer template and future report design rules

Activation: renderer

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Simple versions must stay visible when reports get detailed.
report-uiscanabilitybb-facing
Principles candidate

Principles need activation fields

Context: Use when deciding whether a session lesson is ready for durable storage, a report, a skill patch, or no save.

Rule: A principle is not complete until it has context, rule, failure test, evidence, proposed home, activation, and reason.

Failure test: The extraction can be rendered, but BB or a future agent still has to infer why it matters or what protected write it implies.

Reason: Makes the report actionable without auto-writing protected context.

Proposed home: 90-System/Schemas/session-learning-extraction.schema.json

Activation: renderer

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
A principle needs context, rule, failure test, evidence, and activation route.
schemaactivationquality-gate
Principles candidate

Useful context beats principle labels

Context: Use when extracting reusable lessons from BB and Hermes sessions. A short label is only useful if the future agent can tell when to apply it.

Rule: Capture the operating context with the lesson. Include when it applies, what to do, what failure looks like, evidence, proposed home, activation route, and reason.

Failure test: A future agent can read the title but still cannot tell when to use it, what behaviour changes, or where it should be activated.

Reason: Prevents durable learning from turning into vague slogans that do not change future behaviour.

Proposed home: 20-Knowledge/Frameworks/Session-Learning-Extraction.md

Activation: vault

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Useful context beats principle labels.
session-learningprinciplesextraction
Systems candidate

Cursor backfill prevents silent data loss

Context: Use in cron jobs that process session windows where provider, laptop, delivery, or network failure can interrupt a run.

Rule: Advance last_successful_processed_at only after durable outputs are written. Failed runs leave the cursor unchanged and next run backfills from the last success with safety overlap.

Failure test: A cron run fails before writing data, but the next run starts after the failed window and skipped sessions are never reconsidered.

Reason: Protects extraction coverage when scheduled jobs fail or delivery breaks.

Proposed home: 90-System/Hermes/Session-Learning-Extraction/state.json

Activation: cron

Evidence
source
Current Telegram Session Learning Extraction project conversation, 2026-06-28
path
/Users/boydbowker/Library/Mobile Documents/iCloud~md~obsidian/Documents/Primary/40-Projects/session-learning-extraction/PLAN.md
quote
Cursor/backfill must prevent silent data loss after failed cron runs.
croncursorbackfill

Run State

cursor_policydo_not_advance_on_error
error_class
job_id1cfe9f9db553
job_nameDaily Session Learning Extractor
last_attempted_run_at
last_statusnot_initialized
last_successful_processed_at
report_nameSession Learning Extraction
safety_overlap_hours6