Optional AI summaries
A short natural-language summary over the deterministic response. Off by default. Never the source of truth.
The rule
Gittensory is deterministic. When AI summaries are enabled, they sit on top of the structured response — they never replace it, never add facts that aren't in the response, and never change ranked actions, blockers, or scoreability numbers.
Where they appear
- In the
/app/playgroundtool runs, behind an opt-in "Include AI summary" toggle, above the JSON. - As an optional AI-clarified rewrite of the public PR intelligence comment, gated server-side by
AI_PUBLIC_COMMENTS_ENABLEDand always falling back to the deterministic comment body on any error, quota limit, or unsafe output. - Never in maintainer packets without explicit maintainer opt-in.
What is sent to the model
A compacted signal bundle — the run's objective, actor login, surface, status, and data quality, plus up to five ranked actions (kind, recommendation, why, blockers) and up to eight freshness warnings. For a public rewrite, scoreability/risk fields are stripped before the bundle is built, not filtered out of the model's response after the fact.
No source code, no PAT, no GitHub identity beyond the acting login, and no per-user history beyond the current run are sent.
Model choice
There is no per-user or per-session model picker. The self-hosted or hosted operator configures one fixed Cloudflare Workers AI model (WORKERS_AI_SUMMARY_MODEL, default a small Llama instruct model) for the whole instance. Summaries are off by default (AI_SUMMARIES_ENABLED); public-comment rewriting is a separate, also-off-by-default switch (AI_PUBLIC_COMMENTS_ENABLED).