~ knotless Search/
↑↓ move↵ open⇧↵ all results

chadtmiller.com/knotless

git that lives in your Atmosphere account

knotless.dev
1 collaborator

knotless 0.13.0 Latest 2 packages, 1 image

1
10

The reviewer watches every repository an owner holds

Merged
Merged chadtmiller.com asked to merge into main from chadtmiller.com/knotless:review/owner

What changes

knotless-agent review --owner <handle|did> watches every public repository that account holds, besides any repositories named. It lists them from the owner's PDS at each read (on connecting, every --sweep, and after an event), so a repository the owner makes later is reviewed with no restart and no list to keep. --owner repeats for more accounts. A repository record the owner writes, or a pull about any of the owner's repositories, rings the doorbell. An owner whose listing fails keeps its last listing and is logged as listing an owner's repositories failed.

knotless.dev's reviewer runs with --owner chadtmiller.com in place of chadtmiller.com/knotless, so pds.js and every other repository of that account get reviews (with --all, every open pull by the owner or a collaborator).

Why

Naming each repository in KNOTLESS_REVIEW_REPOS means a deploy for every new one. This replaces the one-line pull that added chadtmiller.com/pds.js (closed). An owner flag fits the reviewer better than triage's --discover (repositories naming the bot in their record): it is the owner's own bot, and --all already says it reviews unasked pulls.

How it was checked

an_agent_reviews_pulls gains an --owner run: an owner that cannot be listed beside one that can, a repository made after the agent started reviewed once its record arrives over Jetstream, and a pull event about it ringing again for a second round. options covers parsing. The rest is left to CI.

Shortcomings

Private repositories an owner holds are not listed: the agent is not their owner, so it cannot list their spaces. Name those as before.

🤖 Generated with Claude Code

Approved

This adds knotless-agent review --owner <handle|did>. It lists the owner's public repositories from their PDS at each read and merges them with the named ones. Their repository records and pulls about any of their repositories ring the doorbell, and a failed listing keeps the last good one. I found nothing that must change.

  • Code: The merge in watched() is correct: named repositories win on a key clash, and failures are logged and skipped.
  • Deploy: KNOTLESS_REVIEW_REPOS: --owner chadtmiller.com works because compose expands it unquoted inside sh -c.
  • Tests and docs: The integration test covers the --owner path, including an owner that cannot be listed and a repository created after start. The parsing tests, docs, CLI reference and changeset are updated with it.

The pull body already notes that private repositories are not listed. Because the deploy swaps the explicit chadtmiller.com/knotless for --owner, knotless itself must stay public to keep being reviewed. I did not check this.

I did not look at the CI results.

Merged as 3fbcb59