Dialectica AI is a public portfolio demonstration, not a hardened multi-tenant production service.
- Never commit
.envor.streamlit/secrets.toml. - Use a dedicated OpenAI project key for the Streamlit deployment.
- Store
OPENAI_API_KEYonly in local environment configuration or Streamlit Secrets. - Store the same long random
MCP_AUTH_TOKENin Streamlit Secrets and Render environment variables. - Rotate both credentials immediately if either appears in source, logs, screenshots, or issue reports.
- Use restricted API-key permissions where available.
/healthzis intentionally unauthenticated and exposes only non-sensitive service statistics./mcprequires bearer authentication in cloud mode.- The public MCP contract excludes uploads, arbitrary indexing, URL fetching, and index-reset tools.
- The prepared corpus uses local deterministic embeddings, so the MCP service does not need an OpenAI key.
- The application does not send complete papers to OpenAI; model calls receive retrieved curator-written notes and metadata.
- The app enforces soft browser-session analysis limits.
- These limits can be bypassed by a determined visitor and must not be treated as a hard spending cap.
- Use a dedicated OpenAI project, restricted credentials, usage alerts, conservative limits, and regular usage review.
- Avoid publishing the application widely until usage and failure behaviour have been tested.
- Indexed text is curator-written summary material, not direct paper quotations.
- Every note retains attribution and a link to the source paper.
- The demo should not be presented as a systematic literature review or as an authoritative scientific consensus engine.
Do not place API keys, bearer tokens, private documents, or full deployment logs in a public issue. Revoke exposed credentials before sharing a sanitized report.