From 6e94379a258c27c4c01ef7f78895cc3f98ebd3de Mon Sep 17 00:00:00 2001 From: ddidderr Date: Sat, 12 Sep 2026 09:27:40 +0200 Subject: [PATCH] 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. --- AGENTS.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..7f754df --- /dev/null +++ b/AGENTS.md @@ -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.