AGENTS.md 215 -> 92 lines. The extracted sections now live in
docs/ENVIRONMENTS.md, docs/RELEASE_QUEUE.md, and docs/ops/CURRENT.md, linked
from the sections that replaced them. "Intent is the artifact" keeps its
operative rules and its four limits but sheds the passage arguing its own case,
which docs/AGENT_ETHOS.md already carries at length.
Kept inline, deliberately: the do-not-delete guardrail (agents repeatedly
misflag those modules as dead code and break the build), the removed-machinery
surface list, and the CI-enforced Co-authored-by rules.
CLAUDE.md 86 -> 9 lines. It restated most of AGENTS.md in slightly different
words, so every edit to one silently drifted the other. It now uses a Claude
Code @-import, which inlines AGENTS.md at load time -- same content, one source.
Chose the import over a symlink so Windows checkouts, where symlinks can
materialize as a text file containing the path, still resolve it.
Generating code against current main is now cheaper and faster than
recovering, rebasing, or reconciling old code. State that as the governing
principle for agents working in this repo, ahead of the branch/merge
guidance it reframes.
The intent behind a change is the durable asset; the diff that expressed it
is disposable. Rewriting any part of the project is always in scope, argued
on merit rather than sunk cost. Git stays bookkeeping, not authority: a
far-behind branch is a note about something we once wanted, and a high
conflict count is a signal to rewrite rather than a task list. Stranded work
becomes an issue stating the intent plus a deleted branch, not a heroic
merge.
Bounded so the stance cannot erode what it should not touch: main stays
protected, published history and shipped tags stay immutable, contributor
credit and the harvest trailers carry onto the new implementation, and the
do-not-delete guardrail still binds. The one check that cannot be lazy is
confirming main does not already implement it -- re-landing landed work is
the failure mode this creates.
Scopes the existing scratch-branch and release-integration sections to live
work, with the heuristic that follows from it: if the conflicts are in the
files the branch most wanted to change, you are reconstructing intent
anyway, so do it in the editor rather than the merge tool.
Rewrite the prohibition-style guidance (do not / don't / never) as
positive directives that lead with the wanted behavior, keeping the
guardrail as the consequence. Negative commands make the unwanted action
the salient thing (ironic-process / pink-elephant effect); positive
framing points effort at what to do instead. No policy changes — same
intent, clearer instruction.
- Reframe branding around CodeWhale's mission: started as a DeepSeek-only
harness, now about building the greatest possible coding harness with an
open-source community; every model/provider first-class, none privileged.
- Drop the release-artifact approval-required clauses (push/tag/publish no
longer gated on explicit sign-off). Keeps version-hygiene, contributor
credit, and PR-review guidance intact.
Hunter works the release lane directly on main, so drop the 'never commit directly to main' rule from AGENTS.md and CLAUDE.md and the merge-to-main approval gate. Publishing/tagging/release-artifact approval is unchanged.
Signed-off-by: CodeWhale Agent <codewhale-agent@hmbown.local>
Audit #5 (scratchpad/bug-audit-2026-06-24.md): AGENTS.md and CLAUDE.md still
named codex/v0.8.63-integration, workspace 0.8.63, and milestone v0.8.63, which
rot between release lanes and mislead release work (README was already current
at 0.8.64).
Replace the hard-coded branch/version/milestone with live-truth guidance (read
version from Cargo.toml, confirm the lane from the active handoff + git, list the
milestone via gh). Harvests the framing from draft PR #3452 by @Hmbown while
KEEPING the guardrails that PR dropped (no-speculative spawn_blocking, sole base
prompt, agent-only sub-agent surface, approval gates, known-flaky papercuts).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
A credit audit of harvested commits (work reimplemented onto a maintainer
branch rather than merged) found contributors whose machine-readable credit
was dropped at harvest time. The CI co-author check only runs over new commits,
so these historical drops were never caught — and the affected commits are
already on main, so history is not rewritten. Restoring credit on the curated
surfaces, and documenting the guardrail that caused the drops.
- docs/CONTRIBUTORS.md: a reconciliation block under "Reconciled credits" for
CrepuscularIRIS, MMMarcinho, MeAiRobot, NorethSea, SamhandsomeLee, YaYII,
sandofree, tiger-dog, Jianfengwu2024, and wplll, plus additional harvested
PRs for axobase001, cyq1017, Oliver-ZPLiu, reidliu41, lucaszhu-hue, h3c-hexin,
Duducoco, zhuangbiaowei, wdw8276, and buko.
- .github/AUTHOR_MAP: canonical GitHub-noreply aliases for the ten contributors
that lacked a map entry, so future references credit them in the graph.
- AGENTS.md / CLAUDE.md: document that harvest commits must never carry bot/tool
Co-authored-by trailers (the check-coauthor-trailers.py gate rejects them) and
must refresh the manual surfaces (CONTRIBUTORS.md, CHANGELOG.md).
Handles and numeric IDs verified against the GitHub user API.
Claude-Session: https://claude.ai/code/session_01991fnUqBbWSgiUFw33L8XX
Update AGENTS.md and CLAUDE.md to point agents at the v0.8.63 integration lane and milestone, and keep release-boundary actions approval-gated.
Verified: rg -n 'hunter/0\.8\.62|v0\.8\.62|0\.8\.61 has shipped|workspace version stays 0\.8\.61|0\.8\.62-glm' AGENTS.md CLAUDE.md; git diff --check -- AGENTS.md CLAUDE.md
The repo lives on multiple devices, so hard-coded local paths leak machine
details and mislead any agent that follows the docs literally. Replace them
with neutral, portable references:
- /Volumes/VIXinSSD/codewhale (and the hermesagent sibling) -> 'the local
CodeWhale checkout' + git rev-parse --show-toplevel, across the three gh-*
skill files, TOOL_LIFECYCLE.md, and REMOTE_SETUP_DESIGN.md.
- /Users/huntermbown/Desktop/whalebro/codewhale (TOOL_LIFECYCLE.md) -> 'the
current CodeWhale checkout'.
- /opt/homebrew/bin/gh -> plain 'gh' across 9 skill files (the path is
macOS-Homebrew-specific; 'gh' resolves via PATH everywhere).
- codex/v0.8.61 -> <release-branch> across 5 skill files (old branch-naming
convention; the placeholder keeps the instruction correct for any release).
- CLAUDE.md: drop the device-specific worktree reference (match the AGENTS.md
fix from earlier this branch) and version-neutralize the scratch-branch
example.
Left intact: /opt/whalebro is the documented Tencent Lighthouse deployment
workspace-root convention (WHALEBRO_ROOT, systemd, bridge configs) — an
intentional product path, not a leak. The /Users/hunter/private/* paths in
session_failure_classifier.rs are synthetic fixtures for the path-redaction
privacy test. docs/V0_8_61_EXECUTION.md and docs/LOCALIZATION.md keep their
historical codex/v0.8.61 and /opt/homebrew references as accurate records.
- AGENTS.md / CLAUDE.md: replace stale v0.8.59 release-train guidance with
the active v0.8.62 branch (hunter/0.8.62-glm-subagents), build/test
commands, known suite papercuts, and the removed-machinery guardrails
(agent-only sub-agent surface, no lifecycle/coherence systems).
Adds a "Where to work right now" header so any landing agent lands on the
correct branch and knows the workspace version is intentionally still 0.8.61.
- docs/CODE_AUDIT_0.8.62.md: records the "what does not spark joy" audit
(dead crates, tracked build output, un-ignored cache dirs, provider/model
duplication across 8+ files, god-objects, stringly-typed dispatch, .mailmap
credit collapse, etc.) as the working backlog for the cleanup pass. All
load-bearing claims re-verified on this branch. Includes a suggested
lowest-risk-first execution order.
Docs only; no code or behavior change.