fix(build): Catch harness build failures before merge#43
Merged
Conversation
Keep harness adapter types valid under declaration generation and typecheck. Preserve optional runtime tool ids, keep Pi result normalization on the declared result type, and serialize tool-call errors with required messages. Co-Authored-By: OpenAI Codex <codex@openai.com>
Add typecheck and workspace build to the pull request workflow so declaration and type regressions fail before post-merge publishing jobs. Co-Authored-By: OpenAI Codex <codex@openai.com>
Keep packages reserved for publishable surfaces by moving the private Foobar demo runtime into examples. Update workspace paths, tests, docs, and README examples to keep factuality judges as the primary documented pattern. Co-Authored-By: OpenAI Codex <codex@openai.com>
Rename the private demo runtime from foobar to refund-agent so the folder and workspace package describe their purpose. Update demo imports, docs, and path aliases to use @demo/refund-agent. Co-Authored-By: OpenAI Codex <codex@openai.com>
Remove the shared @demo/refund-agent workspace package and keep the refund fixtures inside the demo apps that use them. The Pi demo now owns its Pi agent directly, while the AI SDK demo owns its simple tool data and assertion helper. Root test scripts cover apps so the app-local fixture test still runs in CI. Co-Authored-By: OpenAI Codex <codex@openai.com>
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.
Restore the harness declaration build and add the missing merge gates that would have caught it. Pull request CI now runs typecheck and the workspace build after lint/tests, so DTS regressions fail before publish-time workflows.
Harness Build Fixes
DTS generation now uses stricter public types for Pi harness result normalization and tool-call errors. AI SDK runtime tool calls without ids are preserved instead of being compared against SDK step ids.
CI Gates
The PR workflow runs release config validation, lint, typecheck, CI tests, and the workspace build before merge. The root test scripts also cover
apps, so app-owned demo fixture tests run in CI.Demo Fixtures
The refund demo runtime is no longer a workspace package under
packages/orexamples/. The Pi demo owns itssrc/refundAgent.tsfixture, and the AI SDK demo owns its local tools/assertion helper. README and package docs keep factuality/LLM-as-a-judge examples as the primary documentation pattern.Validated locally with
pnpm install --frozen-lockfile,pnpm lint,pnpm typecheck,pnpm test:ci, andpnpm run build.