Sync Boatstack from Intelligence Flow Labs @ c5f3e330d616 - #88
Merged
operator-stack-publisher[bot] merged 1 commit intoJul 24, 2026
Merged
Conversation
operator-stack-publisher
Bot
deleted the
sync/intelligence-flow-c5f3e330d616
branch
July 24, 2026 01:19
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.
What this sync releases
Boatstack can attach visual evidence to a pull request on its own
Until now, captured screenshots reached a pull request only through a signed-in host
browser or a manual drag-drop — Boatstack recorded the evidence locally but left the
last step to a human. GitHub exposes no public API that mints its user-attachments
CDN URLs, so there was a real browserless gap.
publish-prnow closes it for public repositories. When it opens or updates a PR,Boatstack commits the exact captured PNG bytes to a dedicated, Boatstack-owned
evidence branch on
origin(built with Git plumbing against a temporary index, so itnever disturbs the working tree), then posts or updates one Boatstack-owned comment
that renders each scenario from an immutable
raw.githubusercontent.comURL pinned tothe evidence commit. The comment carries the same trust fingerprints as the manifest
— source commit, product diff, and manifest fingerprint — and repeats the standing
warning that public-branch screenshots are publicly accessible.
The publisher is idempotent: a recorded comment is reused, and a lost comment URL is
recovered by a hidden marker so an update never orphans a duplicate. It engages only
when it can actually render — a GitHub origin,
ghauthenticated, and a publicrepository. For a private or non-GitHub repository the existing manual-attachment
fallback stays in force, so a suggest-policy PR is never blocked by a limitation
Boatstack cannot overcome. On any publication failure the flow fixes forward: the PR
is preserved and the manifest records the pending state instead of losing evidence.
Boatstack can render visual evidence inline on a private pull request
The programmatic visual-evidence publisher could render screenshots inline only for a
public repository, because it committed the bytes to a public branch and served them
from
raw.githubusercontent.com— a URL GitHub's image proxy cannot fetch for privatecontent. On a private repository the publisher declined and left the manual-attachment
fallback in force, so a private PR never got inline screenshots automatically.
A new opt-in mode closes that gap. Set
workflow.visual_evidence_publish.modetoexternal-hostand Boatstack uploads the exact captured PNG bytes to an anonymous host(
litterbox, which auto-expires uploads after a chosen1h/12h/24h/72hwindow,or permanent
catbox) and posts the returned URLs inline in the same single,idempotent Boatstack-owned comment — on a private repository too.
Because the bytes leave the repository to a third party, the mode is never selected
automatically: only that explicit config value turns it on, and the comment carries a
standing reminder naming the host and its expiry so reviewers know the images are
external and temporary. The default behavior is unchanged — a public repository still
gets durable inline evidence from a Boatstack-owned public branch, and any repository
without the opt-in keeps the manual-attachment fallback.
Projection provenance
Generated from
operatorstack/intelligence-flow@c5f3e330d6167247446e1915deaf1bc593cf2e0d.Review provenance, tests, and examples before merging.