Files
yellowjacket/.gitignore
logan e772f51982
CI / check (push) Skipped
CI / e2e (push) Skipped
CI / check (pull_request) Successful in 3m23s
CI / e2e (pull_request) Successful in 10m53s
feat(loop): add the autonomous backlog loop configuration
The scheduled backlog runs already claimed, fixed, verified and opened
PRs one issue at a time (~50 runs), but stopped at "PR open, CI green" —
every merge and every stale branch was human work, and the pipeline
shape existed only as one prompt file. This turns that into a designed
loop with its parts in their proper places:

- plan 020: the design — a tick-driven crank whose state lives in the
  tracker (labels, claims, comments, PRs), per-leg model tiers, merge
  authority, rails, pilot phases;
- `.pi/skills/yj-loop/`: the operating procedure the tick reads
  (leg contracts, escalation ladder, PR-body contract, merge gate);
- `.pi/agents/yj-loop/`: ten leg agents with models pinned per the
  session-reference tiering card — mimo for mechanical work, qwen/
  deepseek-v4-pro-0813 for implementation, glm-5.3 for selection,
  planning and consequences review, glm-5.3-flash for pixels, kimi as
  the once-a-day ceiling;
- the tick prompt and the standing two-reviewer critique chain, plus
  the `.pi/loop/` gitignore entry and the CLAUDE.md pointer.

The switch stays where the v0's was — `.pi/schedule-prompts.json`,
gitignored, live only while the loop's pi session is open. No code
changes. Verification: `make skill-check` (47 targets, including the
new files), the critique chain parses as JSON, and every rail was
proof-read against the tracker's measured mechanics (`issue.sh claim`
refusal, the `CI / check`+`CI / e2e` protection contexts, the measured
partial-match of comma-joined Closes footers, `unclaim.yml`).

Closes #236
2026-09-02 23:32:04 -04:00

98 lines
2.6 KiB
Plaintext

frontend/dist
node_modules
build/bin/
test_data
test.db
# ── Agent development harness (plan 005) ──
# playwright-cli scratch output (snapshots, console logs, screenshots)
.playwright-cli/
# headless app process state: pid file + captured stdout
.dev/
# Playwright spec output: traces, screenshots and videos of failures
e2e/test-results/
e2e/playwright-report/
# Vitest browser-mode scratch (screenshot diffs, failure captures).
# The committed baselines under frontend/test/**/__screenshots__ stay.
frontend/.vitest-attachments/
.aider*
lefthook-local.yml
# Profiling artifacts
trace-*.out
*.pprof
# ── Legacy GSD planning snapshot (replaced by .planning/) ──
# Kept on disk for reference only; safe to delete once nothing relies on it.
.gsd
gsd-session-*.html
.DS_Store
Thumbs.db
*.swp
*.swo
*~
.idea/
.vscode/
*.code-workspace
.env
.env.*
!.env.example
node_modules/
.next/
dist/
# build/ holds v3 build assets and is tracked; only its output is not.
__pycache__/
*.pyc
.venv/
venv/
target/
vendor/
*.log
coverage/
.cache/
tmp/
bin/
# Task's checksum cache, written by every `wails3 task` run.
.task/
# Generated by build/linux/Taskfile.yml's generate:dotdesktop from
# build/config.yml on every build, and consumed by the deb/rpm/AppImage
# packaging tasks that depend on it. A derived file with one source.
build/linux/yellowjacket.desktop
# iOS is not carried. `wails3 update build-assets` regenerates the tree
# whether or not anything asks for it, so it is ignored rather than
# deleted-and-rediscovered on every asset refresh, and its includes:
# entry is dropped from Taskfile.yml.
#
# build/android/ *is* carried — see plan 015. Note that `update
# build-assets` does NOT regenerate it (only `generate build-assets`
# does, and that rewrites the whole of build/), so the tree is committed
# and edited by hand like any other source. Only its output is ignored,
# below.
build/ios/
# Android build output. jniLibs holds the ~30 MB per-ABI c-shared
# libraries the Go build produces; gen/ and overlay.json are written by
# `wails3 android overlay:gen`; the rest is Gradle's.
build/android/app/src/main/jniLibs/
build/android/app/build/
build/android/build/
build/android/.gradle/
build/android/gen/
build/android/overlay.json
# Written by @semantic-release/changelog purely to carry the release notes
# into scripts/gitea-release.sh; the release page is the changelog.
.release-notes.md
# Agent session log and loop state: local scratch, not repo memory
# (that is CLAUDE.md and .planning/). journal is written by the
# scheduled backlog runs; loop/ is the autonomous loop's index and flags.
.pi/journal.md
.pi/schedule-prompts.json
.pi/loop/