Repository navigation
fix: preserve pi-blackhole semantic status colours - #360
Merged
Merged
Conversation
laurentftech
marked this pull request as ready for review
October 23, 2026 13:54
SafeDep Report SummaryNo dependency changes detected. Nothing to scan. This report is generated by SafeDep GitHub App |
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.



pi-blackhole styles its status gauges with ctx.ui.theme.fg(success/warning/error), but the embedded UI bridge returned identity stylers. Colour was lost before the existing ANSI header renderer received the text.
Supply a standalone SDK theme and decode indexed ANSI foreground colours for headless output. Prefer the built-in dark theme when its assets are available; fall back to the SDK-generated system theme in standalone bundles, where relocated theme JSON paths are unavailable. This preserves colours and prevents context binding from breaking packaged-server startup. Add a real isolated-bundle regression and browser screenshots; keep plain hover titles.
Validation on head 5d8852e: all CI jobs passed, including Linux and Windows full checks, browser and macOS/Linux confinement. Linux server: 4,418 passed, zero failed (9 skipped); targeted bridge/packaging regressions passed on both platforms. The browser suite exercises semantic warning/error colours through overflow, resize and reload; 170 tests passed. Coverage thresholds, builds, artifact checks and the three-scenario OpenSpec coverage check passed. CI: https://github.com/laurentftech/pi-outpost/actions/runs/39958090015 .
The earlier five packaged-server failures were fixed; a later unrelated init --global timeout did not reproduce in successful full runs on Linux and Windows. Actual installed pi-blackhole has not been exercised; the regression reproduces its semantic-theme API usage. Strict OpenSpec CLI validation remains unavailable locally. No merge performed.
Documentation impact: README documents semantic styling, indexed colours and the asset-free bundled fallback. Bridge/runtime comments and openspec/changes/fix-semantic-extension-status-colours describe the corrected contract and test evidence. OpenLore unavailable; targeted inspection used the AGENTS.md fallback.