Skip to content

Commit c176d08

Browse files
Minipadaclaude
andcommitted
chore: remove progress.txt session log, rely on git history
progress.txt was a hand-maintained narrative log appended on every run_once.sh invocation, which also injected the entire file (9,148 lines, ~175K tokens) into every autonomous agent's prompt context and instructed it to append more. That's an unbounded, ever-growing context tax on every run, and an append-anywhere shared text file is inherently conflict-prone across the tool's parallel per-issue worktrees. Commit messages and PR descriptions already carry the durable record of what changed and why; the git log for this repo is the history. Strips the file itself along with every reference: the run_once.sh prompt injection/update instruction, the CLAUDE.md convention section, ci.yaml's paths-ignore entries, REUSE.toml's license exemption, and stale in-code pointers to specific progress.txt entries in dc_bringup, dc_demos, dc_simulation, and tools/e2e. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6cGXmDzcNi3P79JA3S7pM Signed-off-by: David Bensoussan <d.bensoussan@proton.me>
1 parent 42e5ce9 commit c176d08

9 files changed

Lines changed: 14 additions & 9170 deletions

File tree

.github/workflows/ci.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,13 @@ on:
4949
paths-ignore:
5050
- doc/**
5151
- docs/**
52-
- progress.txt
5352
- "**.md"
5453
push:
5554
branches:
5655
- jazzy
5756
paths-ignore:
5857
- doc/**
5958
- docs/**
60-
- progress.txt
6159
- "**.md"
6260

6361
concurrency:

CLAUDE.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ those are dropped):
130130

131131
Keep them short. A file header is one to three lines; a block comment is one or two.
132132
Say *why*, and only when the code can't. No history lessons, no restating the diff, no
133-
paragraphs of rationale — that belongs in `progress.txt`, an ADR, or the PR description.
133+
paragraphs of rationale — that belongs in an ADR or the PR description.
134134
Some older files (`ci.yaml`, `doc.yaml`, `tools/e2e/Containerfile`) have long headers
135135
from before this rule; don't copy them, and trim them when you touch them.
136136

@@ -139,10 +139,8 @@ from before this rule; don't copy them, and trim them when you touch them.
139139
- Issues ready for autonomous agent work carry the `ready-for-agent` label.
140140
- An issue can declare dependencies with a `## Blocked by` section listing `#N` issue numbers;
141141
agents must not start an issue while any listed blocker is still open.
142-
- `progress.txt` at repo root is the running log of completed work — read it and the target
143-
GitHub issue before implementing, update it with what you did, and commit it alongside the
144-
code change (it's tracked in git, not gitignored — the log is part of the durable state a
145-
fresh agent session reconstructs context from).
142+
- Read the target GitHub issue before implementing; git log/PR history is the record of
143+
completed work — there is no separate progress log to maintain.
146144
- One task per run/session. Commit, push the branch, and open a PR whose description includes
147145
`Closes #N`.
148146
- `run_once.sh` automates all of the above: it picks the oldest eligible issue, does the work in

REUSE.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ path = [
2424
"dc_simulation/maps/**",
2525
"dc_simulation/models/**",
2626
"dc_simulation/env-hooks/dc_simulation.dsv.in",
27-
"progress.txt",
2827
".codespell.txt",
2928
".python-version",
3029
]

dc_bringup/launch/dc_bringup.launch.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,8 @@ def build_bridge_and_mcap_actions(configured_params):
8686
run` spawns its target as a child of its own process and does not forward
8787
signals to it, so a `respawn`/shutdown-triggering `kill` on what `ros2 run`
8888
returns never reaches the actual writer (see `tools/e2e/scripts/entrypoint.sh`
89-
and progress.txt's #210 follow-up entry for how this was found). `ExecuteProcess`
90-
runs `python3 -m dc_mcap_writer.cli` directly instead.
89+
for the same pattern). `ExecuteProcess` runs `python3 -m dc_mcap_writer.cli`
90+
directly instead.
9191
9292
When the block is absent or `enabled` is false or missing (every existing params
9393
file, unchanged), this returns exactly what the static `Node(...)` it replaces used

dc_demos/params/qrcodes_nav.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,8 @@ controller_server:
115115
#
116116
# Hence 0.1 rad, not the 0.2 this carried. Yaw is the expensive term because
117117
# it scales with the standoff, and a diff-drive robot turning on the spot
118-
# settles well inside 0.1 rad -- measured at no cost in navigation time (see
119-
# progress.txt); xy stays at 0.1 m, which costs nothing.
118+
# settles well inside 0.1 rad -- measured at no cost in navigation time;
119+
# xy stays at 0.1 m, which costs nothing.
120120
#
121121
# Worth knowing that this budget is not the whole error: the goal checker
122122
# compares AMCL's *estimate* of the pose against the goal, so localization

dc_simulation/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,8 +151,8 @@ world-file cleanup.
151151
**That gain does not show up once Nav2 and DC are both running.** With the full demo
152152
pipeline up and the robot merely parked at its spawn pose — no navigation, camera
153153
measurements still polling once a second — RTF sits at ~0.11 whether or not the props
154-
are merged: the same figure progress.txt records for "the pass with DC running" against
155-
#279's DC-off 0.198. Nav2's planners/costmaps and DC's per-frame ZXing decode (two
154+
are merged: the same figure recorded for "the pass with DC running" against #279's
155+
DC-off 0.198. Nav2's planners/costmaps and DC's per-frame ZXing decode (two
156156
1280x720 streams, every poll) are together the larger cost once they're both in the
157157
loop, and they swamp what the world-entity count buys on this box. See
158158
[#52](https://github.com/Minipada/ros2_data_collection/issues/52) for the full

progress.txt

Lines changed: 0 additions & 9148 deletions
This file was deleted.

run_once.sh

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@ fi
8686

8787
REPO_ROOT="$(git -C "$(dirname "$(realpath "$0")")" rev-parse --show-toplevel)"
8888
BASE_REF="origin/jazzy"
89-
PROGRESS_FILE="progress.txt"
9089

9190
AGENT_COLORS=(blue cyan fuchsia green indigo lime magenta orange pink purple rose teal violet yellow)
9291

@@ -384,13 +383,11 @@ else
384383
fi
385384
fi
386385

387-
PROMPT="@${PROGRESS_FILE}
388-
1. Read GitHub issue #${ISSUE_NUMBER} and the progress file.
386+
PROMPT="1. Read GitHub issue #${ISSUE_NUMBER}.
389387
2. Implement issue #${ISSUE_NUMBER}.
390388
3. Commit your changes.
391-
4. Update ${PROGRESS_FILE} with what you did.
392-
5. Push the branch and open a PR.
393-
6. The PR description must include 'Closes #${ISSUE_NUMBER}'.
389+
4. Push the branch and open a PR.
390+
5. The PR description must include 'Closes #${ISSUE_NUMBER}'.
394391
ONLY DO ONE TASK AT A TIME."
395392

396393
COLOR_INDEX=$(printf '%s' "$ISSUE_NUMBER" | cksum | awk '{print $1}')

tools/e2e/scripts/run_limits_shipper_fanin.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@
5353
unfinished* file that `mcap_summary.py` cannot parse at all yet. A live snapshot taken
5454
mid-rotation therefore reports those Records as "never reached dc_mcap_writer" even
5555
though they are sitting safely on disk, about to become readable a few seconds later.
56-
Verified empirically against a real run (see #382's progress.txt entry): a level's check
57-
failed with a clean, well-formed "ZERO-LOSS VERIFICATION FAILED" (not a parse crash) that
56+
Verified empirically against a real run: a level's check failed with a clean,
57+
well-formed "ZERO-LOSS VERIFICATION FAILED" (not a parse crash) that
5858
the exact same check, re-run against the same still-live containers a bit later, no
5959
longer reproduced. So `verify_zero_loss_at_level()` retries *any* failure shape once,
6060
after a pause comfortably longer than that 15s rotation window

0 commit comments

Comments
 (0)