Skip to content

[Rust port] relayburn-ledger: list_content_session_ids + Config / loadConfig surface #279

@willwashburn

Description

@willwashburn

Parent: #243 / #259

Context

relayburn-ingest (#245) needs two read APIs from relayburn-ledger that
exist in the TS @relayburn/ledger but not yet on the Rust side after the
SQLite redesign:

  1. Ledger::list_content_session_ids() -> Result<HashSet<String>>:
    distinct session_id values present in content.sqlite. The TS
    adapter exposes this as listContentSessionIds(). Powers the skip
    filter in reingest_missing_content ([Rust port] relayburn-ingest: gap-warning state machine + reingest_missing_content #278).
  2. loadConfig() -> Result<BurnConfig>: loads the user-level config
    that includes content.store: 'off' | 'summary' | 'full'. Powers
    the parser-options decision in every per-harness ingest helper, plus
    the gap-warning gating in [Rust port] relayburn-ingest: gap-warning state machine + reingest_missing_content #278.

Scope

  • Add Ledger::list_content_session_ids (or a query_content_session_ids
    free function) that runs SELECT DISTINCT session_id FROM content and
    returns the set.
  • Decide the home for the Config type and load_config. Either a new
    relayburn-config crate (TS @relayburn/ledger co-locates it; Rust
    could too) or extend relayburn-ledger. Schema mirrors
    packages/ledger/src/config.ts.

Acceptance

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions