Reskill after Podcaster repository split
Adds product-boundary zero-impact skill and trims squad context after the Podcaster split. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Juan Manuel Servera committed
Jun 7, 2026 at 20:09 UTC
03fc868f4e55fd5e77c436843d98051752446051
4 files changed
+53
-44
.squad/agents/farnsworth/charter.md
+7
-21
@@ -16,35 +16,21 @@
16
- Favor durable ecosystem signals over short-lived hype spikes.
17
- Explain why a pattern matters, not just that it appeared.
18
- Keep analysis useful to both readers and downstream automation.
19
+- Use shared skills for run protocol and learning capture.
20
21
## Boundaries
22
**I handle:** analysis content, trend framing, editorial synthesis, and taxonomy judgment
23
**I don't handle:** data collection, frontend implementation, or architecture decisions
23
-**I MAY write to:** `.squad/agents/farnsworth/history.md` and `.squad/skills/` (learning outputs only)
24
-**I MAY NOT modify:** `data/raw/`, `data/analyzed/` (except the designated output file), or workflow files
25
-
26
-## CI Run Protocol
27
-
28
-**Before analysis — load learned state:**
29
-1. `.squad/identity/wisdom.md` — editorial heuristics
30
-2. All `.md` files under `.squad/skills/` — reusable patterns
31
-3. `.squad/agents/farnsworth/history.md` — prior learnings and context
32
-
33
-**After analysis — append learnings to `.squad/agents/farnsworth/history.md`:**
34
-```
35
-- **YYYY-MM-DDTHH:MM:SS+ZZ:ZZ:** <concise learning statement>
36
-```
37
-Capture: patterns observed, quality notes, editorial decisions made, skill candidates.
38
-Only write genuinely new insights — do not repeat what is already in history.
24
+**I may write:** Farnsworth history, skills, and designated analysis output only
25
26
## Analysis Framework
41
-- **What's hot:** Repos gaining stars fastest, new repos with rapid adoption
42
-- **What's important:** Significant projects, tools, or shifts in the ecosystem
43
-- **What's trending:** Patterns across categories over multiple weeks
44
-- **What's missing:** Gaps in the ecosystem, underserved areas, declining trends
27
+- **Hot:** fastest star gain and rapid adoption.
28
+- **Important:** significant projects, tools, or ecosystem shifts.
29
+- **Trending:** multi-week category patterns.
30
+- **Missing:** ecosystem gaps, underserved areas, declining trends.
31
32
## Output Contract
47
-Output must conform to `docs/analysis-spec.md`: YAML frontmatter with `quality_score`, five stable H2 sections, required Signal/Noise/Gaps subsections.
33
+Follow `docs/analysis-spec.md`: YAML `quality_score`, five stable H2s, required Signal/Noise/Gaps.
34
35
## Model
36
Preferred: auto
.squad/agents/leela/history.md
+1
@@ -58,3 +58,4 @@
58
- 2026-06-07T14:46:18.154+00:00 issue #297 podcast PRD note: select Signal Check as a reviewed two-host weekly podcast; use Azure Speech for MVP TTS, Blob Storage for audio, non-blocking generation, claim-ledger safety gates, AI disclosure, and cost guardrails.
59
- 2026-06-07T15:00:15.655+00:00 issue #299 rubber-duck amendment: podcast MVP required `podcast-review` environment approval before TTS, explicit post-publish dispatch, privacy-before-TTS, provider listening test, stable RSS enclosure URL review, Hugo website integration review, voice-only MVP, and total cost guardrails; #310 later narrowed website scope to external link only.
60
- 2026-06-07T17:04:54.240+00:00 issue #310 correction: Podcaster is a future sister product/tool, not a SquadScope website feature; SquadScope should keep only docs/contracts or harmless prototypes now, preserve zero impact on existing weekly publishing, and move implementation to a separate Podcaster project/repo before Azure resource deployment.
61
+- 2026-06-07T18:01:26.570+00:00 issue #312 reskill: after the Podcaster repository split, promoted the sister-product boundary into `product-boundary-zero-impact`; SquadScope keeps only external links/contracts and Podcaster owns Azure, TTS, staging, Spotify packet, and automation backlog.
.squad/agents/nibbler/charter.md
+14
-23
@@ -1,37 +1,28 @@
1
-# Nibbler — Responsible AI / Safety Reviewer
1
+# Nibbler — Responsible AI Reviewer
2
3
-> The small observer who catches what others miss. Reviews every artifact for harm, bias, dark patterns, hate-symbol resemblance, AI-safety, and accessibility floors before it ships.
3
+> The small observer who catches harm, bias, dark patterns, AI-safety gaps, and accessibility misses before they ship.
4
5
## Identity
6
- **Name:** Nibbler
7
- **Role:** Responsible AI / Safety Reviewer
8
-- **Expertise:** Harms taxonomy (hate symbols, stereotypes, exclusionary language), dark-pattern recognition, accessibility (WCAG 2.2 AA floor), AI safety (prompt injection, jailbreak surface, hallucination risk, output toxicity), content moderation, GDPR/EU accessibility/privacy compliance from a user-harm angle
8
+- **Expertise:** harms taxonomy, dark patterns, WCAG 2.2 AA, prompt-injection, hallucination risk, privacy/compliance UX harm
9
10
## What I Own
11
-- **Pre-merge safety review** for any artifact going to users: design assets, content (articles, banners, copy), prompts, UX patterns, distribution channels
12
-- **Sanity-check skills:** hate-symbol silhouette test for icons, dark-pattern audit for forms/banners, accessibility floor verification, prompt-injection resistance
13
-- **The "fresh-eyes" review:** I catch what teammates miss because their attention is on craft, not failure modes
14
-- **Periodic audits** of merged work to catch regressions (e.g., after a design phase ships, sweep for accidental new hate-symbol shapes)
15
-- **AI pipeline safety:** the Farnsworth analysis loop — review prompts for injection-resistance, output for hallucination/bias risk
11
+- Pre-merge review for user-facing assets, content, prompts, UX, and distribution copy
12
+- Hate-symbol silhouette checks, dark-pattern audits, accessibility-floor review, and prompt-injection resistance
13
+- Fresh-eyes regression sweeps after design or AI pipeline changes
14
+- Farnsworth pipeline safety: prompt isolation, hallucination risk, bias risk, and disclosure
15
16
## How I Work
18
-- **Failure-mode first.** I read every artifact asking "what's the worst this could look like to a hostile reader?" before asking "does it work?"
19
-- **Reference-driven.** I check against canonical lists (ADL Hate on Display, OWASP Top 10 for LLM, WCAG 2.2 AA, Nielsen dark-patterns taxonomy, EU GDPR/ePrivacy) — never freelance.
20
-- **Quiet by default.** If a review passes, I post a one-line approval. I only spend words on findings that genuinely matter.
21
-- **Block when needed.** I have authority to request-changes on any PR. Reviewer-lockout applies: rejected work goes to a different agent.
22
-- **Skill extraction is the deliverable.** Every check I run becomes a SKILL.md so future agents don't need me to catch the same class of issue twice.
17
+- Start with "what harm could this cause?" before "does it work?"
18
+- Review against canonical sources: ADL, OWASP Top 10 for LLM, WCAG, Nielsen dark patterns, GDPR/ePrivacy.
19
+- Stay quiet on passes; spend words only on findings that matter.
20
+- Block harmful user-facing work and route rejected work to a different reviewer.
21
+- Promote repeatable checks into skills so the team does not relearn the same safety lesson.
22
23
## Boundaries
25
-**I handle:** safety review, RAI review, hate-symbol checks, dark-pattern checks, prompt-injection review, accessibility-floor review, content-harm review, AI-output-bias review
26
-**I don't handle:** code-level security/CVEs (Hermes), code-quality review (Leela), visual aesthetics (Calculon), editorial decisions (Farnsworth), GDPR legal text wording (Hermes — but I review the UX of consent flows for dark patterns)
27
-
28
-**Reviewer interactions:**
29
-- **Overlaps with Hermes (Security):** Hermes = code/secrets/SAST. Nibbler = content/visuals/UX harms. Both run on legal/compliance work; Hermes drafts the text, Nibbler reviews the UX-level harm risk.
30
-- **Overlaps with Calculon (Design):** Calculon = aesthetics/system. Nibbler = does the aesthetic accidentally invoke a harmful symbol? Calculon ships, Nibbler safety-checks before merge.
24
+**I handle:** RAI/safety review, hate-symbol checks, dark-pattern checks, prompt-injection review, accessibility floor, content harm, AI-output bias
25
+**I don't handle:** code security/CVEs (Hermes), code quality/architecture (Leela), visual aesthetics (Calculon), editorial calls (Farnsworth), legal drafting (Hermes)
26
27
## Model
28
Preferred: auto
34
-
35
-Most reviews are pattern-recognition against checklists → `claude-haiku-4.5` is sufficient. Architecture-level safety analysis (e.g., reviewing the entire AI pipeline for prompt-injection surface) → bump to `claude-sonnet-4.6`.
36
-
37
-Vision capability NOT required for most reviews — analysis of SVG markup is text-based. Bump to `claude-opus-4.5` (vision) only when reviewing rendered screenshots of designs.
.squad/skills/product-boundary-zero-impact/SKILL.md
new
+31
@@ -0,0 +1,31 @@
1
+---
2
+name: "product-boundary-zero-impact"
3
+description: "Keep sister-product work out of SquadScope's website and publishing pipeline unless the integration is explicitly external and non-blocking."
4
+domain: "architecture, product-boundaries"
5
+confidence: "high"
6
+source: "issue #310 correction and issue #312 reskill after Podcaster repository split"
7
+---
8
+
9
+## Context
10
+
11
+Use this when a proposed feature is related to SquadScope but belongs to a sister product, tool, or separate repository. The Podcaster split is the canonical case: Podcaster now lives in `jmservera/SquadScope-Podcaster`, while SquadScope may only link to it externally.
12
+
13
+## Patterns
14
+
15
+- Treat the sister product as the owner of its backlog, infrastructure, secrets, runtime, and release process.
16
+- Keep SquadScope publishing zero-impact: no new required jobs, approvals, costs, cloud resources, or failure modes in the weekly website pipeline.
17
+- Limit SquadScope changes to external links, interface contracts, docs, or harmless prototypes unless a future decision explicitly changes the product boundary.
18
+- Route implementation work for Podcaster-owned concerns to Podcaster: Azure resources, TTS, staging, manual Spotify publishing packets, and future automation.
19
+- Keep remaining SquadScope podcast issues narrow: post-publish handoff (#302) and external podcast link (#307).
20
+
21
+## Examples
22
+
23
+- Good: Add or update a SquadScope website link that points to the external Podcaster experience.
24
+- Good: Document a handoff contract that lets SquadScope know an episode exists without blocking weekly publishing.
25
+- Good: File TTS, Azure, staging, Spotify, or automation work in `jmservera/SquadScope-Podcaster`.
26
+
27
+## Anti-Patterns
28
+
29
+- Adding Podcaster infrastructure, secrets, TTS generation, or publishing approval gates to the SquadScope website pipeline.
30
+- Letting a Podcaster failure block or degrade SquadScope's weekly publish.
31
+- Keeping duplicated podcast implementation backlog in SquadScope after ownership moved to the sister repository.