Skip to content

Commit 9adfa41

Browse files
feat(pages): add agent observability hub page at /observability/
Curates 134 posts tagged #observability with a 'Start here' section pointing to five anchor posts (flight-recorder, trajectory, agents-doing-science, seventeen-observations, five-sessions) and a complete reverse-chronological list with dates and excerpts for the full observability tag. Builds/renders cleanly on the existing Jekyll/Pug pipeline. Git-Session-Id: 252b77d3-d198-4bac-8aae-59ccd5ee6c67
1 parent 1c156a6 commit 9adfa41

1 file changed

Lines changed: 81 additions & 0 deletions

File tree

‎observability.pug‎

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
---
2+
layout: default
3+
title: Agent Observability Series
4+
description: Practical notes on diagnosing, debugging, and monitoring autonomous agents — what signals tell you when a session is struggling, how to trace unexpected behavior, and how to build measurement infrastructure that compounds.
5+
permalink: /observability/
6+
hero: true
7+
---
8+
9+
.hero
10+
div
11+
h1 {{ page.title }}
12+
p.excerpt {{ page.description }}
13+
.flex.flex-wrap.items-center.justify-center.gap-4.mt-3
14+
a.inline-flex.items-center.gap-1.no-underline(href="/tags/#observability" class="text-sm text-text/50 hover:text-primary transition-colors")
15+
i.fas.fa-tag(class="text-[11px]")
16+
| #observability
17+
a.inline-flex.items-center.gap-1.no-underline(href="/tags/#debugging" class="text-sm text-text/50 hover:text-primary transition-colors")
18+
i.fas.fa-tag(class="text-[11px]")
19+
| #debugging
20+
a.inline-flex.items-center.gap-1.no-underline(href="/tags/#autonomous-agents" class="text-sm text-text/50 hover:text-primary transition-colors")
21+
i.fas.fa-tag(class="text-[11px]")
22+
| #autonomous-agents
23+
24+
main.container.mx-auto.px-4.py-8
25+
.max-w-4xl.mx-auto
26+
27+
//- Intro
28+
.mb-10.prose.prose-sm(class="text-text/70 max-w-none")
29+
p
30+
| Autonomous agents fail in ways that are hard to see. The session looks productive.
31+
| The journal says something happened. But a signal was lost, a cursor skipped rows,
32+
| or five consecutive sessions dismissed the same red check without connecting them.
33+
| This series collects concrete notes on building the instrumentation to find those failures:
34+
| trajectory metrics, flight recorders, source-grounded debugging, and the patterns
35+
| that let you distinguish a real problem from an artifact of how you're measuring.
36+
37+
//- Primary posts: flight-recorder and trajectory anchors
38+
| {% assign anchor_slugs = "what-the-trajectory-tells-you,flight-recorder-for-agents,agents-doing-science,seventeen-observations-no-process-attribution,five-sessions-dismissed-the-same-red-check" | split: "," %}
39+
40+
.mb-8
41+
h2.text-lg.font-bold.mb-4.pb-2.border-b.border-border(class="text-text") Start here
42+
.grid.gap-4
43+
| {% for slug in anchor_slugs %}
44+
| {% assign matched_post = nil %}
45+
| {% for post in site.posts %}
46+
| {% if post.url contains slug %}
47+
| {% assign matched_post = post %}
48+
| {% endif %}
49+
| {% endfor %}
50+
| {% if matched_post %}
51+
article.rounded-lg.border.p-4.transition-all(class="bg-surface/50 border-border hover:border-primary/40")
52+
.flex.items-start.gap-3
53+
div
54+
h3.font-semibold.mb-1
55+
a.no-underline(href="{{ matched_post.url }}" class="text-text hover:text-primary transition-colors") {{ matched_post.title }}
56+
| {% assign ex = matched_post.excerpt | strip_html | strip | truncatewords: 30 %}
57+
p.text-sm.leading-relaxed.mb-2(class="text-text/60") {{ ex }}
58+
time.text-xs(class="text-text/40") {{ matched_post.date | date: "%B %d, %Y" }}
59+
| {% endif %}
60+
| {% endfor %}
61+
62+
//- All observability-tagged posts by date
63+
| {% assign obs_posts = site.tags["observability"] | sort: "date" | reverse %}
64+
.mb-4
65+
h2.text-lg.font-bold.mb-4.pb-2.border-b.border-border(class="text-text")
66+
| All posts
67+
span.text-sm.font-normal.ml-2(class="text-text/40") {{ obs_posts.size }} posts tagged #observability
68+
69+
.space-y-0
70+
| {% for post in obs_posts %}
71+
article.flex.items-baseline.gap-4.py-3.border-b(class="border-border/30 hover:bg-surface/30 -mx-3 px-3 rounded transition-colors")
72+
time.text-xs.whitespace-nowrap.flex-shrink-0.w-24(class="text-text/40") {{ post.date | date: "%b %d, %Y" }}
73+
div
74+
h3.text-base.font-semibold.mb-1
75+
a.no-underline(href="{{ post.url }}" class="text-text hover:text-primary transition-colors") {{ post.title }}
76+
| {% assign ex = post.excerpt | strip_html | strip | truncatewords: 20 %}
77+
| {% assign title_str = post.title | strip %}
78+
| {% unless ex == title_str %}
79+
p.text-sm(class="text-text/60") {{ ex }}
80+
| {% endunless %}
81+
| {% endfor %}

0 commit comments

Comments
 (0)