CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

rqe-iterator-suspend-resume

Implementation & review guide for suspend/resume (revalidation) on query-engine iterators in src/redisearch_rs/rqe_iterators/. Use this when adding the Box<Self> suspend/resume mechanism to an RQE iterator that currently only implements the legacy revalidate, when modifying an existing suspend/resume implementation, or when reviewing a PR that touches this machinery (boxed.rs, ref_mode markers, child-slot helpers, layout-invariant proofs).

Quality

94%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

85%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exceptionally dense, concrete implementation and review guide: exact API names, soundness rules with their reasons, compile-time enforcement, and a thorough checklist make it highly actionable and well-sequenced. Its weaknesses are structural — a 480-line monolith with no progressive disclosure into reference files — and prose that could be tightened in the rationale-heavy sections.

Suggestions

Split the per-composite worked examples (the union_flat/union_heap/intersection and optional/maybe_empty detail in 'Key files') and the 'Aggregates' deep-dive into reference files (e.g. references/composites.md, references/aggregates.md), keeping SKILL.md as the mental model + rules + checklist with one-level-deep pointers.

Tighten the narrative rationale in 'Transition every child' and 'Exhaustion is terminal' into terse rule statements with a one-line 'why', and de-duplicate the exhaustion rule that appears in both sections.

Add an explicit ordered 'adding suspend/resume to an iterator: order of operations' list at the top (choose leaf vs generic path → transition children → cast wrapper → invariant proof → align with revalidate → tests), so the reader does not have to assemble the sequence from the topical sections.

DimensionReasoningScore

Conciseness

The body is efficient and assumes Rust competence — no basic explanations of Box, transmutes, or lifetimes; every section carries codebase-specific invariants Claude could not know ("the FFI wrapper caches a raw pointer into the iterator (header.current)"). It falls short of 5 because some rationale is narrated at length ("skipping the inactive ones is wrong twice over", the long parenthetical chains in "Key files") and the exhaustion rule is restated across "Transition every child" and "Exhaustion is terminal", so a tightening pass would save tokens without losing clarity.

4 / 5

Actionability

Guidance is fully concrete: exact helper names ("suspend_child_slot_in_place", "resume_child_slot_in_place", "assert_layout_compatible"), exact slot enums ("enum OptionalChild<I> { Gone, Present(I) }"), a near copy-paste wrapper invariant-proof template, an ordered resume step list ("(1) cheap identity/abort check… (2) re-acquire index refs… (3) reinterpret the box"), and named test utilities ("rqe_iterators_test_utils::revalidate_via_resume", "steerable mock", "InfiniteSuspended<'query>"). The snippets' "… other fields …" placeholders are justified flexibility since field lists vary per struct, not pseudocode gaps.

5 / 5

Workflow Clarity

Multi-step processes are explicitly sequenced with ordering constraints ("Rebuild them **before** rebuilding the aggregate", "**Call it last** — after the child walk, after any side-table rebuild") and per-leaf resume steps (1)–(3). Validation checkpoints are pervasive: compile-time enforcement ("fails to compile at monomorphization instead of causing UB"), #[must_use] outcomes, debug_assert! gating, a 15-item review checklist, and a test harness that "asserts across the cycle that an at-EOF iterator stays at EOF". This matches the 5 anchor's checklist + feedback-loop profile.

5 / 5

Progressive Disclosure

The skill is a single ~480-line file with no bundle files; headers are clear and the "Key files" section signals its source-file references well, but content that clearly belongs in separate reference files — the per-composite worked examples (union_flat/union_heap/intersection paragraphs), the aggregates deep-dive, the panic-safety section — is all inlined in SKILL.md. It is not a 4 because the body is a monolithic guide rather than an overview pointing one level deep; not a 2 because in-file structure and navigation are genuinely good.

3 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: third-person voice, concrete actions, an explicit three-clause 'Use when' trigger set, and a tightly scoped niche with no fluff or over-claiming. It scores at the top of every dimension.

DimensionReasoningScore

Specificity

Multiple concrete actions are named — "Implementation & review guide for suspend/resume (revalidation) on query-engine iterators", "adding the Box<Self> suspend/resume mechanism to an RQE iterator that currently only implements the legacy revalidate", "modifying an existing suspend/resume implementation", "reviewing a PR that touches this machinery" — with comprehensive coverage of the guide's scope (add, modify, review). It exceeds the 4 anchor because there are no minor gaps: every use mode is explicitly listed.

5 / 5

Completeness

Both halves are explicit: what ("Implementation & review guide for suspend/resume (revalidation) on query-engine iterators in src/redisearch_rs/rqe_iterators/") and when ("Use this when adding the Box<Self> suspend/resume mechanism to an RQE iterator that currently only implements the legacy revalidate, when modifying an existing suspend/resume implementation, or when reviewing a PR"). Concrete trigger phrases with three distinct 'when' clauses match the 5 anchor exactly.

5 / 5

Trigger Term Quality

Natural terms a repo user would say are all present — "suspend/resume", its synonym "revalidation", "RQE iterator", "legacy revalidate", "boxed.rs", "reviewing a PR", plus the concrete path "src/redisearch_rs/rqe_iterators/". Synonym coverage (suspend/resume = revalidation) and file-level anchors match the 5 anchor; no natural variation for this domain is missing.

5 / 5

Distinctiveness Conflict Risk

Clear niche with distinct triggers — "Box<Self> suspend/resume mechanism", "RQE iterator", "legacy revalidate", "boxed.rs, ref_mode markers, child-slot helpers, layout-invariant proofs" would not fire for any other skill. Minimal conflict risk, matching the 5 anchor.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

RediSearch/RediSearch

Path

src/redisearch_rs/rqe_iterators/.skills/rqe-iterator-suspend-resume/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.