# Security Policy ## Supported versions The local release candidate supports the `1.0.x` line. Older pre-1.0 versions receive no security backports unless explicitly announced. ## Reporting a vulnerability Use GitHub private vulnerability reporting for the canonical repository when available. If it is unavailable, open a public issue containing only a request for a private contact channel. Do not include exploit details, credentials, real student data, output directories, or private logs in a public issue. Please include the affected version, operating system, Node and DSH versions, a minimal synthetic-data reproduction, impact, and any known workaround. Maintainers should acknowledge the report before publishing technical details. ## Security boundary - Persistent files stay under the configured `outputDir`; managed subdirectories reject symbolic links and Windows directory junctions. - JSON records use recoverable replacement sidecars. Multi-file package creation uses staged content, SHA-256 checks, and a transaction journal. - Corrupt schemas, checksum changes, invalid IDs, traversal attempts, and unsafe managed paths fail closed. - The plugin does not encrypt local files or manage operating-system permissions. - DSH and the configured model provider may receive task content. Users must minimize or anonymize student information before model calls. - The plugin never needs passwords, API keys, cookies, or access tokens in teaching records. Operational hardening and recovery procedures are documented in `docs/OPERATIONS.md`; privacy, retention, export, and deletion are documented in `docs/DATA-LIFECYCLE.md`.