Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
},
"metadata": {
"description": "Tsuga toolkit for AI coding agents: one plugin with the tsuga CLI driver, live-platform investigation, dashboards, incident workflows, OpenTelemetry instrumentation, Collector, signal-choice, telemetry debug, and audit skills.",
"version": "0.8.0"
"version": "0.8.1"
},
"plugins": [
{
Expand Down
2 changes: 1 addition & 1 deletion plugins/tsuga/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "tsuga",
"description": "Tsuga observability plugin: the `tsuga` CLI driver (commands, TQL syntax, aggregation bodies, counter math, deep links, cloud/k8s translators); live-platform investigation for service health, errors, latency, and monitor coverage; dashboard building; incident orchestration; OpenTelemetry SDK, Collector, OTTL, signal-choice, telemetry debug, and audit skills; and meta-skills for building and validating skill bundles.",
"version": "0.8.0",
"version": "0.8.1",
"author": {
"name": "Tsuga Engineering",
"email": "engineering@tsuga.com"
Expand Down
1 change: 1 addition & 0 deletions plugins/tsuga/skills/incident-investigation/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ Check these during synthesis:
9. **Blame a PR without tracing the signal to its emitting code.** A PR that merged in the right window and touches "the right area" is a candidate, not a confirmation. Pin each verbatim signal (error string, metric name, log pattern) to the `file:line` that emits it _first_, then check whether the PR's diff modifies that exact path.
10. **Skip the monitor's own query.** If the case came from a monitor firing, that monitor's filter + threshold IS the first `Saw` of your diagnostic path. Pull it with `tsuga monitors get <id>` before running broader log searches.
11. **Read the error string literally.** Before building a narrative, re-read the raw verbatim error. If the text says `"invalid type: map, expected a sequence"`, the payload being an array is the first thing to check — don't stack indirections on top. If literal reading contradicts your hypothesis, restart from the literal reading.
12. **Empty metric series is not a measured zero.** A query that returns no points can mean the metric is not emitted for that scope, a wrong name, or a scrape gap, not a healthy value. Before a hypothesis dies on "the metric shows nothing", confirm the metric actually emits for that scope (does another cluster or scope return it?) or switch to a signal that answers the same question.

## Workflow

Expand Down
Loading