Skip to content

Make market results auditable and preserve missing-data semantics #53

Description

@bearmug

Problem

Screening and TA responses are point-in-time values without retrieval provenance, cache state, or explicit partial-result diagnostics. TA currently maps unavailable scores to 0/neutral, and symbol lookup can omit requested symbols without identifying them.

Scope

  • Add additive result metadata: retrieval timestamp, source endpoint, cache hit, requested/returned counts, and missing symbols.
  • Distinguish unavailable TA data from a genuine neutral signal.
  • Validate TA weights and report excluded/unavailable symbols in ranking output.
  • Preserve existing top-level result collections for compatibility.
  • Add deterministic tests for cache hits, partial symbol results, missing TA values, and invalid weights.

Acceptance criteria

  • A caller can tell whether data is fresh, cached, incomplete, or unavailable without reading logs.
  • Missing TA values never silently influence a ranking as neutral unless explicitly configured.
  • Requested symbols missing upstream are listed in the response.
  • Metadata is additive and documented.

Non-goals

No persistence database, scheduler, alert delivery, brokerage integration, or general historical-data platform.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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