TryGhost / TryGhost/algolia

Release richer searchable rendered meaning

Open
#223 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

ready-for-agent
Dominant language
TypeScript
Stars
22
Forks
19
Avg merge
18h 31m
Merged PRs (30d)
50

Description

Parent

What to build

Deliver the approved richer extraction semantics as one coordinated extractor/fragmenter dependency cut. Add evidence-backed reader meaning and the discriminated fragment source to the public extractor, consume it through the deep fragmenter seam, and keep the deprecated wrappers on the exact compatibility stream.

Acceptance criteria

  • The extractor emits the approved smallest qualifying units for table headers, captions, citations, blockquote fallback, meaningful image alternatives, and fixture-backed authored Ghost card roles.
  • Controls, states, provider chrome, URLs, decorative content, unknown-wrapper text, and hidden or explicitly non-semantic subtrees are excluded without changing compatibility fragments.
  • Rich candidates use the approved local precedence and normalization rules, never suppress compatibility fragments, and never deduplicate across separate semantic containers.
  • The public synchronous operation returns emitted immutable fragments only; sourceTag is replaced by the approved discriminated source, and every fragment carries searchable fragment HTML.
  • Candidate identity, comparison keys, suppression reasons, parser nodes, card adapters, and caller-configurable policy remain private.
  • The fragmenter consumes every richer fragment through the deep API, preserves preformatted behavior from the source description, and does not reinterpret rich semantics.
  • Deprecated wrappers filter to the exact compatibility stream and retain exact final records.
  • Offline fixture/public-seam tests cover richer units, ordering, headings/anchors, image-alt escaping, fallback, local duplicates, exclusions, card boundaries, and unchanged compatibility records.
  • A coordinated scoped minor release publishes extractor and fragmenter topologically; Nx-created application patches are identified as dependency-only and all artifacts are clean-install verified.
  • Release notes call the extractor source change breaking for direct 0.1.x consumers, describe the new indexed meaning through the fragmenter, and require coordinated rollback of the selected package/application set.

Blocked by

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the public extractor, its deep fragmenter seam, and the deprecated wrappers; inspect the fixture and public-seam tests before changing behavior. Done means richer fragments and searchable HTML follow the stated exclusions and ordering, compatibility records remain exact, and the coordinated extractor/fragmenter release passes clean-install verification.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
backend-api-design, release, search
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.