docs: require automatic commits for completed changes

Record the repository policy that agents must commit completed, validated
work without waiting for an additional user request. Require focused
commits, relevant checks, explicit validation limits, and post-commit
verification while excluding recordings, transcripts, and unrelated files.

Document the CLI and helper responsibilities and preserve ordered output,
request-local speaker IDs, and all-or-nothing stdout as project invariants.

Test Plan:
- Reviewed AGENTS.md against the requested automatic-commit policy and the
  current repository layout.
- git diff --cached --check: passed.
This commit is contained in:
ddidderr committed 2026-09-12 09:27:40 +02:00
1 parent 38894c2549
commit 6e94379a25
1 file changed
+32
+32
View File
@@ -0,0 +1,32 @@
# Repository instructions
## Automatic commits are mandatory
- Automatically commit each completed, validated change before finishing a
task. Do not wait for the user to ask for a commit or request confirmation.
- Keep commits focused. Include the implementation, regression tests, and
relevant documentation together; commit independent changes separately.
- Inspect staged and unstaged changes before committing. Stage only files that
belong to the task. Do not commit user recordings, generated transcripts,
credentials, or unrelated changes.
- Use Conventional Commit subjects and explain the change and validation in
the commit body, including a `Test Plan:` section.
- Run the relevant checks, including `python3 -B -m unittest -v`,
`bash -n transcribe` for shell changes, and `git diff --cached --check`.
Report any validation that could not be completed; never claim a mocked
provider test proves live API behavior.
- After committing, inspect the commit and working tree, and report the commit
hash with any remaining work. Do not push unless requested.
## Project layout
- `transcribe`: CLI options, audio preparation, and transcription requests.
- `chunks.py`: upload boundaries and ordered overlap stitching.
- `subtitles.py`: timestamp validation and SRT cue formatting.
- `transcript.py`: readable text paragraphs and speaker markers.
- `test_*.py` and `tests/fake_provider.py`: local regression tests without real
credentials or provider requests.
Keep the CLI and its three Python helpers together. Preserve transcript order,
scope speaker IDs to their request, and emit stdout only after all chunks and
output conversion succeed. Progress and errors belong on stderr.