Commit 3600f72
committed
fix(apps): harden public app endpoints against disclosure, DoS, view tampering
- Whitelist public listing + detail responses via toPublicAppListItem/toPublicAppDetail (drops originalPrompt/finalPrompt/sessionToken/userId/deploymentId/parentAppId; private-repo GitHub URLs owner-only)
- Keep prompt + code visible on public apps (intended feature); owner still receives userId/deploymentId
- Bound page/search + query timeout + dedicated publicApps rate limit
- Deduplicate views via viewerHash (unique index + upsert + COUNT DISTINCT) with backfill migration
- Add regression tests for DTO deny-list and request-shape validation1 parent 918e974 commit 3600f72
16 files changed
Lines changed: 3319 additions & 45 deletions
File tree
- migrations
- meta
- worker
- api/controllers
- appView
- apps
- database
- services
- services/rate-limit
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
0 commit comments