File size: 1,270 Bytes
9c1c0ef
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# Threat model

## Assets

Uploaded datasets, API keys, database credentials, generated artifacts, fitted models, run
metadata, and operational logs.

## Trust boundaries

Client β†’ authenticated API β†’ bounded job queue β†’ isolated worker β†’ run database/object storage β†’
optional Gemini API. The local threaded queue is a development adapter; production deployments
should use a durable queue and isolated workers.

## Principal threats and controls

| Threat | Control |
|---|---|
| Malicious or oversized upload | extension/size/shape limits; content never executed |
| Category explosion | sparse encoding, per-feature cap, estimated-width guard |
| Prompt injection in data | metadata-first prompts; controlled tools; output evaluation |
| Secret/PII disclosure | masking, redaction, secret scanning, bounded AI payload |
| Path traversal | resolved artifact-root containment check |
| Resource exhaustion | rate limits, worker bounds, timeouts, quotas in production |
| Cross-tenant access | production authentication, tenant-scoped storage and authorization |
| Dependency compromise | Dependabot, lock file, pip-audit, Trivy, pinned Actions |

Residual risk and deployment responsibilities are documented in `docs/SECURITY.md`.