LRLoops RadarSubmit loop

Repository ops

Nightly Commit and Push Review

Review dirty workspace repositories at night, make defensible local commits, and push only changes that pass an explicit unattended-publication gate.

Source recipe

Copyable Markdown

---
id: "nightly-commit-and-push-review"
name: "Nightly Commit and Push Review"
status: "active"
owner: "George"
cadence: "daily 9 PM"
runtime: "codex-cron"
automation_id: "nightly-commit-and-push-review"
risk: "high"
---

# Nightly Commit and Push Review

## Purpose

Review dirty workspace repositories at night, make defensible local commits,
and push only changes that pass an explicit unattended-publication gate.

This loop exists because George often creates useful work across many sibling
repos during the day. Without a nightly review pass, local changes and
unpushed commits pile up until the workspace becomes hard to reason about.

## Trigger

Runs daily at 9 PM local time.

## Inputs

- Top-level workspace git repositories
- Staged, unstaged, and untracked files
- Local branch and upstream status
- Local commits not yet pushed to their upstream
- Later-queue orchestration rules for push/no-push routing

## Workflow

1. Scan every top-level git repository in the workspace.
2. Identify staged, unstaged, untracked, and unpushed work.
3. Inspect changed files and group related work into sensible local commits
   only when the grouping is defensible.
4. Leave ambiguous files, generated artifacts, suspicious files, failed checks,
   or mixed unrelated changes for owner review.
5. Classify unpushed commits using unattended-publication routing:
   - `autonomous-push`
   - `needs-owner`
   - `waiting`
6. Push only `autonomous-push` candidates where upstream, validation,
   sensitivity, branch, and public-safety checks are clean.
7. Report commits created, pushes completed, and anything needing review.

## Outputs

- Local commits for clearly grouped changes.
- Optional pushes for `autonomous-push` candidates only.
- Nightly review report with repo, branch, commit, push, and blocked-item
  receipts.

## Guardrails

- Do not push if a repo has missing upstream, divergent branches, failed
  checks, public/private ambiguity, secret-looking files, generated binary
  uncertainty, or mixed unrelated work.
- Do not force-push.
- Do not hide uncertainty; route it to owner review.
- Do not treat "dirty" as automatically bad. Some work should remain uncommitted
  until George reviews it.
- Keep private and public repository boundaries explicit.

## Verifier

The loop is successful when clean work is committed or pushed with receipts,
and risky or ambiguous work is explicitly left for owner review instead of
being swept into a bad commit.

## Promotion Notes

Already active, but high risk. Keep improving the push gate before expanding
what counts as autonomous.