Skip to content

test: raise AVA concurrency now that the global-composer pin is obsolete#216

Merged
tonyketcham merged 3 commits into
mainfrom
stack/tonyketcham/feat/unified-watch-effort-graph/raise-ava-concurrency-now-global-composer-pin--b58dca64
Jul 18, 2026
Merged

test: raise AVA concurrency now that the global-composer pin is obsolete#216
tonyketcham merged 3 commits into
mainfrom
stack/tonyketcham/feat/unified-watch-effort-graph/raise-ava-concurrency-now-global-composer-pin--b58dca64

Conversation

@tonyketcham

Copy link
Copy Markdown
Collaborator

Run four isolated AVA workers: test writers use distinct temporary directories, watcher servers bind ephemeral ports, and no suite changes the process cwd. This retains headroom for filesystem watchers while cutting the measured suite wall time from 61.12s serial to 32.60s, 32.79s, 32.02s, 31.74s, and 32.97s.

Parallel validation exposed a startup race in the live-bridge journal poll: the test read its transaction directory before the writer created it. Treat ENOENT as an empty poll iteration so the existing bounded wait covers normal async startup.

Verification: five consecutive pnpm test:ava runs, each 293 passed; pnpm verify (lint, typecheck, build, 293 AVA, 45 codegen Vitest, 7 utils Vitest).
Co-authored-by: Cursor [email protected]

Depends-On: #215

@tonyketcham

tonyketcham commented Jul 18, 2026

Copy link
Copy Markdown
Collaborator Author

This pull request is part of a Mergify stack:

# Pull Request Link
1 docs(effort-graph): add Effort Graph glossary and ADRs 0001-0007 #205
2 feat(core,cli): unified watch with incremental reindex and live schema swap #206
3 feat(effort-graph): journaled semantic writer for the Effort Graph #207
4 refactor(config): loadConfig returns an initialized LoadedFlatbreadConfig #208
5 refactor(core): single Record-production module owns file→Record and path classification #209
6 refactor(effort-graph): per-mutate snapshot + Decision lifecycle module #210
7 refactor(core): collection query executor owns filter/sort/paging with copy-on-output #211
8 refactor(core,cli): unified watch coordinator behind one seam, two adapters #212
9 refactor(core): per-build schema composer; delete the config-keyed schema cache #213
10 feat(effort-graph,flatbread): committed-generation bridge completes the ADR-0003/0004 contract #214
11 chore(core): drop unused graphql-compose-json and lru-cache dependencies #215
12 test: raise AVA concurrency now that the global-composer pin is obsolete #216 👈
13 docs(agents): define orchestrator-executor operating model #217

Run four isolated AVA workers: test writers use distinct temporary directories, watcher servers bind ephemeral ports, and no suite changes the process cwd. This retains headroom for filesystem watchers while cutting the measured suite wall time from 61.12s serial to 32.60s, 32.79s, 32.02s, 31.74s, and 32.97s.

Parallel validation exposed a startup race in the live-bridge journal poll: the test read its transaction directory before the writer created it. Treat ENOENT as an empty poll iteration so the existing bounded wait covers normal async startup.

Verification: five consecutive pnpm test:ava runs, each 293 passed; pnpm verify (lint, typecheck, build, 293 AVA, 45 codegen Vitest, 7 utils Vitest).
Co-authored-by: Cursor <[email protected]>
Change-Id: Ib58dca643335b671687601e01bda25e0b4013c32
@tonyketcham
tonyketcham force-pushed the stack/tonyketcham/feat/unified-watch-effort-graph/raise-ava-concurrency-now-global-composer-pin--b58dca64 branch from 4825b74 to b599488 Compare July 18, 2026 07:36
@tonyketcham

Copy link
Copy Markdown
Collaborator Author

Revision history

# Type Changes Reason Date
1 initial 4825b74 2026-07-18 07:37 UTC
2 content 4825b74 → b599488 2026-07-18 07:37 UTC

@tonyketcham

Copy link
Copy Markdown
Collaborator Author

@Mergifyio queue

@mergify

mergify Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

  • Entered queue2026-07-18 08:36 UTC · Rule: owner-bypass · triggered by @tonyketcham with the @mergifyio queue command
  • Checks failed · in-place
  • 🚫 Left the queue2026-07-18 09:29 UTC · at 68612966b1a858efed288af395ca37ba25dd967e

This pull request spent 52 minutes 7 seconds in the queue, with no time running CI.

Waiting for
  • check-success = integration-nextjs (20.x, macos-latest)
  • check-success = integration-nextjs (20.x, windows-latest)
  • check-success = integration-sveltekit (20.x, macos-latest)
  • check-success = integration-sveltekit (20.x, windows-latest)
  • check-success = test (20.x, ubuntu-latest)
All conditions
  • check-success = integration-nextjs (20.x, macos-latest)
  • check-success = integration-nextjs (20.x, windows-latest)
  • check-success = integration-sveltekit (20.x, macos-latest)
  • check-success = integration-sveltekit (20.x, windows-latest)
  • check-success = test (20.x, ubuntu-latest)
  • author = tonyketcham
  • check-success = build (20.x, ubuntu-latest)
  • check-success = build (22.x, ubuntu-latest)
  • check-success = integration-nextjs (20.x, ubuntu-latest)
  • check-success = integration-nextjs (22.x, macos-latest)
  • check-success = integration-nextjs (22.x, ubuntu-latest)
  • check-success = integration-nextjs (22.x, windows-latest)
  • check-success = integration-sveltekit (20.x, ubuntu-latest)
  • check-success = integration-sveltekit (22.x, macos-latest)
  • check-success = integration-sveltekit (22.x, ubuntu-latest)
  • check-success = integration-sveltekit (22.x, windows-latest)
  • check-success = lint (20.x, ubuntu-latest)
  • check-success = lint (22.x, ubuntu-latest)
  • check-success = test (22.x, ubuntu-latest)
  • depends-on = FlatbreadLabs/flatbread#215 [⛓️ chore(core): drop unused graphql-compose-json and lru-cache dependencies #215]

Reason

The merge conditions cannot be satisfied due to failing checks

Failing checks:

Hint

You may have to fix your CI before adding the pull request to the queue again.
If you update this pull request, to fix the CI, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

Requeued — the merge queue status continues in this comment ↓.

@mergify mergify Bot added the queued label Jul 18, 2026
Base automatically changed from stack/tonyketcham/feat/unified-watch-effort-graph/drop-unused-graphql-compose-json-lru-cache-deps--6d9ecf9f to main July 18, 2026 09:24
…graph/raise-ava-concurrency-now-global-composer-pin--b58dca64
@mergify

mergify Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

  • 🟠 Waiting for queue conditions
  • ⏳ Enter queue
  • ⏳ Run checks
  • ⏳ Merge
Waiting for any of
  • all of: [📌 queue conditions of queue rule default]
    • github-review-approved [🛡 GitHub branch protection] (documentation)
    • any of: [🛡 GitHub branch protection]
      • check-neutral = test (20.x, ubuntu-latest)
      • check-skipped = test (20.x, ubuntu-latest)
      • check-success = test (20.x, ubuntu-latest)
  • check-success = test (20.x, ubuntu-latest)
All conditions
  • any of [🔀 queue conditions]:
    • all of [📌 queue conditions of queue rule default]:
      • github-review-approved [🛡 GitHub branch protection] (documentation)
      • any of [🛡 GitHub branch protection]:
        • check-neutral = test (20.x, ubuntu-latest)
        • check-skipped = test (20.x, ubuntu-latest)
        • check-success = test (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = build (20.x, ubuntu-latest)
        • check-neutral = build (20.x, ubuntu-latest)
        • check-skipped = build (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = build (22.x, ubuntu-latest)
        • check-neutral = build (22.x, ubuntu-latest)
        • check-skipped = build (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (20.x, macos-latest)
        • check-neutral = integration-nextjs (20.x, macos-latest)
        • check-skipped = integration-nextjs (20.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (20.x, ubuntu-latest)
        • check-neutral = integration-nextjs (20.x, ubuntu-latest)
        • check-skipped = integration-nextjs (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (20.x, windows-latest)
        • check-neutral = integration-nextjs (20.x, windows-latest)
        • check-skipped = integration-nextjs (20.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (22.x, macos-latest)
        • check-neutral = integration-nextjs (22.x, macos-latest)
        • check-skipped = integration-nextjs (22.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (22.x, ubuntu-latest)
        • check-neutral = integration-nextjs (22.x, ubuntu-latest)
        • check-skipped = integration-nextjs (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (22.x, windows-latest)
        • check-neutral = integration-nextjs (22.x, windows-latest)
        • check-skipped = integration-nextjs (22.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (20.x, macos-latest)
        • check-neutral = integration-sveltekit (20.x, macos-latest)
        • check-skipped = integration-sveltekit (20.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (20.x, ubuntu-latest)
        • check-neutral = integration-sveltekit (20.x, ubuntu-latest)
        • check-skipped = integration-sveltekit (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (20.x, windows-latest)
        • check-neutral = integration-sveltekit (20.x, windows-latest)
        • check-skipped = integration-sveltekit (20.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (22.x, macos-latest)
        • check-neutral = integration-sveltekit (22.x, macos-latest)
        • check-skipped = integration-sveltekit (22.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (22.x, ubuntu-latest)
        • check-neutral = integration-sveltekit (22.x, ubuntu-latest)
        • check-skipped = integration-sveltekit (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (22.x, windows-latest)
        • check-neutral = integration-sveltekit (22.x, windows-latest)
        • check-skipped = integration-sveltekit (22.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = lint (20.x, ubuntu-latest)
        • check-neutral = lint (20.x, ubuntu-latest)
        • check-skipped = lint (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = lint (22.x, ubuntu-latest)
        • check-neutral = lint (22.x, ubuntu-latest)
        • check-skipped = lint (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = test (22.x, ubuntu-latest)
        • check-neutral = test (22.x, ubuntu-latest)
        • check-skipped = test (22.x, ubuntu-latest)
    • all of [📌 queue conditions of queue rule owner-bypass]:
      • check-success = test (20.x, ubuntu-latest)
      • author = tonyketcham
      • check-success = build (20.x, ubuntu-latest)
      • check-success = build (22.x, ubuntu-latest)
      • check-success = integration-nextjs (20.x, macos-latest)
      • check-success = integration-nextjs (20.x, ubuntu-latest)
      • check-success = integration-nextjs (20.x, windows-latest)
      • check-success = integration-nextjs (22.x, macos-latest)
      • check-success = integration-nextjs (22.x, ubuntu-latest)
      • check-success = integration-nextjs (22.x, windows-latest)
      • check-success = integration-sveltekit (20.x, macos-latest)
      • check-success = integration-sveltekit (20.x, ubuntu-latest)
      • check-success = integration-sveltekit (20.x, windows-latest)
      • check-success = integration-sveltekit (22.x, macos-latest)
      • check-success = integration-sveltekit (22.x, ubuntu-latest)
      • check-success = integration-sveltekit (22.x, windows-latest)
      • check-success = lint (20.x, ubuntu-latest)
      • check-success = lint (22.x, ubuntu-latest)
      • check-success = test (22.x, ubuntu-latest)
  • -closed [📌 queue requirement]
  • -conflict [📌 queue requirement]
  • -draft [📌 queue requirement]
  • depends-on = FlatbreadLabs/flatbread#215 [⛓️ chore(core): drop unused graphql-compose-json and lru-cache dependencies #215]
  • any of [📌 queue -> configuration change requirements]:
    • -mergify-configuration-changed
    • check-success = Configuration changed

@mergify mergify Bot added dequeued and removed queued labels Jul 18, 2026
@tonyketcham

Copy link
Copy Markdown
Collaborator Author

@Mergifyio queue

@mergify

mergify Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

  • 🟠 Waiting for queue conditions
  • ⏳ Enter queue
  • ⏳ Run checks
  • ⏳ Merge
Required conditions to enter a queue
  • -closed [📌 queue requirement]
  • -conflict [📌 queue requirement]
  • -draft [📌 queue requirement]
  • depends-on = FlatbreadLabs/flatbread#215 [⛓️ chore(core): drop unused graphql-compose-json and lru-cache dependencies #215]
  • any of [📌 queue -> configuration change requirements]:
    • -mergify-configuration-changed
    • check-success = Configuration changed
  • any of [🔀 queue conditions]:
    • all of [📌 queue conditions of queue rule owner-bypass]:
      • author = tonyketcham
      • check-success = build (20.x, ubuntu-latest)
      • check-success = build (22.x, ubuntu-latest)
      • check-success = integration-nextjs (20.x, macos-latest)
      • check-success = integration-nextjs (20.x, ubuntu-latest)
      • check-success = integration-nextjs (20.x, windows-latest)
      • check-success = integration-nextjs (22.x, macos-latest)
      • check-success = integration-nextjs (22.x, ubuntu-latest)
      • check-success = integration-nextjs (22.x, windows-latest)
      • check-success = integration-sveltekit (20.x, macos-latest)
      • check-success = integration-sveltekit (20.x, ubuntu-latest)
      • check-success = integration-sveltekit (20.x, windows-latest)
      • check-success = integration-sveltekit (22.x, macos-latest)
      • check-success = integration-sveltekit (22.x, ubuntu-latest)
      • check-success = integration-sveltekit (22.x, windows-latest)
      • check-success = lint (20.x, ubuntu-latest)
      • check-success = lint (22.x, ubuntu-latest)
      • check-success = test (20.x, ubuntu-latest)
      • check-success = test (22.x, ubuntu-latest)
    • all of [📌 queue conditions of queue rule default]:
      • github-review-approved [🛡 GitHub branch protection] (documentation)
      • any of [🛡 GitHub branch protection]:
        • check-success = build (20.x, ubuntu-latest)
        • check-neutral = build (20.x, ubuntu-latest)
        • check-skipped = build (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = build (22.x, ubuntu-latest)
        • check-neutral = build (22.x, ubuntu-latest)
        • check-skipped = build (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (20.x, macos-latest)
        • check-neutral = integration-nextjs (20.x, macos-latest)
        • check-skipped = integration-nextjs (20.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (20.x, ubuntu-latest)
        • check-neutral = integration-nextjs (20.x, ubuntu-latest)
        • check-skipped = integration-nextjs (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (20.x, windows-latest)
        • check-neutral = integration-nextjs (20.x, windows-latest)
        • check-skipped = integration-nextjs (20.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (22.x, macos-latest)
        • check-neutral = integration-nextjs (22.x, macos-latest)
        • check-skipped = integration-nextjs (22.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (22.x, ubuntu-latest)
        • check-neutral = integration-nextjs (22.x, ubuntu-latest)
        • check-skipped = integration-nextjs (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-nextjs (22.x, windows-latest)
        • check-neutral = integration-nextjs (22.x, windows-latest)
        • check-skipped = integration-nextjs (22.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (20.x, macos-latest)
        • check-neutral = integration-sveltekit (20.x, macos-latest)
        • check-skipped = integration-sveltekit (20.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (20.x, ubuntu-latest)
        • check-neutral = integration-sveltekit (20.x, ubuntu-latest)
        • check-skipped = integration-sveltekit (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (20.x, windows-latest)
        • check-neutral = integration-sveltekit (20.x, windows-latest)
        • check-skipped = integration-sveltekit (20.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (22.x, macos-latest)
        • check-neutral = integration-sveltekit (22.x, macos-latest)
        • check-skipped = integration-sveltekit (22.x, macos-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (22.x, ubuntu-latest)
        • check-neutral = integration-sveltekit (22.x, ubuntu-latest)
        • check-skipped = integration-sveltekit (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = integration-sveltekit (22.x, windows-latest)
        • check-neutral = integration-sveltekit (22.x, windows-latest)
        • check-skipped = integration-sveltekit (22.x, windows-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = lint (20.x, ubuntu-latest)
        • check-neutral = lint (20.x, ubuntu-latest)
        • check-skipped = lint (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = lint (22.x, ubuntu-latest)
        • check-neutral = lint (22.x, ubuntu-latest)
        • check-skipped = lint (22.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = test (20.x, ubuntu-latest)
        • check-neutral = test (20.x, ubuntu-latest)
        • check-skipped = test (20.x, ubuntu-latest)
      • any of [🛡 GitHub branch protection]:
        • check-success = test (22.x, ubuntu-latest)
        • check-neutral = test (22.x, ubuntu-latest)
        • check-skipped = test (22.x, ubuntu-latest)

Retry only ENOENT watcher subscription failures with bounded backoff so
parallel test workers do not fail when temporary directories are removed.

Co-authored-by: Cursor <[email protected]>
Change-Id: I7e092e6e30ec70dcc30db39777cba6d06bf5058d
@tonyketcham

Copy link
Copy Markdown
Collaborator Author

@Mergifyio queue

@mergify

mergify Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

queue

☑️ Command queue ignored because it is already running from a previous command.

@mergify mergify Bot removed the dequeued label Jul 18, 2026
@tonyketcham

Copy link
Copy Markdown
Collaborator Author

@Mergifyio refresh

@mergify

mergify Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

refresh

✅ Pull request refreshed

@tonyketcham

Copy link
Copy Markdown
Collaborator Author

@Mergifyio queue

@mergify

mergify Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

queue

☑️ Command queue ignored because it is already running from a previous command.

@mergify mergify Bot added the queued label Jul 18, 2026
@mergify

mergify Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

  • Entered queue2026-07-18 09:59 UTC · Rule: owner-bypass · triggered by a @mergifyio queue command
  • Checks skipped · PR is already up-to-date
  • Merged2026-07-18 10:00 UTC · at e7490cc4596e4c0e9ce6bc72519657b8e4701592

This pull request spent 16 seconds in the queue, including 2 seconds running CI.

Required conditions to merge
  • author = tonyketcham
  • check-success = build (20.x, ubuntu-latest)
  • check-success = build (22.x, ubuntu-latest)
  • check-success = integration-nextjs (20.x, macos-latest)
  • check-success = integration-nextjs (20.x, ubuntu-latest)
  • check-success = integration-nextjs (20.x, windows-latest)
  • check-success = integration-nextjs (22.x, macos-latest)
  • check-success = integration-nextjs (22.x, ubuntu-latest)
  • check-success = integration-nextjs (22.x, windows-latest)
  • check-success = integration-sveltekit (20.x, macos-latest)
  • check-success = integration-sveltekit (20.x, ubuntu-latest)
  • check-success = integration-sveltekit (20.x, windows-latest)
  • check-success = integration-sveltekit (22.x, macos-latest)
  • check-success = integration-sveltekit (22.x, ubuntu-latest)
  • check-success = integration-sveltekit (22.x, windows-latest)
  • check-success = lint (20.x, ubuntu-latest)
  • check-success = lint (22.x, ubuntu-latest)
  • check-success = test (20.x, ubuntu-latest)
  • check-success = test (22.x, ubuntu-latest)
  • depends-on = FlatbreadLabs/flatbread#215 [⛓️ chore(core): drop unused graphql-compose-json and lru-cache dependencies #215]

@tonyketcham
tonyketcham merged commit 8f24ffd into main Jul 18, 2026
19 checks passed
@tonyketcham
tonyketcham deleted the stack/tonyketcham/feat/unified-watch-effort-graph/raise-ava-concurrency-now-global-composer-pin--b58dca64 branch July 18, 2026 10:00
@mergify mergify Bot removed the queued label Jul 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant