Automattic / Automattic/wp-codebox

Persist typed browser probe results for downstream recipe steps

Open
#2,193 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
16
Forks
4
Avg merge
59m
Merged PRs (30d)
131

Description

## Problem
Recipe browser probes can evaluate runtime page state, but cannot write the typed result to a caller-selected artifact path that a later recipe step can consume. This blocks pre-compilation runtime presentation evidence workflows.

## Direction
Add a generic output-artifact contract to browser probe/page-evaluation commands. Persist the typed result atomically within the declared artifact root, register an artifact ref, and make it available to subsequent workflow steps.

## Acceptance
- Caller can declare a safe relative output artifact path.
- Typed browser result is atomically persisted and registered.
- A later recipe step can read the file in the same run.
- Path traversal and writes outside the artifact root are rejected.
- Failure evidence distinguishes evaluation, serialization, and persistence errors.
- Existing browser probe behavior is unchanged when omitted.
- Contract and recipe integration tests cover success and rejection.

## Dependency
Automattic/static-site-importer#796, producer commit `f246198c`; Automattic/blocks-engine#757.

## AI assistance
OpenAI gpt-5.6-sol through OpenCode analyzed the cross-recipe gap and drafted this issue. Chris Huber remains responsible for scope and implementation decisions.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the browser probe/page-evaluation commands and the recipe artifact registration flow. Trace how a typed result moves between recipe steps, then add contract and recipe integration tests covering successful reads and rejected paths; done means omitted output preserves existing behavior and persistence failures are distinguished.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
backend, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.