Skip to content

test: support Pi 1.0.2 HTML renderer callbacks - #3

Merged
yehezkieled merged 1 commit into
mainfrom
fm/fm-ci-pi-pin
Oct 4, 2026
Merged

yehezkieled merged 1 commit into
mainfrom
fm/fm-ci-pi-pin

Conversation

@yehezkieled

Copy link
Copy Markdown
Owner

Intent

Do not merge the worktree-trust fix (PR #2) past its failing check; fix the cause first. The failing check is CI shard "Behavior portable serial 6": tests/fm-calm-pi-extension.test.sh fails with "Pi calm renderer and lifecycle contract failed: grep disappeared from /export calm.html HTML while calm mode was on". CI installs @earendil-works/pi-coding-agent unpinned (.github/workflows/ci.yml around lines 118 and 222); the last green main run used 1.0.0 and Pi 1.0.2 was published 2026-10-04T00:56Z. The test passes locally with Pi 1.0.0.

What Changed

  • Add getToolRenderers callbacks to calm export and branch HTML renderer test fixtures for Pi 1.0.2 compatibility.
  • Retain getToolDefinition callbacks for compatibility with earlier Pi versions.

Risk Assessment

✅ Low: The bounded fixture update corrects the source-confirmed Pi 1.0.2 callback rename at every affected construction while preserving Pi 1.0.0 compatibility and existing behavioral assertions.

Testing

Inspected the test-only diff and ran both affected checks successfully, including existing native Calm E2E checks. Logs were retained in the evidence directory; no visual artifacts were captured. Pi 1.0.2 acceptance remains unverified.

  • Live validation: ⚠️ no-surface - 0 of 2 scenarios driven live against the product
Scenario Result Live Evidence
The failing CI shard preserves grep in Calm HTML exports with Pi 1.0.2 ⏸️ untested no This change modifies test fixtures only, with no changed runtime product surface. Pi 1.0.2 is unavailable in the current test environment; run the affected checks with that version in CI.
The renderer fixtures retain compatibility with Pi versions using getToolDefinition ⏸️ untested no The change has no runtime product surface to validate live; compatibility was exercised through automated test fixtures.
  • Outcome: ⚠️ 2 warnings across 1 run (1m55s)

Pipeline

Updates from git push no-mistakes

✅ **intent** - passed

✅ No issues found.

✅ **Rebase** - passed

✅ No issues found.

✅ **Review** - passed

✅ No issues found.

⚠️ **Test** - 2 warnings
  • ⚠️ The reported Pi 1.0.2 regression remains unverified: the installed Pi is 0.87.1. Both affected checks passed locally, but acceptance requires evidence from the failing CI version before proceeding.
  • ⚠️ this change has no live-validatable surface; proceed without live validation? (0 of 2 scenarios were driven live against the product); The failing CI shard preserves grep in Calm HTML exports with Pi 1.0.2: This change modifies test fixtures only, with no changed runtime product surface. Pi 1.0.2 is unavailable in the current test environment; run the affected checks with that version in CI.; The renderer fixtures retain compatibility with Pi versions using getToolDefinition: The change has no runtime product surface to validate live; compatibility was exercised through automated test fixtures.
  • Live validation: ⚠️ no-surface - 0 of 2 scenarios driven live against the product
Scenario Result Live Evidence
The failing CI shard preserves grep in Calm HTML exports with Pi 1.0.2 ⏸️ untested no This change modifies test fixtures only, with no changed runtime product surface. Pi 1.0.2 is unavailable in the current test environment; run the affected checks with that version in CI.
The renderer fixtures retain compatibility with Pi versions using getToolDefinition ⏸️ untested no The change has no runtime product surface to validate live; compatibility was exercised through automated test fixtures.
  • git diff b6b3f3a30959ab085c9c57599a87a7f67fc9d069 2e3e032ec039fe18af5c0c8c68cb0c1f5d31c5e1
  • pi --version — 0.87.1
  • bash tests/fm-calm-pi-extension.test.sh — exit 0
  • bash tests/fm-pi-branch-extension.test.sh — exit 0
  • git status --short — clean
✅ **Document** - passed

✅ No issues found.

✅ **Lint** - passed

✅ No issues found.

✅ **Push** - passed

✅ No issues found.

…xtures

Pi 1.0.2 renamed the createToolHtmlRenderer dependency getToolDefinition to getToolRenderers, so the fixtures resolved no tools and calm export rendering looked empty. Pass both keys so the tests run on Pi before and after 1.0.2. Product code does not use this dependency.
@yehezkieled
yehezkieled merged commit 75ba411 into main Oct 4, 2026
19 checks passed
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