Skip to content

feat(fetcher): add optional rakers rendering#147

Merged
chaliy merged 1 commit into
mainfrom
codex/spec-render-rakers
Jul 4, 2026
Merged

feat(fetcher): add optional rakers rendering#147
chaliy merged 1 commit into
mainfrom
codex/spec-render-rakers

Conversation

@chaliy

@chaliy chaliy commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

What

Add optional browser-rendered fetch via the render-rakers feature.

Why

Some JS apps, SPAs, and client-rendered docs need a lightweight rendering pass before HTML-to-markdown/text conversion. This keeps the default fetch path unchanged while giving hosts and agents an explicit opt-in.

How

  • Add optional rakers dependency behind render-rakers.
  • Add per-request render: "rakers" / FetchRequest::render_rakers().
  • Add feature-gated ToolBuilder::enable_render_rakers(true) and CLI --render-rakers.
  • Run rakers after the normal FetchKit page fetch and before conversion.
  • Deny rakers-initiated subresource network requests so they cannot bypass FetchKit egress policy.
  • Update README, specs, threat model, maintenance notes, and changelog.

Risk

  • Medium
  • Optional feature adds dependencies and a lightweight JS execution path, but it is disabled by default and requires both host/tool enablement plus request opt-in.

Checklist

  • Unit tests are passed
  • Smoke tests are passed
  • Documentation is updated
  • Specs are up to date and not in conflict
  • Security review performed against SSRF/network/resource-exhaustion risks

@chaliy chaliy merged commit a95a3a6 into main Jul 4, 2026
11 checks passed
@chaliy chaliy deleted the codex/spec-render-rakers branch July 4, 2026 23:41
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.

1 participant