Repository navigation
fix(agbossjs/agboss#760): the explorer bites one sabotage per file, and a reset that deletes — the gate in 4 min under load - #41
Merged
Conversation
…only the cases they read explorer-bites.test.ts ran both broken sets' whole storeConformance — 29 min alone on a loaded machine, past its 15-min hook. Each sabotage is now a file of its own (explorer-bites-finish, explorer-bites-caller-clock) whose nested vitest runs only the cases its assertions read: the lease world and the two #520 finish races (30 s), and the lease world's searches with each outbound-call world's walks (262 s). The contract suites and the worlds a sabotage passes proved nothing here. Each file also asserts exactly which cases ran, and every one of the caller-clock set fails. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012Kh8JmysuhZyQRSpNyJdPg
…t truncate The explorer resets the schema before every schedule it replays; a TRUNCATE per table (new files for each of 28) took 333 ms a reset on a loaded machine, a DELETE of the few rows 9 ms. In the first full gate under load the main interleavings (PostgreSQL) lease world reached its 900 s time limit after 6 of its 7 skews; the reset was most of it. Tables are emptied children first (by their foreign keys); sequences kept, as TRUNCATE without RESTART IDENTITY kept them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012Kh8JmysuhZyQRSpNyJdPg
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs agbossjs/agboss#760
What changed
tests/contracts/explorer-bites.test.ts→ one file per sabotage, each its own nested vitest on its own fixture and its own 15-min budget:explorer-bites-finish.test.ts(a finish that only releases) andexplorer-bites-caller-clock.test.ts(leases on the caller's clock); shared runnerexplorer-bites.ts, the sets infixtures/explorer-bites.sets.ts.testNamePattern): the finish set's lease world and its two #520 finish races; the caller-clock set's lease world (exhaustive + walks) and each outbound-call world's walks. Explorer options unchanged.no-takeover-of-finished-work; every caller-clock case fails with a minimal schedule,one-live-holderin the lease world.tests/support/database.ts— a contract case's resetDELETEs every table (children first, by foreign key) instead of aTRUNCATEper table: 333 → 9 ms a reset under load. The first full gate showed the maininterleavings (PostgreSQL)lease world reaching its 900 s limit after 6 of 7 skews; the explorer resets before every schedule it replays.test-run.json— contractsminFiles3.How it was tested
interleavings (PostgreSQL)lease world (its 900 s limit after 6 of 7 skews), which led to the reset.VITEST_MAX_FORKS=3 npm run checkunder the shared lock, green three times under load (load averages 7.7–9.5 with other agents' gates and Docker): the whole check in 225 s, 218 s, 196 s (withnpm ciand the pack);store-conformance.test.ts126 s (before: its lease world alone > 900 s), the bites 2.4 s and 9.7 s;check-test-run: tests 61/61 files, contracts 3/3 files ran.🤖 Generated with Claude Code
https://claude.ai/code/session_012Kh8JmysuhZyQRSpNyJdPg