Skip to content

Security: kaithoughtarchitect/titration

Security

SECURITY.md

Security Policy

Reporting a vulnerability

Please report security issues privately, not as a public GitHub issue.

Use GitHub Security Advisories: go to this repository's Security tab and click "Report a vulnerability." That opens a private draft advisory visible only to you and the maintainer, so we can discuss and fix the issue before any public disclosure.

Please include:

  • what you found and why it's a security issue (not just a bug),
  • steps to reproduce it,
  • the version/commit you tested against,
  • any suggested fix, if you have one.

Titration is maintained by one person, so please allow up to a week for an initial response.

Scope notes

Titration runs entirely on your own machine, talking to your own database and whichever judge providers you configure. A few things worth knowing when thinking about its attack surface:

  • The local judge picker binds to 127.0.0.1 only — it is never reachable from another machine on your network.
  • API keys and connection strings live in your own .env file (gitignored; never committed) and are read from the environment. Titration does not transmit them anywhere except to the provider each key is for.
  • Error text returned through an MCP tool call is passed through a redaction pass (lib/tool-error-redaction-core.ts) that strips secrets and local file paths before the text reaches a caller or a transcript.
  • Titration never clones or executes your project's code. It receives declared outputs over MCP and grades those; it does not pull or run your repository.

If you're unsure whether something you found is in scope, report it anyway — we would rather triage a false positive than miss a real issue.

There aren't any published security advisories