forked from claw/flaskpaste
- Update test count: 301 → 337 - Fix CLI commands: pki revoke doesn't exist, use pki download - Add compression URL marker requirement to TODO ideas
2.2 KiB
2.2 KiB
TODO
Unstructured intake buffer for ideas, issues, and observations. Items here are raw and unrefined. Actionable items should be promoted to TASKLIST.md.
Ideas
- Paste compression for large text content
- Must mark compression in URL fragment (e.g.,
#z:<key>or#<key>:z) - Receiver needs to know content is compressed before decryption
- Must mark compression in URL fragment (e.g.,
- ETag support for conditional requests
- Neovim/Vim plugin for editor integration
- Webhook notifications for paste events
- Certificate renewal reminder in CLI
- Admin endpoint for CA key rotation
- Clipboard integration (pbcopy/xclip)
Observations
- Shell completions already implemented (
fpaste completion --shell bash/zsh/fish) - Mypy type errors fixed: now enforced in CI (was informational)
- CI enhanced: security-tests job, SBOM generation (CycloneDX), memory leak checks
- Comprehensive pentest plan completed (PENTEST_PLAN.md) - all remediations implemented
- PKI uses AES-256-GCM for CA private key encryption (PBKDF2 key derivation)
- SHA1 fingerprints are X.509 standard, not security-relevant (usedforsecurity=False)
- Revoked certificates are soft-deleted (status tracked, not removed)
- CI pipeline: lint runs parallel with security, tests wait for lint
- Ruff replaces flake8/isort/pyupgrade with single fast tool
- Bandit configured for medium+ severity only (-ll flag)
- PKI audit events now logged: CERT_ISSUED, CERT_REVOKED, AUTH_FAILURE
- Request duration metrics recorded via Prometheus histogram
- Memory leak tests use tracemalloc to detect leaks (CI job)
- Rate limit headers (X-RateLimit-*) on both 201 and 429 responses
- systemd service unit with security hardening in examples/
Questions
- Certificate renewal: reissue with same CN or require new request?
- Should revoked certs be purged after grace period?
Resolved
- Expired paste cleanup runs in-process via before_request hook (no cron needed)
Debt
- Could add more deployment examples (Kubernetes, Ansible role)
External Dependencies
- Consider adding
python-magicfor better MIME detection (currently magic bytes only) - cryptography package required for PKI features (optional otherwise)
Review weekly. Promote actionable items to TASKLIST.md. Archive or delete stale items.