Skip to content

Add Yoga runtime smoke tests - #28

Merged
hyfdev merged 1 commit into
mainfrom
agent/yoga-runtime-smoke
Aug 16, 2026
Merged

hyfdev merged 1 commit into
mainfrom
agent/yoga-runtime-smoke

Conversation

@hyfdev

@hyfdev hyfdev commented Aug 16, 2026

Copy link
Copy Markdown
Owner

Summary

  • smoke-test the @taffyjs/yoga root and /load entries on Bun 1.2.0 and Deno 2.2.0 across the native CI targets
  • reuse a minimal fixed-layout check while asserting that both public Yoga entries resolve to the local replacement package
  • document Node.js 22.18+, Bun 1.2+, and Deno 2.2+ runtime compatibility, including Deno's native-loading requirements
  • record the Yoga alternate-runtime coverage decision in the repository documentation

Why

@taffyjs/yoga is now implemented over @taffyjs/node, so it should receive the same minimum-endpoint Bun and Deno coverage as its native backend. The runtime compatibility table also omitted Node.js even though CI already runs the complete suite at the declared Node.js 22.18.0 floor.

Validation

  • pnpm exec vp run ready
  • pnpm exec vp run check:format
  • pnpm exec vp run check:lint
  • pnpm dlx bun@1.2.0 tests/taffyjs-yoga/runtime-smoke.mjs
  • pnpm dlx deno@2.2.0 run --node-modules-dir=manual --allow-env --allow-read --allow-ffi tests/taffyjs-yoga/runtime-smoke.mjs
  • adversarial review: pass with no material findings

Copilot AI lite review requested due to automatic review settings August 16, 2026 12:41
@hyfdev
hyfdev merged commit c92f324 into main Aug 16, 2026
6 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds alternate-runtime (Bun/Deno) smoke coverage for the Yoga-compatible package by introducing a dedicated Yoga smoke test, wiring it into native CI targets, and updating repo/package documentation to reflect runtime support and the recorded coverage decision.

Changes:

  • Add a Yoga runtime smoke script that imports both yoga-layout root and /load entries and validates a minimal fixed layout.
  • Extend native CI jobs to run the Yoga smoke script on Bun 1.2.0 and Deno 2.2.0.
  • Update runtime compatibility docs (repo + package) and record the Bun/Deno smoke coverage decision.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/taffyjs-yoga/runtime-smoke.mjs New Bun/Deno-oriented smoke script for Yoga root + /load entries.
tests/runtime-smoke.ts Adds a Yoga-specific smoke helper alongside the existing TaffyTree smoke helper.
.github/workflows/ci.yml Runs the new Yoga smoke script in Ubuntu/Windows native CI jobs for Bun/Deno.
README.md Updates the runtime compatibility matrix to include Node.js and mark @taffyjs/yoga as implemented/smoke-tested.
packages/taffyjs-yoga/README.md Documents Bun/Deno support constraints (including Deno native-loading permissions).
.agents/docs/technology-stack.md Updates CI job description to include Yoga alternate-runtime smoke checks.
.agents/docs/taffyjs-yoga-reference.md Clarifies that @taffyjs/yoga uses the native backend across supported Bun/Deno versions.
.agents/docs/taffyjs-yoga-decisions.md Records the Bun/Deno smoke coverage ruling for @taffyjs/yoga.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +1 to +17
import Yoga from "yoga-layout";
import { loadYoga } from "yoga-layout/load";

import { runYogaRuntimeSmoke } from "../runtime-smoke.ts";

const packageName = "@taffyjs/yoga";
const loadEntryName = "@taffyjs/yoga/load";
const resolvedEntry = import.meta.resolve("yoga-layout");
const resolvedLoadEntry = import.meta.resolve("yoga-layout/load");

if (!resolvedEntry.endsWith("/dist/index.js")) {
throw new Error(`${packageName} resolved to an unexpected entry: ${resolvedEntry}`);
}

if (!resolvedLoadEntry.endsWith("/dist/load.js")) {
throw new Error(`${loadEntryName} resolved to an unexpected entry: ${resolvedLoadEntry}`);
}
hyfdev added a commit that referenced this pull request Aug 16, 2026
hyfdev added a commit that referenced this pull request Aug 16, 2026
Add the Yoga-compatible facade backed by the native Taffy runtime and cover its runtime boundary.

Refs: #9, #12, #14, #28
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.

2 participants