fix burn-kindergarten 0-second flake; expose --repair on query (off by default)
burn-kindergarten flake fix: test_burn_kindergarten_zero_seconds_burns_everything failed under full-suite ordering when the wall-clock second rolled over between seeding the row & running burn-kindergarten. Old impl computed `cutoff = now - 0 = now` and required `created_at >= now`, so a row seeded at second T became invisible to a burn check that ran at T+1. The verb's docstring is "0-second window = burn every live row". Fix the impl to match: when kindergarten_seconds <= 0, drop the time gate entirely (burn all live records). Non-zero windows keep the existing cutoff-based filter unchanged. Repair CLI: `aborist query --repair` enables the mechanical repair pass after first verify. `--repair-reprompts N` adds the optional re-prompt tier (default 0 = off; mechanical-only when --repair is set without --repair-reprompts). Both flags are off by default so `make query` stays single-shot unless the operator opts in. Makefile: `make query REPAIR=1` flips on mechanical repair; `make query REPAIR=1 REPROMPTS=1` adds one re-prompt iteration. Both knobs off by default to preserve existing behavior. 485 tests pass under full-suite ordering (was 484 + 1 flake).
This commit is contained in:
parent
9930fc7f1d
commit
304dadfb71
2 changed files with 56 additions and 13 deletions
6
Makefile
6
Makefile
|
|
@ -155,11 +155,11 @@ burn-kindergarten: bootstrap ## bust providence rows < SECONDS old [SECONDS=3600
|
|||
# Multi-source RAG query against the shard cluster.
|
||||
# Usage: make query Q="What is anarcho-capitalism?"
|
||||
QUERY_TOP_K ?= 8
|
||||
query: bootstrap ## ask the corpus a question [JSON=1 BURN=1]; sources picked across shards
|
||||
query: bootstrap ## ask the corpus a question [JSON=1 BURN=1 REPAIR=1 REPROMPTS=N]; sources picked across shards
|
||||
@if [ -z "$$Q" ] && [ -z "$(Q)" ]; then \
|
||||
echo "usage: make query Q=\"your question\" [JSON=1 BURN=1]"; exit 2; \
|
||||
echo "usage: make query Q=\"your question\" [JSON=1 BURN=1 REPAIR=1 REPROMPTS=N]"; exit 2; \
|
||||
fi
|
||||
$(ABORIST) --shards-dir $(SHARDS_DIR) query --top-k $(QUERY_TOP_K) $(if $(JSON),--json,) $(if $(BURN),--burn,) "$(Q)"
|
||||
$(ABORIST) --shards-dir $(SHARDS_DIR) query --top-k $(QUERY_TOP_K) $(if $(JSON),--json,) $(if $(BURN),--burn,) $(if $(REPAIR),--repair,) $(if $(REPROMPTS),--repair-reprompts $(REPROMPTS),) "$(Q)"
|
||||
|
||||
query-dry: bootstrap ## like 'make query' but skip the LLM call (dry-run) [JSON=1 BURN=1]
|
||||
@if [ -z "$$Q" ] && [ -z "$(Q)" ]; then \
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue