Skip to content

test(spec): the connector-author-shape compile test carries its own 180 s timeout - #22969

Merged
objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/issue-22929-connector-shape-timeout
Oct 12, 2026
Merged

objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/issue-22929-connector-shape-timeout

Conversation

@objectstack-fleet

@objectstack-fleet objectstack-fleet Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Fixes #22929
Clause-②: no

Held out of the merge queue by #22949. Released 2026-10-12: #22949 closed, and main was merged into this branch with the net diff unchanged. The seat queues it once the new head is green and its remaining pre-queue items are met.

What changed

One file, packages/spec/src/integration/connector-author-shape.test.ts, +14 / -1: the it named compiles every full connector example verbatim, import line included now passes 180_000 as its own timeout, with a comment carrying the measured figures and the reasoning for the bound. Test-only. The package-wide testTimeout: 60_000 in packages/spec/vitest.config.ts is untouched, and the test is neither skipped nor split.

Why 180 s

  • CI, Test Core (1/6), as filed on the card: 55,680 ms on main (one cached replay, not three readings) and 61,767 ms on a cold spec re-run on PR feat(spec): ServiceSlotContracts types the webhooks and trigger-api slots #22922, which timed out at 60,000 ms. I could not re-read the job log from this container (the log blob host is not reachable through the proxy); the check run itself confirms that job failed in the packages/spec pnpm run test step, and the figures here are the card's.
  • Local, same test, --maxWorkers=2 on a shared box: 13,796 ms before the change and 10,969 ms after.
  • 180,000 ms is about 2.9x the cold CI reading and 3.2x the cached one. A hung compile still fails inside three minutes. It is also the figure shared/alias-integrity.test.ts already gives its own heavy beforeAll.

Evidence the timeout is the one that governs (ablation, one-off, nothing kept)

Direction stated before running: with the own timeout removed and the global forced down to 2,000 ms on the command line, the it goes red; restored, it goes green under the same forced global.

leg command tail result
ablated (}, 180_000); replaced by });, mutation proven on disk by anchor count 1 to 0 and blob change) vitest run --maxWorkers=2 --testTimeout=2000 ...connector-author-shape.test.ts Test timed out in 2000ms on the compile it, 10 other tests pass
restored (blob equals HEAD blob 88e0e6551c93, git diff HEAD empty) same command 11 of 11 pass, compile it 12,452 ms under the 2,000 ms global

The observed direction is the predicted one (red, then green). The test subject here is the test file itself, resolved from src, so there is no dist leg to prove.

Verification

  • pnpm --filter @objectstack/spec exec vitest run --maxWorkers=2 src/integration/connector-author-shape.test.ts at 57d5074ff: 11 passed, compile it 10,969 ms.
  • Gates: node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack derived 77 commands for this change set; all 77 were run at 57d5074ff with exit codes recorded before any pipe and reconciled with --ran: 76 exit 0, 1 NOT MEASURED, 0 unrun.
  • NOT MEASURED: pnpm check:dual-build-cjs-loads exited 3 (prerequisite: it reads the built dist of 88 other packages, which needs a whole-workspace pnpm build). A test file enters no package's emitted output, and Build Core in CI covers it. Two other gates that first exited 3 for an unbuilt prerequisite (check:doc-formula-expressions, check:lean-entry-closure) were rerun after a targeted build and exited 0.
  • Not measured here: the card's second half of "Done when", a cold Test Core shard running it green, which is CI's reading of this PR.
  • main moved four commits after the branch point (da9c2bf2f); none touches the test, docs/SYNC_ARCHITECTURE.md, packages/spec/src/integration/ or the vitest config. main was not merged in.

Publishes nothing

npm pack --dry-run on @objectstack/spec lists 2,079 files: 0 are test files or this test, with src/integration/connector.zod.ts present as the positive control; a search of dist for the test's title finds 0 files, and for ConnectorSchema finds files. No changeset is owed, and skip-changeset applies.

Acceptance notes

Nothing out of scope was found.


Generated by Claude Code

…80 s timeout instead of riding the 60 s default

The one `it` that compiles the document's connector examples through a
ts.createProgram over the spec's types read 55,680 ms on main and 61,767 ms on a
cold CI re-run against the package default of 60,000 ms. It now has its own
timeout with the measured figures in a comment; the global testTimeout is
untouched so the next slow test stays visible.

Claude-Session: https://claude.ai/code/session_019G5ZnRrTMiwcHG6iZM19zf
Co-authored-by: Claude <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

Nothing in this diff resolved to a documentable surface (no symbol, route or SDK anchor derived from 0 changed package(s)), so this run has no opinion about the docs.

What this run could not see

Coarse fallback — 0 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): node scripts/docs-audit/affected-docs.mjs --json 6a40a09ed952f83b1f765d47cd76aee4a41f6672 → packageMentionDocs.

@objectstack-fleet objectstack-fleet Bot added the skip-changeset PR has no user-facing published change; bypasses the changeset gate label Oct 12, 2026
@objectstack-fleet

Copy link
Copy Markdown
Contributor Author

skip-changeset applied · domain:spec seat 1 (#6017) · os-warren · session_019G5ZnRrTMiwcHG6iZM19zf · 2026-10-12T11:18Z

The basis is this seat's own review, as the review checklist prescribes when a dev's label write is refused by its session's permission check. The dev's report records the refused command verbatim.

  • The diff is one test file, packages/spec/src/integration/connector-author-shape.test.ts (+14 / −1), with no .changeset row added or changed.
  • @objectstack/spec ships no test file: the dev's npm pack --dry-run lists 0 among 2,079 files, with a positive control.
  • This repository routes tests-only PRs to this label, never to an empty changeset.

The maintainer confirmed in this seat's chat that the call is the seat's.

@objectstack-fleet
objectstack-fleet Bot marked this pull request as ready for review October 12, 2026 11:21
@objectstack-fleet
objectstack-fleet Bot enabled auto-merge October 12, 2026 11:21
@objectstack-fleet
objectstack-fleet Bot added this pull request to the merge queue Oct 12, 2026
Merged via the queue into main with commit 0ede0f8 Oct 12, 2026
45 of 47 checks passed
@objectstack-fleet
objectstack-fleet Bot deleted the claude/issue-22929-connector-shape-timeout branch October 12, 2026 11:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/s skip-changeset PR has no user-facing published change; bypasses the changeset gate tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test(spec): connector-author-shape.test.ts's compile test runs within 8% of its 60 s timeout on CI, so a cold spec run on a slow runner goes red

2 participants