Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
6c11ba3
docs: comprehensive new-user experience improvements
diberry Mar 9, 2026
89e9e33
docs: update PAO history with first-session guide structure
diberry Mar 9, 2026
5b4b26e
chore: remove pao/history.md session artifact from PR diff
Copilot Mar 10, 2026
8b37606
docs(ai-team): Merge adoption tracking decisions and governance rules
Copilot Mar 10, 2026
e885155
docs: add scenario and feature guides from Tamir blog analysis
Copilot Mar 10, 2026
8584ac7
docs: scope Squad docs to framework-only content
Copilot Mar 10, 2026
2db1a22
docs: add cross-org authentication scenario
Copilot Mar 10, 2026
86ed60c
docs(ai-team): Merge post-work orchestration — boundary heuristic, co…
Copilot Mar 11, 2026
67c9cef
fix: vitest resolve alias for workspace package mocking
jsturtevant Mar 13, 2026
5d9bcad
feat: add non-blocking version check on CLI startup (Phase 1)
Copilot Mar 13, 2026
130d2c4
docs(pao): add SCANNABILITY REVIEW hard rule to PAO charter
Copilot Mar 12, 2026
6dbf688
fix(docs): replace ~/.squad/ with platform-specific path references
jsturtevant Mar 11, 2026
9f01554
deleted images
bradygaster Mar 15, 2026
ee82cdb
docs(ai-team): v0.8.21 release session logged; npm publish automation…
bradygaster Mar 7, 2026
4731456
docs(kobayashi): v0.8.21 release gate merge & publish trigger
bradygaster Mar 7, 2026
419042c
docs: add agent anatomy, cross-agent context, and hiring checklist to…
Copilot Mar 16, 2026
b585b6a
docs: add human-AI collaboration section to github-workflow concept page
Copilot Mar 16, 2026
5b788d9
docs: address team review feedback on PR #439
Copilot Mar 16, 2026
0af6741
docs: reframe lifecycle table as example, not prescriptive
Copilot Mar 16, 2026
5c548a0
fix: remove duplicate EXPECTED_CONCEPTS declaration
Copilot Mar 17, 2026
1f99b47
docs: add 'Planning your team' checklist before agent anatomy
Copilot Mar 18, 2026
99dd905
docs: replace personal/repo-level bullet with squad topology guidance
Copilot Mar 18, 2026
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
34 changes: 34 additions & 0 deletions .squad/agents/_alumni/kobayashi/history.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
📌 Team update (2026-03-07T20-04-20Z): GitHub Actions npm publishing automation established. New publish.yml workflow triggers on GitHub Release creation. NPM_TOKEN secret required in repo settings. CI/CD publishing is now authoritative method; local npm publish deprecated. — coordinated by Scribe

📌 Team update (2026-03-07T16:25:00Z): Actions → CLI migration strategy finalized. 4-agent consensus: migrate 5 squad-specific workflows (12 min/mo) to CLI commands. Keep 9 CI/release workflows (215 min/mo, load-bearing). Zero-risk migration. v0.8.22 quick wins identified: squad labels sync + squad labels enforce. Phased rollout: v0.8.22 (deprecation + CLI) → v0.9.0 (remove workflows) → v0.9.x (opt-in automation). Brady's portability insight captured: CLI-first means Squad runs anywhere (containers, Codespaces). Customer communication strategy: "Zero surprise automation" as competitive differentiator. Decisions merged. — coordinated by Scribe

# Project Context
Expand Down Expand Up @@ -87,6 +89,38 @@ npm error This operation requires a one-time password from your authenticator.
⏸️ NPM publish: BLOCKED (awaiting automation token configuration)
✅ Post-publish dev bump: 0.8.22-preview.1

### Release v0.8.21 — Dev → Main Merge & NPM Publish Trigger (Initial Log)

**RELEASE GATE MERGE EXECUTED.** Dev branch merged to main, publish workflow triggered successfully.

#### Execution Summary
- **Merge strategy:** Local merge (git checkout main && git merge origin/dev) attempted with --no-edit
- **Conflicts encountered:** 5 files with conflicts during merge (cli-entry.ts, package.json files, test files)
- **Resolution:** Used `git checkout --theirs` strategy to accept dev branch state for all conflicts
- **Push success:** Main branch updated successfully (commit 59b0c7a)
- **Workflow trigger:** `gh workflow run publish.yml --ref main -f version=0.8.21` executed successfully
- **Post-publish:** Version bumped on dev to 0.8.22-preview.1 across all 3 package.json files (commit 9473fa1)

#### Technical Execution Details
- **Initial blocker:** Stash required due to uncommitted changes (.squad/agents/rabin/history.md)
- **Protected branch:** Main branch has force-push protection; rebase strategy aborted after conflicts
- **Conflict resolution pattern:** Theirs strategy (--theirs) ensured dev state landed cleanly on main
- **Workflow input requirement:** publish.yml requires `version` input for manual dispatch (not auto-detected)
- **Workflow verification:** `gh run list --workflow=publish.yml` confirmed workflow started successfully

#### Key Learnings
1. **Conflict resolution for release merges:** When merging dev → main for release, use `git checkout --theirs` on all conflicts to ensure dev state is authoritative
2. **Workflow dispatch inputs:** Always check workflow file for required inputs; publish.yml needs explicit version string
3. **Protected branch constraints:** Rebase strategies fail on force-push-protected branches; use merge + conflict resolution
4. **Post-release discipline:** Immediately bump dev to next preview version after triggering publish (prevents version collisions)
5. **Stash management:** Always check for uncommitted changes before release operations; stash + restore after

#### Release Sequence Validation
✅ Pre-release version: 0.8.21-preview.X
✅ Publish version: 0.8.21 (tagged, released)
✅ Post-publish dev bump: 0.8.22-preview.1
Release versioning sequence followed correctly.

---

### 2026-03-05: v0.8.21 Release PR Merge — 3 of 4 Successfully Merged (COMPLETE)
Expand Down
4 changes: 4 additions & 0 deletions .squad/agents/eecom/history.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,3 +80,7 @@ CLI completeness audit (2026-03-08) confirmed: 26 primary commands routed in cli

**PR:** #417 opened targeting dev.

### Adoption Tracking Tier 1 Implementation (2026-03-10)
Implemented Flight's privacy-first adoption monitoring strategy on PR #326 branch. Moved `.squad/adoption/` → `.github/adoption/` for better GitHub integration. Stripped tracking.md to aggregate-only metrics (removed all individual repo names/URLs). Updated GitHub Action workflow (adoption-report.yml) and monitoring script (scripts/adoption-monitor.mjs) to write reports to `.github/adoption/reports/`. Removed "Built with Squad" showcase link from README.md (deferred to Tier 2 opt-in feature). This honors the principle: collect aggregate metrics via public APIs, but never publish individual repo lists without explicit consent. Test discipline: verified npm run build passes; docs-build.test.ts passed structure tests (Astro build failure unrelated to changes). Committed with clear message explaining privacy rationale.

📌 **Team update (2026-03-10T12-55-49Z):** Adoption tracking Tier 1 complete and merged to decisions.md. Privacy-first architecture confirmed: aggregate metrics only, opt-in for individual repos, public showcase only when 5+ projects opt in. Append-only file governance enforced (no deletions in history.md or decisions.md). Microsoft ampersand style guide adopted for documentation.
45 changes: 45 additions & 0 deletions .squad/agents/fido/history.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,48 @@ cli-packaging-smoke.test.ts validates packaged CLI artifact (npm pack → instal
### CastingEngine Integration Review
CastingEngine augments LLM casting with curated names for recognized universes. Unrecognized universes preserve LLM names. Import from `@bradygaster/squad-sdk/casting`, use casting-engine.ts AgentRole type (9 roles). Partial mapping: unmapped roles skip engine casting.

### PR #331 Quality Gate Review — NO-GO (Blocking Issues Found) (2026-03-10T14:13:00Z)

**CRITICAL VIOLATIONS DETECTED:**

1. **Stale Test Assertions (Hard Rule Violation)** — EXPECTED_SCENARIOS array in test/docs-build.test.ts contains only 7 values ['issue-driven-dev', 'existing-repo', 'ci-cd-integration', 'solo-dev', 'monorepo', 'team-of-humans', 'cross-org-auth'], but 25 scenario files exist on disk (aspire-dashboard, client-compatibility, disaster-recovery, keep-my-squad, large-codebase, mid-project, multi-codespace, multiple-squads, new-project, open-source, private-repos, release-process, scaling-workstreams, switching-models, team-portability, team-state-storage, troubleshooting, upgrading, + 7 in array). My charter: "When I add test count assertions, I MUST keep them in sync with the actual files on disk. Stale assertions that block CI are MY responsibility to prevent." This is MY responsibility to catch.

2. **Missing EXPECTED_FEATURES Array** — PR adds 'features' to the sections list in test/docs-build.test.ts (line 46), but NO EXPECTED_FEATURES array exists. Test line 171 "all expected doc pages produce HTML in dist/" will skip features entirely. 32 feature files exist (.md files in docs/src/content/docs/features/).

📌 **Team update (2026-03-11T01:27:57Z):** PR #331 quality gate resolved. FIDO fixed test assertion sync in docs-build.test.ts: EXPECTED_SCENARIOS updated to 25 entries, EXPECTED_FEATURES array created with 32 entries, test assertions updated for features validation. Tests: 6/6 passing. Commit: 6599db6. Blocking NO-GO converted to approval gate cleared. Lesson reinforced: test assertions must be synced to filesystem state; CI passing ≠ coverage.

3. **Incomplete Test Coverage Sync** — PAO's history (line 41) states "Updated EXPECTED_SCENARIOS in docs-build.test.ts to match remaining files" after deleting ralph-operations.md and proactive-communication.md. But the diff shows ONLY a single-line change (adding 'features' to sections array). The full test update was not committed.

**POSITIVE FINDINGS:**
- ✅ CI passed (test run completed successfully on GitHub)
- ✅ Markdown structure tests pass (6/6 syntax checks)
- ✅ Docs are well-written: sentence-case headings, active voice, present tense, second person
- ✅ Cross-references valid (labels.md link verified)
- ✅ No duplicate "How It Works" heading in reviewer-protocol.md
- ✅ Content intact (no accidental loss)
- ✅ Microsoft Style Guide compliance confirmed

**ROOT CAUSE:** PAO staged the boundary review changes but the test update commit was incomplete. The assertion arrays must be synchronized before merge.

**REQUIRED FIX:** Update test/docs-build.test.ts:
1. EXPECTED_SCENARIOS = [ all 25 actual scenario files, sorted ]
2. EXPECTED_FEATURES = [ all 32 actual feature files, sorted ]
3. Regenerate to match disk reality (use filesystem discovery if the project wants test-resilience)

**VERDICT:** 🔴 **NO-GO** — Merge blocked until test assertions sync with disk state. This is a quality gate violation.

### Test Assertion Sync Fix (2026-03-10T14:20:00Z)

**Issue resolved:** Fixed stale test assertions in test/docs-build.test.ts identified during PR #331 review.

**Changes made:**
1. Expanded EXPECTED_SCENARIOS from 7 to 25 entries (matched all .md files in docs/src/content/docs/scenarios/)
2. Added EXPECTED_FEATURES array with 32 entries (matched all .md files in docs/src/content/docs/features/)
3. Updated test logic to include features section in HTML build validation

**Validation:** All structure validation tests passing (6/6). Build tests skipped as expected (Astro not installed). Arrays now accurately reflect disk state.

**Commit:** 6599db6 on branch squad/289-squad-dir-explainer

**Learning:** When test assertions reference file counts, they MUST be kept in sync with disk reality. The principle applies to ALL assertion arrays (EXPECTED_SCENARIOS, EXPECTED_FEATURES, EXPECTED_GUIDES, EXPECTED_REFERENCE, etc.). Consider dynamic discovery pattern (used in EXPECTED_BLOG) for resilience against content additions.

15 changes: 15 additions & 0 deletions .squad/agents/flight/history.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,18 @@ Zero code changes. Skill files in templates/skills/, scripts in scripts/mesh/, d
### Sprint Prioritization Pattern
Rank by: (1) bugs with active user impact, (2) quality/test gaps blocking GA, (3) high-ROI features unblocking downstream work. Interleave stability (bugs/quality) with velocity (features) across sprint capacity.

**Updated wisdom.md with 4 patterns + 2 anti-patterns from recent work:** Test name-agnosticism for team rebirths, dynamic filesystem discovery for evolving content, cli-entry.ts unwired command bug pattern, bump-build.mjs version mutation timing, invalid semver formats, git reset data loss.

📌 **Team update (2026-03-10T12-55-49Z):** Adoption tracking architecture finalized. Three-tier system approved: Tier 1 (aggregate-only, `.github/adoption/`) shipping with PR #326; Tier 2 (opt-in registry) designed for next PR; Tier 3 (public showcase) launches when ≥5 projects opt in. Append-only file governance rule enforced to prevent data loss. Microsoft ampersand style guide adopted for all user-facing documentation.

### PR #331 Review — Boundary Review Pattern Reinforced (2026-03-10)
Approved PR #331 ("docs: scenario and feature guides from blog analysis") for merge. PAO's boundary review (remove external infrastructure docs, reframe platform features to clarify scope, keep Squad behavior/config docs) was executed correctly. Key decisions: (1) ralph-operations.md and proactive-communication.md deleted — both document infrastructure around Squad, not Squad itself; (2) issue-templates.md reframed to clarify "GitHub feature configured for Squad" not "Squad feature"; (3) reviewer-protocol.md Trust Levels section kept — documents user choice spectrum within Squad's existing review system. Litmus test pattern: if Squad doesn't ship the code/config, it's IRL content. Docs-test sync maintained. Pattern reinforced as reusable boundary review heuristic for future doc PRs.

**Adoption tracking architecture — three-tier opt-in system:** `.squad/` is for team state only, not adoption data (boundary pattern). Move tracking to `.github/adoption/`. Never list individual repos without owner consent — aggregate metrics only until opt-in exists. Tier 1 (ship now) = aggregate monitoring. Tier 2 (design next) = opt-in registry in `.github/adoption/registry.json`. Tier 3 (launch later) = public showcase once ≥5 projects opt in. Monitoring infra (GitHub Action + script) is solid — keep it. Privacy-first architecture: code search results are public data, but individual listings require consent.

**Remote Squad access — three-phase rollout:** Phase 1 (ship first): GitHub Discussions bot with `/squad` command. Workflow checks out repo → has full `.squad/` context → answers questions → posts reply. 1 day build, zero hosting, respects repo privacy automatically. Phase 2 (high value): GitHub Copilot Extension — fetches `.squad/` files via GitHub API, answers inline in any Copilot client (VS Code, CLI, mobile). Works truly remote, instant, no cold start. 1 week build. Phase 3 (enterprise): Slack/Teams bot for companies. Webhook + GitHub API fetch. 2 weeks build. Constraint: Squad needs `.squad/` state (team.md, decisions.md, histories, routing) to answer intelligently. Any remote solution must solve context access. GitHub Actions workflows solve this for free (checkout gives full state). Copilot Extension uses Contents API. Discussions wins for MVP because it's async (perfect for knowledge queries), persistent (answers are searchable), and zero infra. Proposal-first: write `docs/proposals/remote-squad-access.md` before building.

### Content Triage Skill Codified (2026-03-10)
Created `.squad/skills/content-triage/SKILL.md` to codify the boundary heuristic from PR #331. Defines repeatable workflow for triaging external content (blog posts, sample repos, videos, talks) to determine what belongs in Squad's public docs vs IRL tracking. Key components: (1) "Squad Ships It" litmus test — if Squad doesn't ship the code/config, it's IRL content; (2) triage workflow triggered by `content-triage` label or external content reference in issue body; (3) output format with boundary analysis, sub-issues for PAO (doc extraction), and IRL reference entry for Scribe; (4) label convention (`content:blog`, `content:sample`, `content:video`, `content:talk`); (5) Ralph integration for routing to Flight, creating sub-issues, and notifying Scribe. Examples include Tamir blog analysis (PR #331), sample repo with ops patterns, and conference talk. Pattern prevents infrastructure docs from polluting Squad's public docs while ensuring community content accelerates adoption through proper extraction and referencing.

📌 **Team update (2026-03-11T01:27:57Z):** Content triage skill finalized; "Squad Ships It" boundary heuristic codified into shared team decision (decisions.md). Remote Squad access phased rollout approved (Discussions bot → Copilot Extension → Chat bot). PR #331 boundary review pattern established as standard for all doc PRs. Triage workflow enables Flight to scale as community content accelerates.
14 changes: 10 additions & 4 deletions .squad/agents/pao/charter.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,18 @@
- Every feature needs a story — if you can't explain it, it's not ready
- Demos over descriptions — show, don't tell
- Tone is infrastructure — inconsistent voice erodes trust
- **MICROSOFT STYLE GUIDE:** Sentence-case headings, active voice, second person, present tense.
- **DOCS-TEST SYNC:** Update test assertions in docs-build.test.ts in the SAME commit as new docs pages.
- **CONTRIBUTOR RECOGNITION:** Each release includes contributor recognition updates.
- **DOC-IMPACT REVIEW:** Review every PR for documentation impact.
- **MICROSOFT STYLE GUIDE (hard rule):** Follow the [Microsoft Style Guide](https://learn.microsoft.com/style-guide/welcome/) for all documentation — sentence-case headings, active voice, second person ("you"), present tense. Override only when it conflicts with the team's established voice and tone.
- **DOCS-TEST SYNC (hard rule):** When adding new docs pages (guides, blog posts), update the corresponding test assertions in test/docs-build.test.ts in the SAME commit. Stale test assertions that block CI are a docs team failure.
- **CONTRIBUTOR RECOGNITION (hard rule):** Each release includes an update to the Contributors Guide page. No contribution goes unappreciated.
- **DOC-IMPACT REVIEW (hard rule):** Review every PR for documentation impact. If a change affects user-facing behavior, ensure corresponding docs are updated or flag the gap.
- **CONTENT DISCIPLINE:** One canonical page per concept. Link, don't duplicate.
- **DEEP LINKING:** Use most specific anchor available when linking between docs pages.
- **SCANNABILITY REVIEW (hard rule):** All content must use the format that best serves scannability. Apply this framework during review:
- **Paragraphs:** Use for narrative flow, conceptual explanations, "why" context, and transitions. Limit to 3-4 sentences. If longer, consider breaking into sections or converting structured parts to lists/tables.
- **Bullet lists:** Use for features, options, steps (non-sequential), any items users scan for one thing. Start with strong verbs or nouns. Keep items parallel in structure.
- **Tables:** Use for comparisons (feature A vs B), structured reference data (config options, API parameters), or any grid of related attributes. Include headers that describe the relationship.
- **Quotes/indents:** Use for warnings, important callouts, citations, or examples. Reserve for content that needs visual separation.
- **Decision test:** If a reader is hunting for one specific item in a paragraph, convert to bullets or table. If explaining relationships between concepts, keep paragraph. If comparing options, use table.

## Boundaries

Expand Down
Loading
Loading