Skip to content

docs(plans): examine Hypothes.is integration with chrest capture pipeline#29

Open
friedenberg wants to merge 1 commit into
masterfrom
claude/integrate-hypothesis-chrest-Rzf1G
Open

docs(plans): examine Hypothes.is integration with chrest capture pipeline#29
friedenberg wants to merge 1 commit into
masterfrom
claude/integrate-hypothesis-chrest-Rzf1G

Conversation

@friedenberg

Copy link
Copy Markdown
Contributor

Summary

Adds a feasibility examination of integrating the Hypothes.is web-annotation protocol with the existing nebulous → chrest → madder capture pipeline. Documentation only — no code changes.

The examination covers four architectural options:

  • Option A — orchestrator-side sidecar fetch: nebulous makes the HTTP call to api.hypothes.is, writes annotations through madder as an extra artifact alongside chrest captures. Smallest blast radius; bifurcates the pipeline.
  • Option B — new chrest format hypothesis-annotations: cleanest fit with RFC 0001 (spec/payload/envelope tri-fold), but couples HTTP-API-client work into a browser capturer and forces cross-repo + RFC churn.
  • Option C — sibling RFC-0001 capturer for non-browser sources: best long-term shape if Hypothes.is is the first of a family of URL-keyed metadata sources (Wayback CDX, archive.today, etc.); needs orchestrator-side multi-capturer dispatch.
  • Option D — Hypothes.is browser extension during capture: useful complement to A or C (annotations baked into screenshots), not an integration on its own.

Recommendation: A for one-off, C if a family of sources is planned. B is architecturally tempting and likely to age badly.

Cross-cutting concerns (apply to any option): payload determinism vs. unstable Hypothes.is server-side timestamps (or markl-ID dedupe breaks), bearer-token secrets plumbing (must mirror NEWSBLUR_TOKEN not policy TOML), rate limiting, target-URL canonicalization mismatches with Hypothes.is's URI normalization, and "empty annotation set is success" handling so the orchestrator's circuit breaker doesn't trip on the common case.

Open questions enumerated for follow-up before any design phase begins.

Test plan

  • Reviewer reads docs/plans/2026-04-30-hypothesis-chrest-integration-examination.md and confirms the architectural options are accurate against the current pipeline (internal/alfa/orchestrator/, internal/alfa/capturer/, docs/rfcs/0001-web-capture-archive-protocol.md).
  • Reviewer answers (or defers) the four open questions in the "Open questions" section so a subsequent design doc can pick an option.

https://claude.ai/code/session_0127otAtm656uw7dyuKnVqzD


Generated by Claude Code

…line

Feasibility analysis only — no code changes. Walks through four
architectural options for integrating the Hypothes.is annotation
protocol (sidecar fetch, new chrest format, sibling RFC-0001 capturer,
browser-extension overlay), the cross-cutting concerns (payload
determinism, secrets, rate limits, target-URL canonicalization), and
the existing extension points the integration would land on.
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.

2 participants