autonomic-bot b5f8543a9b advisory-scan: count sidecar CVEs via per-image windows
A recipe upgrades several images, each through its own version range. The scan
previously classified only the app repo, so sidecar bumps contributed nothing — the
alternative to the earlier bug where sidecars were judged by the APP's window and
produced a false 133.

Now: --window KEY=FROM:TO (repeatable) gives any other source its own range; each
window is classified independently (one may use patched-version ranges while another
falls back to advisory dates) and the count is the UNION. An image with no window is
still not counted — the scan will not guess a range it was not given. If ANY requested
window cannot be ordered, the total is UNKNOWN rather than a partial number.

/recipe-upgrade now instructs passing a --window per bumped sidecar.

Verified on discourse app 3.5.3->2026.7.1 + redis 7.4->8.10: 128 = 123 (app, by
publish date) + 5 (redis, by version range). The redis five are genuine for that bump
(patched 7.4.1 / 7.4.6 / 8.2.3) and include CVE-2025-49844, CRITICAL — previously
invisible. Regressions clean: gitea still 2, discourse without the sidecar window
still 123.
2026-08-10 22:01:28 +00:00

cc-ci-orchestrator

Orchestrator workspace for building the cc-ci Co-op Cloud recipe CI server. The plan, launch tooling, and loop prompts live in cc-ci-plan/; see AGENTS.md for the roles and operating model. Secrets (.testenv) are gitignored — never commit them.

Run the orchestrator in tmux (survives disconnects + closing your laptop)

Keep this supervising session alive on the host with tmux, and use --remote-control so you can watch/steer it from claude.ai/code (or the mobile app).

# 0. Exit any running orchestrator session first — a conversation can't be resumed while it's live:
#      /exit        (inside Claude)   or Ctrl-D

# 1. Start a detachable tmux session on this host
tmux new -s orchestrator

# 2. Inside tmux, resume the orchestrator conversation WITH remote control:
claude --resume autonomous-orchestrator \
  --remote-control "autonomous-orchestrator" \
  --dangerously-skip-permissions
#    - If name-resume opens a picker instead of resuming directly, choose "autonomous-orchestrator".
#    - Or resume by the stable session id (more deterministic in a fresh pane):
#        claude --resume 34a80a99-b37e-4809-b8da-ccc9fafe785e \
#          --remote-control "autonomous-orchestrator" --dangerously-skip-permissions

# 3. Detach — the process keeps running:  press Ctrl-b, then d

Reconnect later

  • On this host: tmux attach -t orchestrator
  • From anywhere: claude.ai/code → the autonomous-orchestrator session

Why it survives: tmux keeps the claude process alive across SSH disconnects and your laptop closing; remote-control runs outbound from this host to Anthropic, so it stays connected regardless of the viewer. After a host reboot, re-run steps 12.

Two different "names": --resume <name|id> selects the conversation to restore (shown in the /resume picker); the --remote-control "<name>" value is only the web display label and resumes nothing. Resuming reuses the same session id each time (stays 34a8…) — don't pass --fork-session unless you intend to branch a new conversation.

Already inside a live session and just want the web surface? Run /remote-control — no exit/resume.

Kick off / supervise the loops

cd /srv/cc-ci/cc-ci-plan
./launch.sh start                       # Builder + Adversary loops (interactive --remote-control in tmux) + watchdog
./launch.sh status                      # session + DONE state
./launch.sh logs builder|adversary|watchdog
./launch.sh stop

Full supervision guide, credential map, and the Incus VM fallback are in cc-ci-plan/kickoff.md and cc-ci-plan/plan.md §1.5.

S
Description
Autonomous orchestrator: planning, launch, and setup for the cc-ci Co-op Cloud recipe CI server
Readme
1.9 MiB
Languages
Python 78.7%
Shell 12.1%
Nix 8.5%
HCL 0.7%