Skip to content

Implement sourceos-indexd status and explain stubs #162

@mdheller

Description

@mdheller

Intent

Implement the first SourceOS local indexing control surface described in PR #161 / docs/architecture/sourceos-local-index-diagnostics-evidence-fabric.md.

This is not a full search engine. This is the minimal operator and agent-facing status/explain spine required before deeper indexing work lands.

Scope

Add an initial sourceos index command group or equivalent helper surface with:

  • sourceos index status --json
  • sourceos index explain --file <path>
  • placeholder queue / generation / policy / extractor / receipt fields
  • stable warning semantics consumable by existing sourceos status and doctor.sh paths without breaking current JSON shape

Required behavior

sourceos index status --json should eventually report:

  • queue depth;
  • index generation;
  • failed extractors;
  • paused lanes;
  • budget state;
  • unknown actor defects;
  • policy-denied counts.

sourceos index explain --file <path> should eventually report:

  • last observed event;
  • path / volume policy;
  • extractor identity;
  • receipt status;
  • index generation membership;
  • whether semantic indexing or cloud exposure is enabled.

Acceptance criteria

  • A fresh checkout exposes the command or documented stub.
  • The command returns valid JSON for status and explain paths.
  • Existing shell smoke/doctor/status checks continue to pass.
  • The implementation is local-only and performs no network analytics.
  • The issue remains bounded; full Tantivy/Xapian/Qdrant/Oxigraph indexing is future work.

Notes

This issue is the first implementation slice for the local index, diagnostics, and evidence fabric. It should not collapse trust verification, cloud sync, analytics, and indexing into one daemon.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions