Skip to content

session-review: add plugin-improvement lens for plugin-misbehavior signal#80

Merged
SnowboardTechie merged 5 commits into
mainfrom
bryan/issue-75-plugin-improvement-lens
May 6, 2026
Merged

session-review: add plugin-improvement lens for plugin-misbehavior signal#80
SnowboardTechie merged 5 commits into
mainfrom
bryan/issue-75-plugin-improvement-lens

Conversation

@SnowboardTechie
Copy link
Copy Markdown
Owner

Summary

Adds a third lens to session-review's Step 1 alongside the existing technical (vault) and collaboration (memory) lenses. The new plugin-improvement lens scans for moments where an Athena Notes agent or skill misbehaved or has a clear sharp edge worth filing, runs them through the Signal Test with issue-route tunings, surfaces survivors as drafts at the Step 5 approval gate, and on approval invokes /issue-create with the draft body as seed text. Two gates total: this skill's Step 5 catches "is this worth filing?", /issue-create's Stage 3.4 catches "is the post correct?".

Strictly scoped — only plugins/athena-notes/ agents and skills. Cross-plugin gripes continue routing through the collaboration lens to memory; generic engineering tech-debt is engineering:tech-debt's territory.

Mirrors the structural shape of #56 (the collaboration-lens precedent #75 cites): Step 1 lens addition, Signal Test extension, categorization-table row, output template, handoff step, edge-case + guardrail updates, plus the same one-line AGENTS.md scope-note extension and CHANGELOG bullet.

Closes #75.

Test plan

  • python3 scripts/lint-frontmatter.py plugins/athena-notes/skills/session-review/SKILL.md passes (skill body is LLM instructions; no test suite touches session-review).
  • Readback of the edited Step 1 / Step 1.5 / Categorization Criteria / Output Templates / Step 10 / Edge Cases / Guardrails sections to confirm the three lenses are syntactically parallel.
  • Confirmed a session with zero plugin-improvement signal produces identical output for the existing channels — no Step changed its behavior conditional on the new lens.
  • Verified the GitHub-issue draft template's section headings match /issue-create Stage 1.3's six default-structure headings exactly (Problem / Motivation, Proposed behavior, Scope (in/out), Implementation hints, Acceptance criteria, Open questions) so Stage 2.1's "skip if already answered" fires on each area.
  • Self-review: four passes of the correctness / security / simplicity lenses; 15 findings accepted across passes, 7 push-backs, 3 skips. Audit at ~/.claude/issue-work/SnowboardTechie-athena-notes-75/summary.md.

Changelog

  • Non-release PR — added a bullet under ## [Unreleased] in CHANGELOG.md.

…gnal (closes #75)

Adds a third lens to session-review's Step 1 alongside the existing
technical (vault) and collaboration (memory) lenses. The plugin-
improvement lens scans for moments where an agent or skill shipped
under plugins/athena-notes/ misbehaved or has a sharp edge worth
filing, runs them through the Signal Test with issue-route tunings
in Step 1.5, surfaces survivors as GitHub-issue drafts at Step 5, and
on approval invokes /issue-create with the draft body as seed text.

Two gates total: this skill's Step 5 catches "is this worth filing?",
/issue-create's Stage 3.4 catches "is the post correct?". The seed's
default-structure headings (Problem / Proposed behavior / Scope /
Acceptance / Open questions) cover /issue-create's Stage 2 areas, so
most Q&A skips per its existing "skip if already answered" rule.

Strictly scoped: only plugins/athena-notes/ agents and skills.
Cross-plugin gripes continue to flow through the collaboration lens
to memory; generic engineering tech-debt is engineering:tech-debt's
territory, not this skill's.

Mirrors the structural shape of PR #56 (the collaboration-lens
precedent the issue body cites): same lens-definition addition,
Signal Test extension, categorization-table row, output template,
handoff step, edge-case + guardrail update, plus the same one-line
AGENTS.md scope-note extension and CHANGELOG bullet.
- Add ## Implementation hints section to GitHub-issue draft template
  and update Step 10's skip-rationale list to include it (Stage 2.4
  was being silently re-asked because the seed didn't cover that area).
- Q1 dedup gains keyword-hygiene guidance: pass --search as a separate
  arg token, strip shell metacharacters from candidate-derived keywords,
  cap query length at ~200 chars to avoid the GitHub Search API
  per-qualifier limit silently returning zero matches.
- Clarify the Open questions placeholder as drop-the-section-if-empty
  rather than leaving a placeholder bullet that would re-trigger
  /issue-create Stage 3.3.
- Add a cwd-mismatch caveat to Step 10: the "Filing this against ..."
  lead-in is a hint, not an override; /issue-create Stage 1.1 resolves
  the target from origin and will ask if cwd's origin differs.
…, soften cwd caveat

- Step 1 collaboration-lens bullet now points at Step 1.5's cross-lens
  routing exception, so a reader of Step 1 alone doesn't conclude
  collaboration signal can never land on issue-routes.
- Signal Test Q1 gains a parenthetical pointing at Step 1.5 Q1's
  open-issue-list dedup for issue-route candidates.
- Q1 keyword-hygiene rule swaps the enumerative strip list (`"`, `;`,
  `$`, backticks) for a positive allowlist (alphanumeric / hyphen /
  underscore / whitespace) so it doesn't go stale on the next shell
  metacharacter someone thinks of.
- Step 10 cwd-mismatch caveat softens "will detect" to a behavior
  conditional on Stage 1.1's "user's initial message" branch firing
  on the seed lead-in, with a fallback to manual call-out at /issue-
  create's Stage 3.4 gate.
…e duplicate

- Q1's tuning bullet replaces the placeholder `<keywords>` with a
  concrete example string so an LLM running the skill pattern-matches
  on the safe form rather than the placeholder.
- Keyword-hygiene rule moves from inline-on-Q1 to a callout after the
  four questions, restoring the Q1–Q4 one-sentence parallel structure
  while keeping the rule reachable from Q1 via a forward reference.
- Categorization Criteria scoping note drops the plugin-improvement
  scope sentence — it duplicated Step 1's lens definition. The
  scoping note now points at Step 1 for the rule rather than
  restating it.
…caveats

- /issue-create has no Stage 2.4 — Implementation hints is area 4
  inside Stage 2.1. Update the GitHub-issue draft template's
  Implementation hints placeholder to reference the actual section.
- Signal Test Q2 prose now lists three destinations rather than two
  (Vault / Harness memory / GitHub issue against this repo) so a
  reader of Q2 in isolation doesn't drop a valid issue-route candidate
  before reaching Step 1.5's tunings.
- Step 10's cwd-mismatch note rolls into a single Caveats block: the
  target-repo verification is unconditional at Stage 3.4 (Stage 1.1's
  detection is hint-dependent), and a sibling reminder to re-read the
  rendered draft for anything session-derived that shouldn't appear in
  a public issue.
- Trim Q1 dedup cross-references at the Signal Test preamble and
  Step 2 item 4 to bare forward-references; the inline procedure
  belongs once at Step 1.5 Q1.
- Drop the parenthetical from the Categorization Criteria scoping
  blockquote; it was addressing a non-concern.
- Replace "cross-lens routing rule" with "destination-row routing"
  in the collaboration-lens bullet so the cross-reference matches
  the phrase used at Step 1.5.
- Tighten the Q1 keyword-hygiene rationale: GitHub Search's limit is
  total query length, not per-qualifier.
@SnowboardTechie SnowboardTechie added enhancement New feature or request feature New feature labels May 4, 2026
@SnowboardTechie SnowboardTechie marked this pull request as ready for review May 6, 2026 11:49
@SnowboardTechie SnowboardTechie merged commit e9c20e2 into main May 6, 2026
3 checks passed
@SnowboardTechie SnowboardTechie deleted the bryan/issue-75-plugin-improvement-lens branch May 6, 2026 11:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request feature New feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

session-review: add plugin-improvement lens for agent/skill misbehavior signal

1 participant