Skip to content

feat(ai): add optional deterministic-summary rewrite layer #151

Description

@JSONbored

Background

Optional AI can make Gittensory easier to read, but deterministic signals must remain authoritative. AI should rewrite facts, not decide them.

Goal

Use optional AI only to rewrite deterministic signal bundles into clearer prose.

Current Behavior

Gittensory primarily uses deterministic templates and structured outputs.

Desired Behavior

When enabled, AI produces clearer summaries from compact deterministic bundles and safely falls back when unavailable or unsafe.

Implementation Requirements

  • Keep AI disabled by default.
  • Do not send source contents.
  • Use compact deterministic signal bundles only.
  • Quota-limit AI usage.
  • Run all AI output through the public/private sanitizer.

Public/Private Output Boundaries

Public GitHub output must never include wallets, hotkeys, payout/reward estimates, raw trust scores, public score estimates, private reviewability, private scoreability context, or farming language. Private API/MCP/control-panel surfaces may show authenticated scoreability, blockers, projections, and evidence, but must not claim guaranteed payout outcomes.

Acceptance Criteria

  • Disabled by default.
  • No source contents.
  • Quota-limited.
  • Falls back to deterministic templates.
  • Sanitizer runs after AI output.
  • Tests cover unsafe output fallback.

Testing Requirements

  • npm run test:ci must pass.
  • Global coverage must remain at or above 97% for lines, statements, functions, and branches.
  • Aim for 98%+ branch coverage locally.
  • Add tests for every new branch, fallback path, sanitizer rule, and regression.
  • Add invariant/property-style tests when behavior depends on sorting, gating, scoring, source-upload safety, public/private boundaries, or telemetry privacy.
  • MCP/local tooling must prove source contents are not uploaded when local metadata is involved.
  • Public GitHub output must be tested against forbidden language: wallet, hotkey, raw trust score, payout, reward estimate, farming, private reviewability, and public score estimate.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions