diff --git a/packages/spec/src/contracts/scoped-context.test.ts b/packages/spec/src/contracts/scoped-context.test.ts index ffcfc85f6e5..20f0fc5adac 100644 --- a/packages/spec/src/contracts/scoped-context.test.ts +++ b/packages/spec/src/contracts/scoped-context.test.ts @@ -1,4 +1,5 @@ // Copyright (c) 2026 ObjectStack. Licensed under the Apache-2.0 license. +// test-budget: 30 — compiles the package type graph once: every probe (the hook JSDoc calls through IScopedContext, the undeclared members it must reject by name, and the harness control) is compiled in one ts.createProgram over the spec entry barrels it imports, the first read pays that program's type-graph resolution and every later probe reads the same program; slowest of 9 executed hourly CI readings on 2026-10-16, 17.1 s (run 38865071010), x 1.25, rounded up import { describe, it, expect } from 'vitest'; import ts from 'typescript'; diff --git a/packages/spec/src/integration/connector-author-shape.test.ts b/packages/spec/src/integration/connector-author-shape.test.ts index e074aeda510..5311f2a3a9d 100644 --- a/packages/spec/src/integration/connector-author-shape.test.ts +++ b/packages/spec/src/integration/connector-author-shape.test.ts @@ -1,4 +1,5 @@ // Copyright (c) 2026 ObjectStack. Licensed under the Apache-2.0 license. +// test-budget: 30 — compiles the package type graph once: every probe (the two SYNC_ARCHITECTURE.md connector examples, the retired keys a Connector must refuse, the Connector / ConnectorParsed pair, and their controls) is compiled in one ts.createProgram over the spec entry barrels it imports, the first read pays that program's type-graph resolution and every later probe reads the same program; slowest of 9 executed hourly CI readings on 2026-10-16, 21.8 s (run 38904808867), x 1.25, rounded up import { describe, it, expect } from 'vitest'; import ts from 'typescript';