Automattic / Automattic/wp-codebox
Persist typed browser probe results for downstream recipe steps
- 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