Skip to content

unwired: CardigannClient implemented but never constructed — cardigann_definitions_dir config field is never read #472

Description

@forkwright

Finding

CardigannClient in crates/zetesis/src/lib.rs implements the Cardigann indexer protocol for additional tracker definitions. It is never constructed. cardigann_definitions_dir in SearchSubsystemConfig is parsed from config but rg 'cardigann_definitions_dir' in zetesis or archon crates = only definition + default value, zero reads in the indexer dispatch.

Evidence

crates/zetesis/src/lib.rs:21: rg 'CardigannClient' = only definition. SearchSubsystemConfig.cardigann_definitions_dir: parsed from config, zero read sites in indexer dispatch. No code path constructs a CardigannClient or passes it a definitions directory.

Why this matters

Cardigann support enables user-defined tracker definitions — the primary extensibility mechanism for private trackers not built into the indexer. Operators who set cardigann_definitions_dir in config receive no Cardigann results. The extensibility surface is completely absent from runtime despite being configured.

Desired correction

In the indexer dispatch initialization, read config.zetesis.cardigann_definitions_dir, construct a CardigannClient with the configured path, and include it in the indexer dispatch alongside the built-in clients. Add an integration test that verifies a Cardigann definition file produces valid search results.

Done when: cardigann_definitions_dir has a production read site, CardigannClient is constructed and included in the indexer dispatch, and Cardigann definitions produce search results.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions