Files
boshu2__agentops/.gitattributes
T
Boden Fuller 4bb75bbcb7 fix(uqj): rebase.autoStash for dirty tracked runtime logs; document no-union rationale (age-uqj)
Tracked runtime audit logs (.agents/rpi/next-work.jsonl, .agents/findings/registry.jsonl,
docs/provenance/ledger.jsonl) get dirtied by tooling mid-session, so 'git pull --rebase'
repeatedly failed with 'unstaged changes' (and a stash-pop once left conflict markers in
the hash-chained ledger). Fix: install-pre-push-gate.sh (the fresh-clone setup) now sets
repo-local rebase.autoStash=true so rebase transparently stash+reapplies the dirty tree.
.gitattributes documents WHY these JSONL logs are deliberately NOT union-merged — next-work
is rewritten in place (markEntryConsumed/markItemConsumedOwned) and the ledger is a prev_hash
chain, so union would resurrect consumed work or break the chain; a real divergence must
surface as a conflict. Ledger emit/commit churn is tracked separately (age-standing-pawl-service-ml8.4).

Pawl: opus + codex/gpt-5.5 both CONFIRMED (v3) via the standing pawl-service. The pawl caught
two real defects across rounds — union-on-a-mutated-file (codex) and a stale union reference in
the installer comment (opus) — both fixed before CONFIRMED.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 10:29:02 -04:00

27 lines
1.4 KiB
Plaintext

# Use bd merge for beads JSONL files
.beads/issues.jsonl merge=beads
# Keep executable scripts runnable when cloned on Windows.
*.sh text eol=lf
# Generated/derived artifacts — union-merge to kill textual re-conflicts during
# multi-PR drains (their canonical content is restored by scripts/regen-all.sh).
# Council 2026-06-06 (ag-bdg1). NOTE: cli/embedded/** is //go:embed'd and
# skills-codex/** ships in the tarball — they MUST stay committed; union-merge
# only avoids spurious conflict markers, regen produces the authoritative bytes.
registry.json merge=union
**/.agentops-generated.json merge=union
skills-codex/.agentops-manifest.json merge=union
docs/contracts/context-map.md merge=union
cli/docs/COMMANDS.md merge=union
# Tracked runtime JSONL logs (next-work, findings/registry, provenance ledger) are
# DELIBERATELY NOT union-merged (age-uqj). They are not pure append-logs: next-work
# entries are rewritten in place (markEntryConsumed / markItemConsumedOwned flip
# consumed/claim_status) and the ledger is a prev_hash chain — union-merge would
# either resurrect consumed/claimed work or break the chain. A genuine divergence
# on these files must surface as a real conflict, not be silently merged. The
# "git pull --rebase fails on dirty runtime logs" friction is fixed instead by the
# repo-local rebase.autoStash set in scripts/install-pre-push-gate.sh.