---
title: 'In the News: September 23, 2026 (Extra 3)'
description: 'Agents paid through small USDC bounties fixed a VisiData docs bug; the maintainer merged it and named human attention after bot work as the gate.'
canonical_url: 'https://darkfactory.dev/news/2026-09-23-extra-3'
markdown_url: 'https://darkfactory.dev/news/2026-09-23-extra-3.md'
collection: news
date_published: '2026-09-23T23:07:00-04:00'
date_modified: '2026-09-23T23:07:00-04:00'
---

# In the News: September 23, 2026 (Extra 3)


A VisiData docs fix, found and written by agents working for small USDC bounties, was merged on September 23 after a public argument over who had tested it. The maintainer's ruling is the part worth keeping. Separately, Claude Code 2.1.281 tightens several checks that matter when nobody is watching a session.

## 1. A bounty-funded agent fix is merged into VisiData, and review shows what its acceptance test missed

**[[docs] fix graph page asciinema player for v3 (saulpw/visidata#3229)](https://github.com/saulpw/visidata/pull/3229)** · GitHub user maxfain, who runs the BasedAgents marketplace · GitHub, September 22 to 23, 2026

According to the pull request, maxfain posted a 2 USDC task asking an agent to find an open issue in a project with a written policy welcoming AI help. An agent picked VisiData issue #3224, a docs page whose asciinema player rendered at 0px, and wrote a spec. A second task, paid 1 USDC, produced the patch; his timeline shows it delivered three minutes after an agent claimed it. He says he reviewed and tested the diff himself before opening the PR, and the PR discloses the agent provenance.

Reviewer midichef then pointed to five more broken players on three other pages, and wrote that an easy fix like this "doesn't help with the main bottleneck, which is testing the specific build of the visidata.org site." maxfain agreed. The task had been limited to one file and accepted on "a few greps plus a diff check", which is why the other five were missed. A second agent patch fixed them. His reported check is a headless Chrome render showing 1/3/1/1 players mounting on the four pages, against 1/0/0/0 on the unpatched tree. He adds that this is not the real site build.

Maintainer saulpw first asked who the "I" in "How I tested" was, since the text read as AI-generated. He then merged, writing that "the load-bearing gate is human attention after bot work", and advised keeping bot and personal accounts separate; maxfain said he will. After the merge, commenter BroadlyWhitaker argued for reverting the commit and banning the user. On Hacker News the submission had 14 points a little under two hours after it was posted (read about 03:08 UTC, September 24), and much of the discussion was about the AI-written PR text rather than the code.

**Why it matters:** The first patch was accepted by its own test and still missed five of the six broken players, because the test was a grep and the scope was one file. When you hand small tasks to agents, the acceptance check is what you are paying for, and a cheap task does nothing for a maintainer whose real cost is building and testing the site. The maintainer's rule is simple enough to adopt: agent work is welcome once a named human has looked at the result, and the account speaking makes clear which one is talking.

## 2. Claude Code 2.1.281 adds checks for sessions nobody is watching

**[Claude Code changelog: 2.1.281](https://code.claude.com/docs/en/changelog)** · Anthropic · code.claude.com, September 23, 2026

Per the changelog, a recursive `rm` whose target is only command-substitution output, such as `rm -rf "$(pwd)"`, ran "unprompted in auto and `--dangerously-skip-permissions` mode". It now asks, even with a Bash allow rule. In those modes the dangerous `rm` prompt now waits two minutes, then denies the command with a rewrite hint "so unattended sessions keep going". Where the auto mode classifier runs server-side, read-only and sandboxed shell commands now also wait for its review and are blocked when it flags them.

Other fixes close gaps in how restrictions carry over. `--setting-sources` was not forwarded to spawned sessions; teammates, `/bg`, `claude agents` sessions and `--worktree --tmux` "now start with the parent's restriction." `claude --bg` now asks for workspace trust before running project hooks. A permission rule containing a NUL byte had been expanded into a wildcard match and now matches nothing. A turn that could retry indefinitely while ignoring `--max-turns` is fixed. One change can break setups: self-hosted runners now pass system prompts as files, so a wrapper or hook that appends `--system-prompt` must switch to `--system-prompt-file`. The entry does not mention the AGENTS.md loading fix that a Hacker News commenter had said was due the same day.

**Why it matters:** Several of these fixes close ways a run with no one at the keyboard could do more than its settings allowed: remove its own working directory, start a spawned session without the parent's restrictions, or read a malformed rule as allow-all. If you run auto mode or skip permissions, upgrade, and check any runner wrapper that appends `--system-prompt` before it picks up the change.
