fix(ci): remove all cron schedules — push to main#696
Merged
bradygaster merged 70 commits intomainfrom Mar 29, 2026
Merged
Conversation
) Adds rate limit protection to Ralph's watch command as an additive patch on top of the existing watch flow. No existing functions are modified. Changes: - gh-cli.ts: +ghRateLimitCheck(), +isRateLimitError() helpers - watch.ts: +CircuitBreakerState type, persistence helpers - watch.ts: +executeRound() wrapper gates existing runCheck through pre-flight quota checks (traffic light + predictive CB) - watch.ts: +roundInProgress flag prevents overlapping setInterval rounds - 16 new tests: state machine transitions, race guard, isRateLimitError State machine: closed → open (quota critical) → half-open (cooldown expires) → closed (2 consecutive successes) or re-open (429 during probe). Cooldown doubles on each failure (2m → 4m → ... → 30m cap). State persists to .squad/ralph-circuit-breaker.json. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…uad-per-pod) Adds SQUAD_POD_ID and SQUAD_DEPLOYMENT_MODE env vars for pod-specific capability routing. Pod-specific manifests override shared manifests. Closes #514 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Linux chmod 444 returns EACCES, not EPERM. Handle both codes for cross-platform compatibility. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Inject __VERSION__, __COMMIT_SHA__, __BUILD_DATE__ via Vite define in astro.config.mjs
- Display v{version} · {sha7} · {date} in Footer.astro (xs muted text)
- Pass SQUAD_VERSION and GITHUB_SHA env vars in squad-docs.yml build step
- Add env.d.ts to declare globals for TypeScript
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Before: bradygaster.github.io/squad/docs/get-started/installation/ footer After: Astro preview server with full CSS rendering Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Screenshots belong in PR comments, not committed to the branch. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Flight review: '0.9.1' hardcode would drift after next release. Empty string lets the Vite define fall through to package.json. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Fixes docs-quality CI failure on PR #568 which adds KEDA scaling docs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Adds complete Chinese translation of README.md based on the excellent work by @JasonYeYuhe in PR #507. This update brings the Chinese README current with all recent additions to the English README. Updates include: - New 'Upgrading' section (two-step upgrade process) - 'What the Shell Does' subsection (real-time visibility, routing, etc.) - 'Samples' section (eight working examples) - 'SDK-First Mode' section (experimental TypeScript config) - 'Monorepo Development' section (building, testing, linting, publishing) - 'SDK documentation' section with reference links - Updated 'upgrade' command description with --global flag - Language switcher added to both READMEs Translation preserves JasonYeYuhe's terminology choices for technical concepts like '智能体' (agent), '协调员' (Coordinator), '花名册' (Roster), '选角' (Casting), and '书记员' (Scribe). Supersedes #507 Co-authored-by: JasonYeYuhe <69640321+JasonYeYuhe@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Merging: CI green, docs version badge.
…capabilities feat(capabilities): dual-mode deployment — agent-per-node + squad-per-pod (#514)
…-watch-v2 feat(watch): circuit breaker integration — additive patch (#515)
- New: capability-routing.md — needs:* label routing and machine capability declaration - New: rate-limiting.md — cooperative rate limiting and RAAS traffic-light pattern - New: cross-machine.md — cross-machine coordination for multi-machine Squad deployments - New: keda-scaling.md — KEDA external scaler template for agent autoscaling - Updated: model-selection.md — add Economy Mode section - Updated: navigation.ts — add four new feature pages to nav - Updated: test/docs-build.test.ts — add new pages to EXPECTED_FEATURES Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Flight review blocker — config file was .squad/config.json, should be machine-capabilities.json per PR #520's loadCapabilities() implementation. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Adds a new skill for coordinating work between squad agents running on different machines (laptop, DevBox, Azure VMs, etc.). **Pattern:** Git-based task queuing + GitHub Issues supplement The skill defines: - YAML task file format for cross-machine work assignment - YAML result file format for execution outcomes - Security validation pipeline (schema, command whitelist, resource limits) - Ralph Watch integration (automatic poll-and-execute cycle) - Urgent task routing via GitHub Issues + machine-specific labels - Error handling for failures, stalls, and network issues This pattern enables multi-machine squad deployments to divide work by capability (e.g., GPU workloads on a powerful remote machine) without human intervention in the handoff. Closes: N/A (new skill contribution from tamirdresher/squad fork)
docs: v0.9.0 missing feature docs (capability routing, rate limiting, economy mode, cross-machine, KEDA)
docs: update Chinese README translation
…tion feat(skills): add cross-machine-coordination skill for multi-machine squad deployments
Links to https://github.com/tamirdresher/squad-skills/tree/main/workshop from getting started and resources pages. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…kill During StorageProvider Phase 1, a cross-platform audit found that startsWith() is case-sensitive but Windows and macOS filesystems are case-insensitive. This gap was missed by 4 rounds of security review because the existing skill covered timestamps, git commands, and path separators — but not path comparison semantics. Adding platform-aware comparison pattern and anti-pattern example so future agents catch this automatically via skill-aware routing. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
docs: add link to Tamir's Squad Skills Workshop
…kill (#574) docs: add case-insensitive path comparison to windows-compatibility skill
…577) * chore(.squad): session wrap-up — inbox merge, logs, history updates Merged 12 decision inbox entries into decisions.md. Logged mega-session covering release recovery, docs fix, 10 PR merges, discussion triage, and release hardening. Updated agent histories with session learnings. Deleted inbox files after merge: - booster-ci-audit.md, booster-ci-cleanup.md - copilot-directive-2026-03-23T09-56.md, copilot-directive-2026-03-23T10-08.md - copilot-directive-no-npx.md - eecom-version-cmd.md - pao-discussion-triage-2026-03-23.md, pao-npx-purge.md, pao-readme-slim.md - pao-v090-blog.md - surgeon-v090-changelog.md, surgeon-v091-retrospective.md Updated files: - .squad/decisions.md (12 decision entries merged) - .squad/identity/now.md (current state updated) - .squad/log/2026-03-23T22-00-00Z-mega-session-wrapup.md (new) - .squad/agents/flight/history.md (issue filing patterns, governance directives) - .squad/agents/eecom/history.md (CLI version subcommand pattern) - .squad/agents/booster/history.md (CI audit and preflight patterns) - .squad/agents/surgeon/history.md (release governance rules, retrospective) - .squad/agents/pao/history.md (discussion triage patterns, Teams MCP urgency) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(shell): robust agent name extraction with multi-pattern fallback (#577) - Fix TS compilation errors in agent-name-parser.ts (strict null checks) - Add fallback in else branch: show trimmed description text instead of generic 'Dispatching to agent...' hint when name extraction fails - Parser tries 3 patterns: emoji+name:colon, name:colon anywhere, fuzzy word-boundary match against known agent names Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs(.squad): VOX history + decision for #577 agent name fix Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: sync squad.agent.md template copies after #577 name param fix Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Orchestration Log: Issue #577 agent name extraction completion Agent orchestration complete for #577: - VOX: Fixed agent name extraction in shell/index.ts with 3-tier cascading patterns - FIDO: Extracted parser to agent-name-parser.ts (30 tests, all passing) - Procedures: Updated all spawn templates with mandatory name parameter Actions: - Created 3 orchestration logs (.squad/orchestration-log/) - Created session log (.squad/log/2026-03-23T23-15-issue-577-agent-names.md) - Merged 3 decision inbox files to .squad/decisions.md (3 new decision entries) - Deleted inbox files after merge - Appended team updates to VOX, FIDO, Procedures history.md files All decisions merged. Agent IDs now display correctly in Copilot CLI tasks panel. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix(cli): scaffold casting dir + silence no-remote errors on init (#579) - Add stdio: ['pipe','pipe','pipe'] to all execFileSync('git remote get-url origin') calls in SDK init so stderr doesn't leak when no remote is configured - Scaffold .squad/casting/policy.json, registry.json, history.json from SDK templates during init (falls back to inline defaults) - Respect skipExisting: pre-existing casting files are never overwritten - Add tests for casting file scaffolding and content validation Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * test: add init scaffolding completeness tests (#579) Verify that init produces a complete .squad/ directory, particularly: - casting/ subtree (registry.json, policy.json, history.json) - no-remote resilience (git repo without origin configured) - doctor validation passes after a fresh init 15 tests covering initSquad() SDK, runInit() CLI, and doctor checks. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs: update FIDO history with #579 scaffolding test learnings Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* test: personal squad init discovery tests (#576) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(cli): personal squad init via npx discovers ~/.config/squad (#576) When running `init --global` (e.g. via npx), the personal-squad/ directory was never created, so subsequent `init` in a repo could not discover the user's personal agents. Changes: - SDK: add ensurePersonalSquadDir() — idempotent helper that creates personal-squad/agents/ and config.json if missing. - CLI init --global: suppress workflows (no CI needed in global dir) and call ensurePersonalSquadDir() after scaffolding. - CLI repo-level init: detect existing personal squad and inform user. - personal.ts: reuse ensurePersonalSquadDir() instead of inline logic. - Tests: 3 new tests for ensurePersonalSquadDir(). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: sync templates and update agent history (#576) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…564, #557) * docs: rewrite PUBLISH-README.md as release playbook (#564) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * ci: add publish-policy lint job (#557) Adds a lightweight publish-policy CI job to squad-ci.yml that scans all workflow YAML files for bare npm publish commands missing -w/--workspace. Prevents accidental root package publishing (v0.9.1 incident class). Also adds test/publish-policy.test.ts (36 tests) validating the lint logic against known good/bad patterns and all live workflow files. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: update release-process skill to reference PUBLISH-README.md playbook Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(.squad): merge release hardening decisions + session log - Merge 3 decision inbox files into decisions.md (flight-release-hardening-plan, fido-publish-policy, eecom-personal-init-fix) - Delete inbox files post-merge (no duplicates) - Write session log: 2026-03-24T06-release-hardening.md - Append team updates to PAO and FIDO history.md noting playbook + CI lint contributions - Release hardening work (issues #564, #557) complete; #562 deferred to Brady (admin API access required) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chore(.squad): session wrap-up — inbox merge, logs, history updates Merged 12 decision inbox entries into decisions.md. Logged mega-session covering release recovery, docs fix, 10 PR merges, discussion triage, and release hardening. Updated agent histories with session learnings. Deleted inbox files after merge: - booster-ci-audit.md, booster-ci-cleanup.md - copilot-directive-2026-03-23T09-56.md, copilot-directive-2026-03-23T10-08.md - copilot-directive-no-npx.md - eecom-version-cmd.md - pao-discussion-triage-2026-03-23.md, pao-npx-purge.md, pao-readme-slim.md - pao-v090-blog.md - surgeon-v090-changelog.md, surgeon-v091-retrospective.md Updated files: - .squad/decisions.md (12 decision entries merged) - .squad/identity/now.md (current state updated) - .squad/log/2026-03-23T22-00-00Z-mega-session-wrapup.md (new) - .squad/agents/flight/history.md (issue filing patterns, governance directives) - .squad/agents/eecom/history.md (CLI version subcommand pattern) - .squad/agents/booster/history.md (CI audit and preflight patterns) - .squad/agents/surgeon/history.md (release governance rules, retrospective) - .squad/agents/pao/history.md (discussion triage patterns, Teams MCP urgency) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(doctor): actionable warning messages + squad.agent.md check (#565, #533) - Add resolution hints to all warning messages so users know what to do - checkAbsoluteTeamRoot: suggest editing .squad/config.json - vscode-jsonrpc/copilot-sdk not-found: note expected for global installs - Add checkSquadAgentMd() to verify .github/agents/squad.agent.md exists Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * test(doctor): add tests for actionable warnings + squad.agent.md check (#565, #533) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
#620) * chore(.squad): session wrap-up — inbox merge, logs, history updates Merged 12 decision inbox entries into decisions.md. Logged mega-session covering release recovery, docs fix, 10 PR merges, discussion triage, and release hardening. Updated agent histories with session learnings. Deleted inbox files after merge: - booster-ci-audit.md, booster-ci-cleanup.md - copilot-directive-2026-03-23T09-56.md, copilot-directive-2026-03-23T10-08.md - copilot-directive-no-npx.md - eecom-version-cmd.md - pao-discussion-triage-2026-03-23.md, pao-npx-purge.md, pao-readme-slim.md - pao-v090-blog.md - surgeon-v090-changelog.md, surgeon-v091-retrospective.md Updated files: - .squad/decisions.md (12 decision entries merged) - .squad/identity/now.md (current state updated) - .squad/log/2026-03-23T22-00-00Z-mega-session-wrapup.md (new) - .squad/agents/flight/history.md (issue filing patterns, governance directives) - .squad/agents/eecom/history.md (CLI version subcommand pattern) - .squad/agents/booster/history.md (CI audit and preflight patterns) - .squad/agents/surgeon/history.md (release governance rules, retrospective) - .squad/agents/pao/history.md (discussion triage patterns, Teams MCP urgency) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs: add v0.9.0 and v0.9.1 releases to What's New - v0.9.1 (Current Release): Bug fixes and hardening - Shell agent name extraction with multi-pattern fallback - Init scaffolding for typed casting files - Personal squad global mode support - Release CI/docs hardening - Doctor command improvements - v0.9.0 (Major Feature): 6 major features + stability fixes - Personal Squad Governance Layer (isolated developer workspaces) - Worktree Spawning & Distributed Work (parallel agent orchestration) - Machine Capability Discovery (auto-detect tools/models/hardware) - Cooperative Rate Limiting (predictive circuit breaker + economy mode) - Telemetry & Infrastructure (auto-wire, KEDA, session recovery) - Docs, Stability & Distribution (Astro enhancements, npm-only) - v0.8.2: Renamed from 'Current Release' to historic entry Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(squad): triage session — 14 issues triaged, 10 PRs reviewed - Flight triaged 14 untriaged GitHub issues, created prioritized work plan - FIDO reviewed 10 open PRs, identified 3 duplicate/overlap pairs - Merged 2 decisions from inbox to decisions.md - Updated Flight and FIDO agent history with team updates - Orchestration logs: 2026-03-25T15-23-flight.md, 2026-03-25T15-23-fido.md - Session log: 2026-03-25T15-23-triage-session.md Work session priority established: - #610 → PAO (broken link, 5 min fix, unblocks #611) - #590 → EECOM (getPersonalSquadRoot bug, P0) - #592, #611 → Flight review - #588 → Procedures (model list update) PR deduplication: 10 PRs consolidate to 7 - Merge: #607, #603, #606 - Close as duplicates: #605, #604, #602 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(prompts): update model catalog to current platform offerings (#588) Update all model references in squad.agent.md to match the current Copilot platform catalog: - Remove stale models: claude-opus-4.6-fast, gpt-5 (standalone) - Add new models: claude-sonnet-4.6, claude-opus-4.6-1m, gpt-5.4, gpt-5.3-codex, gpt-5.4-mini - Bump code-writing defaults from claude-sonnet-4.5 to claude-sonnet-4.6 - Bump code specialist from gpt-5.2-codex to gpt-5.3-codex - Update fallback chains with new models in sensible positions - Propagate via sync-templates to all 4 derived copies Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs: update procedures history and decision for model catalog refresh Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(sdk): getPersonalSquadRoot resolves to personal-squad dir (#590) getPersonalSquadRoot() was hardcoded to append '.squad' to the global squad directory, causing it to resolve to a nonexistent path. All users running squad consult entered Init Mode and lost their personal agents. Changed the subdirectory from '.squad' to 'personal-squad' to match the actual layout used by resolvePersonalSquadDir() and ensurePersonalSquadDir(). Added two tests verifying the correct resolution path. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(cli): fix remaining personal-squad path in shell init (#590) The shell's runShell() first-run check was looking for '.squad' inside the global squad directory instead of 'personal-squad', mirroring the bug EECOM already fixed in consult.ts. Also updated the matching test assertions in cli-global.test.ts. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chore(.squad): session wrap-up — inbox merge, logs, history updates Merged 12 decision inbox entries into decisions.md. Logged mega-session covering release recovery, docs fix, 10 PR merges, discussion triage, and release hardening. Updated agent histories with session learnings. Deleted inbox files after merge: - booster-ci-audit.md, booster-ci-cleanup.md - copilot-directive-2026-03-23T09-56.md, copilot-directive-2026-03-23T10-08.md - copilot-directive-no-npx.md - eecom-version-cmd.md - pao-discussion-triage-2026-03-23.md, pao-npx-purge.md, pao-readme-slim.md - pao-v090-blog.md - surgeon-v090-changelog.md, surgeon-v091-retrospective.md Updated files: - .squad/decisions.md (12 decision entries merged) - .squad/identity/now.md (current state updated) - .squad/log/2026-03-23T22-00-00Z-mega-session-wrapup.md (new) - .squad/agents/flight/history.md (issue filing patterns, governance directives) - .squad/agents/eecom/history.md (CLI version subcommand pattern) - .squad/agents/booster/history.md (CI audit and preflight patterns) - .squad/agents/surgeon/history.md (release governance rules, retrospective) - .squad/agents/pao/history.md (discussion triage patterns, Teams MCP urgency) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs: add v0.9.0 and v0.9.1 releases to What's New - v0.9.1 (Current Release): Bug fixes and hardening - Shell agent name extraction with multi-pattern fallback - Init scaffolding for typed casting files - Personal squad global mode support - Release CI/docs hardening - Doctor command improvements - v0.9.0 (Major Feature): 6 major features + stability fixes - Personal Squad Governance Layer (isolated developer workspaces) - Worktree Spawning & Distributed Work (parallel agent orchestration) - Machine Capability Discovery (auto-detect tools/models/hardware) - Cooperative Rate Limiting (predictive circuit breaker + economy mode) - Telemetry & Infrastructure (auto-wire, KEDA, session recovery) - Docs, Stability & Distribution (Astro enhancements, npm-only) - v0.8.2: Renamed from 'Current Release' to historic entry Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(squad): triage session — 14 issues triaged, 10 PRs reviewed - Flight triaged 14 untriaged GitHub issues, created prioritized work plan - FIDO reviewed 10 open PRs, identified 3 duplicate/overlap pairs - Merged 2 decisions from inbox to decisions.md - Updated Flight and FIDO agent history with team updates - Orchestration logs: 2026-03-25T15-23-flight.md, 2026-03-25T15-23-fido.md - Session log: 2026-03-25T15-23-triage-session.md Work session priority established: - #610 → PAO (broken link, 5 min fix, unblocks #611) - #590 → EECOM (getPersonalSquadRoot bug, P0) - #592, #611 → Flight review - #588 → Procedures (model list update) PR deduplication: 10 PRs consolidate to 7 - Merge: #607, #603, #606 - Close as duplicates: #605, #604, #602 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(squad): log work session — triage, fixes, research Round 1 outcomes: - PAO: #610 docs link already resolved - EECOM: #590 personal squad path fix (getPersonalSquadRoot) - Procedures: #588 model catalog updated to current platform - Flight: #612 community issue filed on routing regression - CAPCOM: CLI platform research — identified 8 releases (1.0.4→1.0.11) with 3 high-impact changes - GNC: Squad codebase research — routing regression caused by v0.9.0 prompt saturation + missing name param Round 2: Code review & quality gate - FIDO: Found same bug in shell/index.ts, enforced revision - CONTROL: Full sweep of #590 fix, awaiting FIDO re-review Merged decisions: 1. Personal squad path canonicalization (personal-squad/) 2. Model catalog refresh (claude-sonnet-4.6, gpt-5.3-codex defaults) 3. CLI platform analysis (monorepo discovery, idle hiding, hook injection) 4. Squad regression analysis (prompt saturation, workstream replacement, missing name param) Logs created: - 6 orchestration logs (one per agent) - 1 session synthesis log with research synthesis - 4 agent history updates (team update annotations) All inbox decision files merged and deleted. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Merge: VS Code routing enforcement fix proposal (#613) - Merged procedures-vscode-routing-fix.md from inbox to decisions.md - Cleared decision inbox after merge - Logged session finalization work Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: add count-based fallback to archiveDecisions() (#626) archiveDecisions() silently returned null when all entries were <30 days old, allowing decisions.md to grow unboundedly. Active projects hit 145KB+ (35K tokens burned per agent spawn). Added count-based fallback: when all entries are recent but total size exceeds 20KB, archive the oldest recent entries to stay under threshold. Undated entries are preserved (not archived) per Procedures' guidance. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs: update EECOM history with #626 learnings Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Crash recovery: merged 10 PRs, closed 3 duplicates - Repo hygiene: removed test artifacts, consolidated .gitignore, cleaned garbage files, pruned 21 local + 31 remote branches - Issue triage: 12+ issues routed and closed - PR management: merged #628 (model config), reviewed #629, routed Tamir PRs to dev branch pending proposals Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…sion.md Closes #610 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…irst-session.md" This reverts commit 1ab2f5c.
…irst-session.md" This reverts commit 1ab2f5c.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…fety rules Incident #631 complete closure: - Surgeon reverted problematic commit 1ab2f5c on dev (restored 361 files) - Booster added CI deletion guards & canary checks to squad-ci.yml - RETRO documented Git Safety mandatory rules in copilot-instructions.md - PRs created and ready for merge (squad/631-ci-deletion-guard, squad/631-copilot-git-safety) - Issue #631 closed with incident summary Team memory updated: - Orchestration log: 2026-03-26T17-28-631-closure.md - Session log: 2026-03-26T17-28-631-closure.md Incident response: Full parallel execution by Surgeon, Booster, RETRO agents. Resolution: EMU auth restrictions resolved, manual coordination by Coordinator. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
CI: Add source tree canary and large deletion guard
Add git safety rules to copilot-instructions.md
…e workflow (#637) Reorder Scribe spawn template: PRE-CHECK → ARCHIVE [HARD GATE] → INBOX merge. Archive runs BEFORE merge to prevent decisions.md from growing unbounded. Two-tier archival thresholds: - Tier 1 (30-day): If >20KB, archive entries older than 30 days - Tier 2 (7-day): If still >50KB after Tier 1, archive entries older than 7 days - HEALTH REPORT emitted to session log after archival Updated all 7 Scribe charter files with both tiers + HEALTH REPORT destination. Added 6 tests validating Scribe spawn template structure. Closes #33 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…#649) Explicitly requires all merged decision entries to use the format '### YYYY-MM-DD: Topic'. Specifies handling for missing dates and undatable entries to prevent archival bugs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Concise, scannable guide to the circuit breaker resilience pattern for agents. Covers state machine transitions, exponential backoff, persistent state, configuration options, and practical examples for custom agents. Placement: docs/src/content/docs/guide/building-resilient-agents.md Navigation updated with new guide entry after building-extensions. Test assertions updated (EXPECTED_GUIDES). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…very patterns (#623) Merging error-recovery skill. Changeset package names fixed.
…stake prevention (#621) Merging reflect skill. Changeset package names fixed.
…e selective hydration (#629) Merging ralph-two-pass-scan skill. Frontmatter/sections can be improved in a follow-up.
…rkdown (#630) Merging retro-enforcement skill + ceremonies template update. File paths can be realigned in a follow-up.
Merging tiered-memory skill. File paths, changeset, and frontmatter all fixed.
The root package.json has "type": "module" but the 9 node:test files used require() (CommonJS). Node.js treats .js files as ESM in module-type packages, causing all tests to fail with: ReferenceError: require is not defined in ES module scope This broke Squad Release, Squad Preview, and Squad Insider Release workflows on every push to main since the ESM migration. Fix: rename *.test.js -> *.test.cjs (explicit CommonJS) and update all workflow globs from test/*.test.js to test/*.test.cjs. Zero logic changes — only file extensions and glob patterns. Vitest is unaffected (its config only includes test/**/*.test.ts). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Brady Gaster <41929050+bradygaster@users.noreply.github.com>
* feat: add PR requirements spec and PR template (#106 Phase 2) Adds .github/PR_REQUIREMENTS.md (versioned spec with 6 categories, CRUD-on-CLI/SDK user-facing definition, waiver process, exemptions) and .github/PULL_REQUEST_TEMPLATE.md (author-facing checklist). Part 1 of 2 for repo health -- #104 will automate enforcement. Closes Phase 2 of #106 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update .github/PR_REQUIREMENTS.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update .github/PR_REQUIREMENTS.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* feat(ci): add CHANGELOG and exports map completeness gates (#104) Part 2 of 2 for repo health. Adds two automated CI enforcement gates to squad-ci.yml: 1. CHANGELOG gate -- requires CHANGELOG.md update when SDK/CLI source changes 2. Exports map check -- verifies package.json exports match barrel files Both feature-flagged (vars.SQUAD_CHANGELOG_CHECK, vars.SQUAD_EXPORTS_CHECK) with skip labels. Includes test coverage for check-exports-map.mjs. Refs #104 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: address Copilot review -- crash masking in test, label check permissions - Fix runScript() to reject on spawn errors instead of masking as exit code 1 - Replace gh pr view label checks with github.event payload labels - Eliminates need for pull-requests: read permission Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update .github/workflows/squad-ci.yml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: exact label matching + test optimization per Copilot review - Replace substring-based label checks (contains+join) with exact match (contains on labels.*.name) for skip-changelog and skip-exports-check labels - Refactor check-exports-map tests to run script once in beforeAll Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update test/check-exports-map.test.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update test/check-exports-map.test.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: sort barrelDirs for deterministic CI output readdirSync() ordering varies across platforms. Sort the list so missing-barrel reports are stable and diffable. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Tamir Dresher <tamir.dresher@gmail.com>
Adds samples-build CI job that validates all sample projects compile and pass tests when SDK source files change. Feature-flagged (SQUAD_SAMPLES_CI) with skip-samples-ci label escape hatch. Closes #103.
Resets prerelease versions to 0.9.1. Fork PR: diberry#116. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… gates Adds 3 CI health gates. Fork PR: diberry#115. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Documents versioning rules. Fork PR: diberry#117. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot code review finding. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Obliterates every schedule/cron trigger from all workflow files and their template copies. No cron jobs will ever run in this repo again. Use `squad watch` for local polling or event-driven triggers only. Closes #694 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promotes the cron removal from dev to main. All schedule/cron triggers have been obliterated from every workflow file and template copy.
Merged via PR #695. Closes #694.