- delete_topic waited with `grep -qx` (BRE), so deleting `audit.events`
matched the live `audit-events` and spun to its timeout — the e2e
failed at step 25 on every run that reached it. Use `grep -qxF`.
- The two -k/--connect-to guards were written as `! grep`, which cannot
fail under hack/cozytest.sh (it wraps each @test in `set -e` + a
trailing `return 0`, and bash exempts a `!`-negated command from
errexit). Rewrite them as positive `if grep ...; then return 1; fi`;
verified the -k reinstatement now reddens the suite under cozytest.
- Cover the restore-side literal-topic guard that was unpinned at every
level: a bats case runs the existing-topic branch with a colliding
sibling and asserts the `--alter` argv carries `\Q…\E`, and run-all.sh
now leaves `audit.events` live so the e2e exercises that branch instead
of only `--create`. Add bats cases for the partition-shrink refusal, the
`-f` upload guard, and `--exclude-internal`.
- Bound a running Job: reconcileKafka / reconcileKafkaRestore now fail the
BackupJob/RestoreJob once kafkaDefaultBackupDeadline elapses in the
Job-running branch (buildJobStrategyBatchJob sets no
activeDeadlineSeconds), so an unschedulable pod no longer pins it in
Running forever. Pinned by TestReconcileKafka_FailsWhenJobNeverCompletes.
- Fail closed on an unknown record kind and an unknown MODE, and validate
the live partition/RF parsed on restore (an empty value silently skipped
reconciliation). Correct the stale "image pinned in the strategy" comment
in the example helpers and the chainsaw test (the controller now resolves
the target broker's image as .ClientImage).
Signed-off-by: Andrey Kolkov <androndo@gmail.com>
Assisted-by: LLM