2025-09-23 - 2026-09-23

Overview

105 Active Pull Requests
165 Active Issues
Excluding merges, 3 authors have pushed 77 commits to main and 203 commits to all branches. On main, 106 files have changed and there have been 10262 additions and 2957 deletions.

8 Releases published by 2 users

Published v0.5.1 v0.5.1 2026-09-18 18:50:51 +00:00

Published v0.5.0 v0.5.0 2026-09-18 01:49:44 +00:00

Published v0.4.0 2026-09-17 15:35:20 +00:00

Published v0.3.0 2026-09-10 02:33:25 +00:00

Published v0.2.2 2026-09-09 15:59:58 +00:00

Published v0.2.1 2026-09-09 14:31:52 +00:00

Published v0.2.0 2026-09-09 07:04:04 +00:00

Published v0.1.0 2026-09-08 23:44:07 +00:00

105 Pull requests merged by 2 users

Merged #302 Release v0.5.1: dev -> main 2026-09-18 18:50:51 +00:00

Merged #301 #296 fix attempt 3: shrink URL column, plain-text URL values 2026-09-18 16:23:38 +00:00

Merged #300 URL column: restore position 6 and widen (fix attempt 2) 2026-09-18 14:05:02 +00:00

Merged #297 #296: move URL column to position 2 (after Paste) in list tables 2026-09-18 03:56:28 +00:00

Merged #295 #294: switching to midnight theme forces dark mode 2026-09-18 03:14:21 +00:00

Merged #293 #292: highlight paste name uniformly on row hover in list tables 2026-09-18 02:58:13 +00:00

Merged #291 #280: remove PALETTE_TRUSTED_IP_HEADER, rate limits key on peer address only 2026-09-18 01:53:24 +00:00

Merged #288 Release v0.5.0: dev -> main 2026-09-18 01:49:24 +00:00

Merged #290 Sync main into dev (owner README edit #279) 2026-09-18 01:48:43 +00:00

Merged #285 Fix #282: jumpnav visible on mobile initial load 2026-09-18 01:35:16 +00:00

Merged #286 #281: /raw/{id} returns empty body for non-image attachment pastes (Fix attempt 1) 2026-09-18 01:33:45 +00:00

Merged #278 Release v0.5.0: README refresh 2026-09-18 01:33:27 +00:00

Merged #284 Fix #280: rate limiter keys buckets on peer address, not client-controlled X-Forwarded-For 2026-09-18 01:33:04 +00:00

Merged #277 Sync main into dev before v0.5.0 release 2026-09-18 01:32:55 +00:00

Merged #279 Update README.md 2026-09-18 01:21:37 +00:00

Merged #276 #274: align editor line numbers with wrapped text rows 2026-09-17 23:56:35 +00:00

Merged #275 #273: theme-aware scrollbars 2026-09-17 23:45:41 +00:00

Merged #271 #260 (fix attempt 2): static-width copy feedback via .swapbtn 2026-09-17 22:14:36 +00:00

Merged #268 #260: static button width during copy feedback (fix attempt 1) 2026-09-17 22:07:45 +00:00

Merged #265 #261: keep line number gutter visible during horizontal scroll 2026-09-17 22:01:38 +00:00

Merged #258 #255: widen history URL column 2026-09-17 21:54:47 +00:00

Merged #269 #267: jump to top and bottom buttons for long pastes and editor 2026-09-17 19:51:36 +00:00

Merged #266 #257: size line number gutter to widest number 2026-09-17 19:38:56 +00:00

Merged #263 Fix attempt 1: sync editor gutter with textarea scroll 2026-09-17 19:35:14 +00:00

Merged #262 #260: replace Success! feedback with a compact checkmark 2026-09-17 19:34:34 +00:00

Merged #264 #256: rename page URLs to match nav labels 2026-09-17 19:32:27 +00:00

Merged #254 #249: hide code block for all attachment pastes 2026-09-17 19:17:53 +00:00

Merged #253 Cap attachment filenames at 128 chars server-side 2026-09-17 19:16:33 +00:00

Merged #252 Update README.md 2026-09-17 19:07:11 +00:00

Merged #251 Release v0.4.0: dev -> main 2026-09-17 15:35:21 +00:00

Merged #247 Reserve mine/unlock/guess/f custom slugs 2026-09-17 15:32:17 +00:00

Merged #246 v0.4.0 release prep: README + screenshots (Ref #160) 2026-09-17 15:31:52 +00:00

Merged #245 #243 fix attempt 2: button capitalization + link button label persistence 2026-09-17 14:50:10 +00:00

Merged #244 #243: copy button should copy the link 2026-09-16 20:44:56 +00:00

Merged #236 #233: file attachment title takes the file name 2026-09-10 23:39:44 +00:00

Merged #242 #240: burn-after-read readable box padding/indent consistency 2026-09-10 23:38:10 +00:00

Merged #241 #240: burn-after-read submenu padding inconsistent with UI 2026-09-10 23:00:32 +00:00

Merged #239 #238: page 2 shows in pagination window when not adjacent 2026-09-10 22:42:25 +00:00

Merged #237 #235: rename Language column to Type; attachments show file extension 2026-09-10 22:14:57 +00:00

Merged #234 #232: remove duplicate filename under attachment pill, widen pill 2026-09-10 22:06:25 +00:00

Merged #230 #229: padding between image and pill body border 2026-09-10 19:55:58 +00:00

Merged #228 Fix #221 follow-up: summary pill size for attachment pastes 2026-09-10 19:33:51 +00:00

Merged #224 fix #221: scale image pastes, clean link pill, raw image view, accurate size 2026-09-10 19:21:23 +00:00

Merged #223 Fix details pill border clipped thin at corners 2026-09-10 19:18:27 +00:00

Merged #218 Fix #209 r2: sort arrows immediately right of label text 2026-09-10 18:17:39 +00:00

Merged #215 Fix #205: stop gutter drift from phantom newline rows 2026-09-10 18:15:03 +00:00

Merged #213 Fix #207 r2: dark mode toggle left aligned per owner feedback 2026-09-10 18:08:45 +00:00

Merged #212 Fix #209: sort arrows to the right of column labels 2026-09-10 18:02:46 +00:00

Merged #211 Fix #210: saved pastes ID column / delete button overlap 2026-09-10 18:00:42 +00:00

Merged #199 Fix settings dark mode toggle and center it (#197) 2026-09-10 17:16:38 +00:00

Merged #198 Fix #194 r2: line-number gutter alignment in both wrap modes 2026-09-10 17:11:08 +00:00

Merged #192 Fix #167 (r2): pin gutter width so wrapped-row renumbering stays aligned 2026-09-10 17:09:56 +00:00

Merged #196 Fix #187: add favicon (paint palette) 2026-09-10 17:03:32 +00:00

Merged #189 Fix #184: file upload replaces the main editing area on /new 2026-09-10 16:55:32 +00:00

Merged #186 fix #171: CSP-compliant image preview (data: URL instead of blob:) 2026-09-10 16:42:15 +00:00

Merged #182 Fix #169: persistent full-width divider under stats dropdown title 2026-09-10 16:41:11 +00:00

Merged #180 Revise notification pill (#168) 2026-09-10 16:38:33 +00:00

Merged #181 Revise notification pill (#168) 2026-09-10 16:38:08 +00:00

Merged #183 Fix #167 rev: gutter numbers realign with wrapped lines (missing .gutline CSS) 2026-09-10 16:37:57 +00:00

Merged #178 Clean up notification pill (#168) 2026-09-10 16:25:56 +00:00

Merged #179 Fix #167: gutter numbers realign with wrapped lines 2026-09-10 16:25:15 +00:00

Merged #172 editor head: wrap toggle state and pill highlight (#166) 2026-09-10 16:21:28 +00:00

Merged #177 Fix #170: remove stray bar at bottom of /new page 2026-09-10 16:18:42 +00:00

Merged #175 File upload preview in editor (#171) 2026-09-10 16:13:00 +00:00

Merged #174 #173: render friendly Paste ID not found UI instead of bare 404 2026-09-10 16:09:14 +00:00

Merged #165 Settings spacing between sections (#161) 2026-09-10 15:10:37 +00:00

Merged #158 new paste tab: rework number box submenus (#157) 2026-09-10 14:45:50 +00:00

Merged #164 Fix #163: /new Create button broken (stale iscan/createCan path) 2026-09-10 14:40:52 +00:00

Merged #162 Fix #142: long unbroken paste title caused double horizontal scrollbar at mobile width 2026-09-10 14:33:28 +00:00

Merged #155 Wrap: break long words, no horizontal scroll while wrap enabled 2026-09-10 13:51:28 +00:00

Merged #154 Fix #138: add Secure attribute to viewer cookie (vwr) 2026-09-10 13:43:21 +00:00

Merged #153 Remove ?token= deletion-token path (#143) 2026-09-10 13:38:15 +00:00

Merged #134 Settings: dark toggle above theme list; midnight card light/dark rows swapped 2026-09-10 13:23:29 +00:00

Merged #151 Fix invisible select chevron in all presets (#136) 2026-09-10 04:31:27 +00:00

Merged #150 Secrets via headers only: drop ?key= and ?password= query fallbacks (#137, #141) 2026-09-10 04:23:27 +00:00

Merged #140 History: pagination survives search/sort, pager pinned to page bottom 2026-09-10 04:14:20 +00:00

Merged #149 Split new-paste editor header into title pill and settings pill (#147) 2026-09-10 04:12:05 +00:00

Merged #145 Fix result box wrap: word boundaries, keep long-token breaking (#135) 2026-09-10 04:09:14 +00:00

Merged #148 Fix #146: untitled paste ID fallback renders as plain text like titled pastes 2026-09-10 04:07:04 +00:00

Merged #119 Admin lock page: replace explanatory paragraph with centered key input 2026-09-10 04:01:45 +00:00

Merged #131 Line wrap toggle for editor and paste viewer (#130) 2026-09-10 03:39:45 +00:00

Merged #128 Theme pairs with dark mode toggle, gear active state, PALETTE_DEFAULT_DARK 2026-09-10 03:25:36 +00:00

Merged #125 UI polish: custom URL placeholder, styled buttons/selects, admin link spacing 2026-09-10 02:49:36 +00:00

Merged #121 Fix #120: add matching light/dark variant for every theme 2026-09-10 02:36:47 +00:00

Merged #117 Fix #116: allow inline styles in CSP (style-src) 2026-09-10 02:20:53 +00:00

Merged #115 Fix #114: theme grid empty (t.colors undefined) 2026-09-10 02:01:38 +00:00

Merged #113 Fix admin lock-on-load, settings hint, theme swatches (#112) 2026-09-10 00:54:43 +00:00

Merged #109 Fix theme persistence on reload 2026-09-10 00:22:04 +00:00

Merged #111 Fix wiki docs accuracy (#110) 2026-09-10 00:20:17 +00:00

Merged #107 store: burn_after_reads>0 implies burn-after-read (#82) 2026-09-09 23:40:22 +00:00

Merged #91 Bound title and language at create time (#86) 2026-09-09 15:59:32 +00:00

Merged #89 ratelimit: rightmost untrusted-hop-safe client IP (fixes #85) 2026-09-09 15:59:29 +00:00

Merged #88 Fix #83: create API ignores boolean public field 2026-09-09 15:59:26 +00:00

Merged #90 Rate-limit all password verification attempts (#81) 2026-09-09 15:59:24 +00:00

Merged #87 fix #84: security headers were silently dropped (set pre-handler) 2026-09-09 15:59:21 +00:00

Merged #69 docs: attachments & storage backend design (#38, #31) 2026-09-09 14:27:50 +00:00

Merged #70 docs: cookie-based preferences and access keys design (#30) 2026-09-09 14:27:15 +00:00

Merged #72 Search: loading indicator and performance note (#32) 2026-09-09 14:26:26 +00:00

Merged #78 fix: input validation gaps (#68) 2026-09-09 14:26:20 +00:00

Merged #73 Admin key endpoint: per-IP rate limiting and lockout (#66) 2026-09-09 14:26:14 +00:00

Merged #74 Clamp expires_in at API boundary (#60) 2026-09-09 14:26:07 +00:00

Merged #75 docs: design for optional client-side E2E encryption (issue #39) 2026-09-09 14:26:02 +00:00

Merged #76 Security headers middleware: CSP, Referrer-Policy, nosniff (#59) 2026-09-09 14:26:01 +00:00

Merged #79 fix #63: require deletion token on DELETE /api/pastes/{id} 2026-09-09 14:25:40 +00:00

Merged #77 fix: atomic burn-after-read claim (#58) 2026-09-09 14:25:06 +00:00

163 Issues closed from 2 users

Closed #296 Move the URL column left in list tables (right after Paste) 2026-09-18 16:36:57 +00:00

Closed #298 Move URL column to position 2 on /public and /mine (follow-up to #255) 2026-09-18 13:32:01 +00:00

Closed #294 Switching to midnight theme forces dark mode 2026-09-18 03:19:10 +00:00

Closed #292 Some pastes in the public list highlight and others dont 2026-09-18 03:03:51 +00:00

Closed #280 HIGH: rate limiter bypassable via X-Forwarded-For 2026-09-18 01:56:03 +00:00

Closed #281 MEDIUM: /raw/{id} returns empty body for non-image attachment pastes 2026-09-18 01:37:51 +00:00

Closed #282 MEDIUM: jump-to-top/bottom nav hidden on mobile until a resize event 2026-09-18 01:35:16 +00:00

Closed #274 When creating a new paste the line number bar numbers dont allign properly anymore with the actual text line 2026-09-17 23:58:18 +00:00

Closed #273 Style scrollbars to match theme 2026-09-17 23:49:03 +00:00

Closed #260 Success! on button clicks 2026-09-17 22:23:20 +00:00

Closed #261 Line number bar should always be visible. 2026-09-17 22:01:38 +00:00

Closed #255 Move the URL column to the left 2026-09-17 22:00:25 +00:00

Closed #267 jump to top and jump to bottom buttons 2026-09-17 19:56:22 +00:00

Closed #257 Line Number bleed over 2026-09-17 19:45:52 +00:00

Closed #259 line scrolling on new paste 2026-09-17 19:37:52 +00:00

Closed #256 rename URLs to match the actual buttons 2026-09-17 19:34:25 +00:00

Closed #249 Attachment pastes render an empty code area in the paste view 2026-09-17 19:20:33 +00:00

Closed #248 Server-side cap on attachment filenames 2026-09-17 19:19:46 +00:00

Closed #250 Raw view lacks mobile viewport handling 2026-09-17 19:11:47 +00:00

Closed #160 Next major release should update also update the readme with new screenshots and other relevant info 2026-09-17 15:39:09 +00:00

Closed #168 this notification pill should be clenaed up 2026-09-17 15:35:22 +00:00

Closed #243 Copy button does not copy the link only copies the Paste ID. 2026-09-17 14:54:59 +00:00

Closed #233 File upload names 2026-09-10 23:43:27 +00:00

Closed #240 Padding on burn after read text box 2026-09-10 23:41:58 +00:00

Closed #238 Page numbers 2026-09-10 22:53:12 +00:00

Closed #235 File type instead of language 2026-09-10 22:19:08 +00:00

Closed #232 File View 2026-09-10 22:06:25 +00:00

Closed #229 Image view for pastes 2026-09-10 19:59:58 +00:00

Closed #221 Images should be scaled 2026-09-10 19:36:34 +00:00

Closed #222 Border on corners 2026-09-10 19:22:25 +00:00

Closed #209 Sorting arrows 2026-09-10 18:17:39 +00:00

Closed #205 Paste gutter numbers drift from wrapped lines (inter-block newline text nodes render as phantom rows) 2026-09-10 18:15:03 +00:00

Closed #207 Dark mode toggle in settings does not work; center its placement 2026-09-10 18:08:45 +00:00

Closed #210 Saved pastes overlapping 2026-09-10 18:00:42 +00:00

Closed #167 when lots of text is pasted in with line wrapping enabled the side numbers for lines does not readjust properly. 2026-09-10 17:27:00 +00:00

Closed #197 Dark mode toggle in settings 2026-09-10 17:16:38 +00:00

Closed #194 Line Number / Line Spacing 2026-09-10 17:11:08 +00:00

Closed #187 website tab icon 2026-09-10 17:03:32 +00:00

Closed #184 File upload 2026-09-10 16:55:32 +00:00

Closed #171 File upload 2026-09-10 16:42:15 +00:00

Closed #169 there is a line that appears when you hover over the gap in between the dropdown title and the body 2026-09-10 16:41:11 +00:00

Closed #144 [LOW] Rate limiter keyed solely by IP: users behind one egress IP share a single create bucket (verified, informational) 2026-09-10 16:39:34 +00:00

Closed #166 Wrap button menu 2026-09-10 16:21:28 +00:00

Closed #170 there is a random bar at the bottom of the new paste page that should not be here 2026-09-10 16:18:42 +00:00

Closed #176 label-swap test (will delete) 2026-09-10 16:16:13 +00:00

Closed #173 Missing pastes should not return a 404 but should display a "Paste ID not found" message on the main UI 2026-09-10 16:09:14 +00:00

Closed #156 add a lot more paste entries to the dev server to test paging to make sure it behaves properly when there are many pages 2026-09-10 15:47:56 +00:00

Closed #161 Settings: more padding between sections (under dark mode toggle, between theme sections) 2026-09-10 15:10:37 +00:00

Closed #157 number boxes in the new paste tab neede a UI rework. 2026-09-10 14:49:54 +00:00

Closed #163 [HIGH] /new Create button does nothing: $("#iscan") null crash in create() — pre-existing since PR #129 merge 2026-09-10 14:40:52 +00:00

Closed #142 [LOW] Long unbroken paste title causes double horizontal scrollbar at mobile width (375px) 2026-09-10 14:33:28 +00:00

Closed #139 [LOW] CSP allows unsafe-inline for script-src and style-src 2026-09-10 14:31:04 +00:00

Closed #152 Line wrap does not break long words; horizontal scroll remains when wrap enabled 2026-09-10 13:51:28 +00:00

Closed #138 [LOW] Viewer cookie (vwr) lacks the Secure attribute 2026-09-10 13:43:21 +00:00

Closed #143 [LOW] Deletion token accepted in the URL (?token=), leaking a bearer secret into logs/history 2026-09-10 13:38:15 +00:00

Closed #132 Settings: dark toggle above theme list; midnight card light/dark rows swapped 2026-09-10 13:23:29 +00:00

Closed #136 Select dropdowns: chevron indicator invisible (low contrast / possibly overridden) - make it visible in all presets 2026-09-10 04:31:27 +00:00

Closed #38 FUTURE: file/image attachments storage backend (S3?) 2026-09-10 04:23:27 +00:00

Closed #137 [MEDIUM] Admin key accepted via ?key= query parameter leaks the secret into proxy access logs 2026-09-10 04:23:27 +00:00

Closed #141 [MEDIUM] Paste password accepted via GET ?password= query string leaks it into logs and history 2026-09-10 04:23:27 +00:00

Closed #133 History: pagination bar disappears when searching or sorting; pin it to page bottom 2026-09-10 04:14:20 +00:00

Closed #147 New paste: split title input into its own component, separate from language select + refresh 2026-09-10 04:13:38 +00:00

Closed #135 Result box wraps mid-word (letter wrapping instead of word wrapping) 2026-09-10 04:09:14 +00:00

Closed #146 Paste list: untitled pastes (ID fallback name) styled as code chip - should be plain text like titled pastes 2026-09-10 04:07:04 +00:00

Closed #118 Admin lock page: replace explanatory paragraph with centered key input 2026-09-10 04:01:45 +00:00

Closed #130 Line wrap toggle for editor/viewer with remembered preference 2026-09-10 03:39:45 +00:00

Closed #127 Theme pairs with dark mode toggle + gear active state 2026-09-10 03:25:36 +00:00

Closed #124 New paste page: remove custom URL reservation note and the can contents menu 2026-09-10 03:07:48 +00:00

Closed #123 UI polish: custom URL placeholder, styled buttons/selects, admin link spacing 2026-09-10 02:49:36 +00:00

Closed #120 Add matching light/dark variant for every theme 2026-09-10 02:36:47 +00:00

Closed #122 Release v0.3.0 2026-09-10 02:36:40 +00:00

Closed #116 CSP blocks inline styles: admin panel renders unlocked, theme swatches stripped (regression from #84) 2026-09-10 02:20:53 +00:00

Closed #114 Settings theme grid renders empty: t.colors undefined (regression from #113) 2026-09-10 02:01:38 +00:00

Closed #112 Admin/settings page: lock always on load, remove settings hint, fix theme swatch colors 2026-09-10 00:54:43 +00:00

Closed #100 Settings page: theme switcher (live preview of presets) 2026-09-10 00:22:04 +00:00

Closed #110 Wiki docs accuracy review 2026-09-10 00:20:17 +00:00

Closed #93 rename the title on the top left to be the current version isntead of beta 2026-09-10 00:14:50 +00:00

Closed #82 [pentest2] burn_after_reads is never enforced: paste content remains readable indefinitely 2026-09-09 23:40:22 +00:00

Closed #31 FUTURE: storage backend choice (SQLite/Postgres/Redis) 2026-09-09 23:33:31 +00:00

Closed #80 Blind pentest round 2 against v0.2.1 on k3s 2026-09-09 23:33:08 +00:00

Closed #106 README: trim to brief and barely technical, refresh screenshots across themes 2026-09-09 22:30:54 +00:00

Closed #105 Result box: color-code by result type + rewrite error messages in plain user language 2026-09-09 22:28:31 +00:00

Closed #101 arrow next to column heads in the public list need to be a little further spaced left from the text 2026-09-09 22:17:09 +00:00

Closed #102 add a small unobtrusive dark and greyed out link to the admin page in the settings menu 2026-09-09 22:17:09 +00:00

Closed #99 admin page should not show any configurable options until authenticated as admin 2026-09-09 22:17:08 +00:00

Closed #103 Sort arrow: consistent gap to the right of column label 2026-09-09 22:10:31 +00:00

Closed #104 Uniform pill roundness: all pill-class elements must be full pill shape 2026-09-09 22:10:31 +00:00

Closed #95 view counts are not respecting cookie identity 2026-09-09 21:41:33 +00:00

Closed #96 this should have better spacing between the test.js and the /test url 2026-09-09 21:41:33 +00:00

Closed #97 veiwing a paste the middle expandable stats pill has a non uniform border. the border appears a bit thicker than the pills above and below it 2026-09-09 21:41:33 +00:00

Closed #98 the saved page should also show pages for the paste list 2026-09-09 21:41:33 +00:00

Closed #92 alignemnt in public 2026-09-09 21:41:32 +00:00

Closed #94 burn after read count menu should only show if that option is selected 2026-09-09 21:41:32 +00:00

Closed #4 Paste cans: UI and history integration 2026-09-09 21:39:29 +00:00

Closed #86 [pentest2] Unbounded title/language fields accepted and stored (50 KB title, arbitrary language strings) 2026-09-09 15:59:32 +00:00

Closed #85 [pentest2] Create rate limit is keyed on spoofable X-Forwarded-For 2026-09-09 15:59:29 +00:00

Closed #83 [pentest2] public:false is ignored — pastes silently become fully public and listed in the public feed 2026-09-09 15:59:26 +00:00

Closed #81 [pentest2] Password-protected pastes: unauthenticated password guessing via GET query params bypasses rate limiting 2026-09-09 15:59:24 +00:00

Closed #84 [pentest2] Missing security headers on HTML pages (no CSP, no X-Frame-Options, no X-Content-Type-Options, no Referrer-Policy) 2026-09-09 15:59:21 +00:00

Closed #67 [pentest] Missing security headers and no HSTS; HTTP->HTTPS redirect reflects arbitrary Host header 2026-09-09 15:18:44 +00:00

Closed #61 Blind pentest against dev build on k3s 2026-09-09 14:42:59 +00:00

Closed #65 [pentest] Password-protected and unlisted pastes are exposed in public listings /api/public 2026-09-09 14:30:19 +00:00

Closed #30 FUTURE: cookie-based preferences and access keys 2026-09-09 14:27:15 +00:00

Closed #32 Search: loading indicator and performance review 2026-09-09 14:26:26 +00:00

Closed #68 [pentest] Input validation gaps: negative/huge content accepted, expires_at ignored, limit=0 ignored 2026-09-09 14:26:20 +00:00

Closed #66 [pentest] Admin key endpoint has no rate limiting or lockout (offline brute force possible) 2026-09-09 14:26:14 +00:00

Closed #60 Security: clamp expires_in at API boundary (reject zero/negative, cap 1yr) 2026-09-09 14:26:07 +00:00

Closed #59 Security: add security headers middleware (CSP, X-Frame-Options, Referrer-Policy) 2026-09-09 14:26:01 +00:00

Closed #63 [pentest] DELETE /api/pastes/{id} performs deletion without any authentication or deletion token 2026-09-09 14:25:40 +00:00

Closed #58 Security: fix burn-after-read race (atomic conditional delete) 2026-09-09 14:25:06 +00:00

Closed #62 [pentest] Burn-after-read counter race: single-read paste can be fetched multiple times concurrently 2026-09-09 14:11:22 +00:00

Closed #64 [pentest] Burn-after-read counter race: single-read paste can be fetched multiple times concurrently 2026-09-09 14:10:26 +00:00

Closed #34 Security pentest sweep 2026-09-09 13:57:35 +00:00

Closed #35 Refactor: project structure cleanup 2026-09-09 06:34:48 +00:00

Closed #40 Admin endpoint with install-time ENV key 2026-09-09 05:44:10 +00:00

Closed #33 Bug fixing sweep: end-to-end audit of all features 2026-09-09 05:35:06 +00:00

Closed #47 Rework README: user-friendly feature list and get started guide 2026-09-09 05:00:01 +00:00

Closed #48 Custom expiry times 2026-09-09 04:59:28 +00:00

Closed #49 Burn after N reads 2026-09-09 04:59:28 +00:00

Closed #56 Topbar: external-link arrow on Git + rename 'Mine' nav item 2026-09-09 03:42:00 +00:00

Closed #57 Saved page: same sorting and searching as public pastes 2026-09-09 03:39:42 +00:00

Closed #50 Paste view: line numbers misaligned with code lines 2026-09-09 03:35:43 +00:00

Closed #51 History: remove ID from under the Paste column 2026-09-09 03:35:43 +00:00

Closed #52 History: sort indicator arrow position 2026-09-09 03:35:43 +00:00

Closed #53 Copy button: inline success state (green + 'Success!') on click 2026-09-09 03:35:43 +00:00

Closed #54 Paste view: clean up collapsed stats bar spacing 2026-09-09 03:35:43 +00:00

Closed #55 Paste view: remove the /{id} slug from the title bar 2026-09-09 03:35:43 +00:00

Closed #37 Browser paste history listing (cookie-linked) 2026-09-09 03:10:05 +00:00

Closed #18 Cross-UI component consistency audit 2026-09-09 03:00:21 +00:00

Closed #16 Find new color palettes (user-driven task) 2026-09-09 02:56:38 +00:00

Closed #45 Mobile responsiveness testing and fixes 2026-09-09 02:45:44 +00:00

Closed #46 Live relative time counters 2026-09-09 02:41:31 +00:00

Closed #42 History: sortable columns 2026-09-09 02:36:55 +00:00

Closed #44 History: ID column at end + URL column 2026-09-09 02:33:10 +00:00

Closed #43 History: paste name under the Paste column 2026-09-09 02:32:12 +00:00

Closed #36 Settings gear in top right 2026-09-09 02:27:04 +00:00

Closed #41 Expand language detection support 2026-09-09 02:25:38 +00:00

Closed #17 Paste view: stats in expandable pill under title 2026-09-09 02:14:46 +00:00

Closed #1 Syntax highlighting in paste view 2026-09-09 02:09:38 +00:00

Closed #2 Rate limiting before public exposure 2026-09-09 02:09:38 +00:00

Closed #26 Newly created password-protected paste should not require re-entering the password 2026-09-09 02:09:38 +00:00

Closed #27 Redesign the locked-paste screen 2026-09-09 01:53:00 +00:00

Closed #28 Back button after creating a paste shows stale result state 2026-09-09 01:53:00 +00:00

Closed #19 Copy button should show a success toast 2026-09-09 01:52:59 +00:00

Closed #20 Protection menu: better spacing and redo password lock formatting 2026-09-09 01:52:59 +00:00

Closed #21 Password reveal button while typing 2026-09-09 01:52:59 +00:00

Closed #22 Custom URL: integrate the / into the placeholder 2026-09-09 01:52:59 +00:00

Closed #23 Remove the up arrow from the Create button 2026-09-09 01:52:59 +00:00

Closed #24 Refresh icon still squished/cut off in its button 2026-09-09 01:52:59 +00:00

Closed #25 Title placeholder should say just 'Title' 2026-09-09 01:52:59 +00:00

Closed #29 Expired pastes should release custom URLs (daily cleanup job) 2026-09-09 01:50:51 +00:00

Closed #12 Fix capitalization for uniformity across the app 2026-09-09 01:29:38 +00:00

Closed #9 Replace current box-shadow with a cleaner shadow 2026-09-09 01:28:15 +00:00

Closed #10 Result field on new page should only show when there is content 2026-09-09 01:28:15 +00:00

Closed #11 Left-align text in custom URL input 2026-09-09 01:28:15 +00:00

Closed #13 Center the refresh icon in the language refresh button 2026-09-09 01:28:15 +00:00

Closed #14 Prettier selection buttons in new page sidebar 2026-09-09 01:28:15 +00:00

Closed #15 Remove em dashes from the UI 2026-09-09 01:28:15 +00:00

Closed #6 Default filename per language (Python.py, etc) 2026-09-09 01:28:14 +00:00

Closed #7 Search should filter results immediately as you type 2026-09-09 01:28:14 +00:00

Closed #8 Uniform rounded corners on all UI objects 2026-09-09 01:28:14 +00:00

Closed #5 items in the history list should be clickable in hte entire row 2026-09-09 00:17:20 +00:00

Closed #3 CI: build + test workflow 2026-09-08 23:48:28 +00:00

165 Issues created by 2 users

Opened #1 Syntax highlighting in paste view 2026-09-08 21:55:19 +00:00

Opened #2 Rate limiting before public exposure 2026-09-08 21:55:20 +00:00

Opened #3 CI: build + test workflow 2026-09-08 21:55:20 +00:00

Opened #4 Paste cans: UI and history integration 2026-09-08 21:55:47 +00:00

Opened #5 items in the history list should be clickable in hte entire row 2026-09-09 00:15:15 +00:00

Opened #6 Default filename per language (Python.py, etc) 2026-09-09 01:15:00 +00:00

Opened #7 Search should filter results immediately as you type 2026-09-09 01:15:00 +00:00

Opened #8 Uniform rounded corners on all UI objects 2026-09-09 01:15:00 +00:00

Opened #9 Replace current box-shadow with a cleaner shadow 2026-09-09 01:15:00 +00:00

Opened #10 Result field on new page should only show when there is content 2026-09-09 01:15:00 +00:00

Opened #11 Left-align text in custom URL input 2026-09-09 01:15:01 +00:00

Opened #12 Fix capitalization for uniformity across the app 2026-09-09 01:15:01 +00:00

Opened #13 Center the refresh icon in the language refresh button 2026-09-09 01:15:01 +00:00

Opened #14 Prettier selection buttons in new page sidebar 2026-09-09 01:15:01 +00:00

Opened #15 Remove em dashes from the UI 2026-09-09 01:15:01 +00:00

Opened #16 Find new color palettes (user-driven task) 2026-09-09 01:20:53 +00:00

Opened #17 Paste view: stats in expandable pill under title 2026-09-09 01:20:53 +00:00

Opened #18 Cross-UI component consistency audit 2026-09-09 01:20:53 +00:00

Opened #19 Copy button should show a success toast 2026-09-09 01:46:15 +00:00

Opened #20 Protection menu: better spacing and redo password lock formatting 2026-09-09 01:46:15 +00:00

Opened #21 Password reveal button while typing 2026-09-09 01:46:15 +00:00

Opened #22 Custom URL: integrate the / into the placeholder 2026-09-09 01:46:16 +00:00

Opened #23 Remove the up arrow from the Create button 2026-09-09 01:46:16 +00:00

Opened #24 Refresh icon still squished/cut off in its button 2026-09-09 01:46:16 +00:00

Opened #25 Title placeholder should say just 'Title' 2026-09-09 01:46:16 +00:00

Opened #26 Newly created password-protected paste should not require re-entering the password 2026-09-09 01:46:16 +00:00

Opened #27 Redesign the locked-paste screen 2026-09-09 01:46:16 +00:00

Opened #28 Back button after creating a paste shows stale result state 2026-09-09 01:46:16 +00:00

Opened #29 Expired pastes should release custom URLs (daily cleanup job) 2026-09-09 01:46:16 +00:00

Opened #30 FUTURE: cookie-based preferences and access keys 2026-09-09 01:46:16 +00:00

Opened #31 FUTURE: storage backend choice (SQLite/Postgres/Redis) 2026-09-09 01:46:16 +00:00

Opened #32 Search: loading indicator and performance review 2026-09-09 01:46:16 +00:00

Opened #33 Bug fixing sweep: end-to-end audit of all features 2026-09-09 01:50:46 +00:00

Opened #34 Security pentest sweep 2026-09-09 01:50:46 +00:00

Opened #35 Refactor: project structure cleanup 2026-09-09 01:56:37 +00:00

Opened #36 Settings gear in top right 2026-09-09 02:10:10 +00:00

Opened #37 Browser paste history listing (cookie-linked) 2026-09-09 02:10:10 +00:00

Opened #38 FUTURE: file/image attachments storage backend (S3?) 2026-09-09 02:10:10 +00:00

Opened #39 FUTURE: optional end-to-end encryption for pastes/files 2026-09-09 02:10:10 +00:00

Opened #40 Admin endpoint with install-time ENV key 2026-09-09 02:10:10 +00:00

Opened #41 Expand language detection support 2026-09-09 02:10:10 +00:00

Opened #42 History: sortable columns 2026-09-09 02:20:16 +00:00

Opened #43 History: paste name under the Paste column 2026-09-09 02:20:16 +00:00

Opened #44 History: ID column at end + URL column 2026-09-09 02:20:16 +00:00

Opened #45 Mobile responsiveness testing and fixes 2026-09-09 02:20:16 +00:00

Opened #46 Live relative time counters 2026-09-09 02:23:27 +00:00

Opened #47 Rework README: user-friendly feature list and get started guide 2026-09-09 02:30:43 +00:00

Opened #48 Custom expiry times 2026-09-09 02:32:39 +00:00

Opened #49 Burn after N reads 2026-09-09 02:32:39 +00:00

Opened #50 Paste view: line numbers misaligned with code lines 2026-09-09 02:51:13 +00:00

Opened #51 History: remove ID from under the Paste column 2026-09-09 02:51:13 +00:00

Opened #52 History: sort indicator arrow position 2026-09-09 02:51:13 +00:00

Opened #53 Copy button: inline success state (green + 'Success!') on click 2026-09-09 02:54:17 +00:00

Opened #54 Paste view: clean up collapsed stats bar spacing 2026-09-09 02:55:55 +00:00

Opened #55 Paste view: remove the /{id} slug from the title bar 2026-09-09 02:57:29 +00:00

Opened #56 Topbar: external-link arrow on Git + rename 'Mine' nav item 2026-09-09 03:06:48 +00:00

Opened #57 Saved page: same sorting and searching as public pastes 2026-09-09 03:13:02 +00:00

Opened #58 Security: fix burn-after-read race (atomic conditional delete) 2026-09-09 13:57:25 +00:00

Opened #59 Security: add security headers middleware (CSP, X-Frame-Options, Referrer-Policy) 2026-09-09 13:57:25 +00:00

Opened #60 Security: clamp expires_in at API boundary (reject zero/negative, cap 1yr) 2026-09-09 13:57:25 +00:00

Opened #61 Blind pentest against dev build on k3s 2026-09-09 13:57:25 +00:00

Opened #62 [pentest] Burn-after-read counter race: single-read paste can be fetched multiple times concurrently 2026-09-09 14:09:35 +00:00

Opened #63 [pentest] DELETE /api/pastes/{id} performs deletion without any authentication or deletion token 2026-09-09 14:10:09 +00:00

Opened #64 [pentest] Burn-after-read counter race: single-read paste can be fetched multiple times concurrently 2026-09-09 14:10:09 +00:00

Opened #65 [pentest] Password-protected and unlisted pastes are exposed in public listings /api/public 2026-09-09 14:10:09 +00:00

Opened #66 [pentest] Admin key endpoint has no rate limiting or lockout (offline brute force possible) 2026-09-09 14:10:09 +00:00

Opened #67 [pentest] Missing security headers and no HSTS; HTTP->HTTPS redirect reflects arbitrary Host header 2026-09-09 14:10:09 +00:00

Opened #68 [pentest] Input validation gaps: negative/huge content accepted, expires_at ignored, limit=0 ignored 2026-09-09 14:10:09 +00:00

Opened #80 Blind pentest round 2 against v0.2.1 on k3s 2026-09-09 14:42:59 +00:00

Opened #81 [pentest2] Password-protected pastes: unauthenticated password guessing via GET query params bypasses rate limiting 2026-09-09 15:40:04 +00:00

Opened #82 [pentest2] burn_after_reads is never enforced: paste content remains readable indefinitely 2026-09-09 15:40:04 +00:00

Opened #83 [pentest2] public:false is ignored — pastes silently become fully public and listed in the public feed 2026-09-09 15:40:30 +00:00

Opened #84 [pentest2] Missing security headers on HTML pages (no CSP, no X-Frame-Options, no X-Content-Type-Options, no Referrer-Policy) 2026-09-09 15:40:30 +00:00

Opened #85 [pentest2] Create rate limit is keyed on spoofable X-Forwarded-For 2026-09-09 15:40:30 +00:00

Opened #86 [pentest2] Unbounded title/language fields accepted and stored (50 KB title, arbitrary language strings) 2026-09-09 15:40:46 +00:00

Opened #92 alignemnt in public 2026-09-09 20:42:29 +00:00

Opened #93 rename the title on the top left to be the current version isntead of beta 2026-09-09 20:46:52 +00:00

Opened #94 burn after read count menu should only show if that option is selected 2026-09-09 20:48:15 +00:00

Opened #95 view counts are not respecting cookie identity 2026-09-09 20:48:44 +00:00

Opened #96 this should have better spacing between the test.js and the /test url 2026-09-09 20:51:08 +00:00

Opened #97 veiwing a paste the middle expandable stats pill has a non uniform border. the border appears a bit thicker than the pills above and below it 2026-09-09 20:51:53 +00:00

Opened #98 the saved page should also show pages for the paste list 2026-09-09 20:53:33 +00:00

Opened #99 admin page should not show any configurable options until authenticated as admin 2026-09-09 20:56:48 +00:00

Opened #100 Settings page: theme switcher (live preview of presets) 2026-09-09 21:04:42 +00:00

Opened #101 arrow next to column heads in the public list need to be a little further spaced left from the text 2026-09-09 21:14:51 +00:00

Opened #102 add a small unobtrusive dark and greyed out link to the admin page in the settings menu 2026-09-09 21:16:09 +00:00

Opened #103 Sort arrow: consistent gap to the right of column label 2026-09-09 21:53:20 +00:00

Opened #104 Uniform pill roundness: all pill-class elements must be full pill shape 2026-09-09 21:53:20 +00:00

Opened #105 Result box: color-code by result type + rewrite error messages in plain user language 2026-09-09 21:58:12 +00:00

Opened #106 README: trim to brief and barely technical, refresh screenshots across themes 2026-09-09 22:03:25 +00:00

Opened #110 Wiki docs accuracy review 2026-09-10 00:05:24 +00:00

Opened #112 Admin/settings page: lock always on load, remove settings hint, fix theme swatch colors 2026-09-10 00:50:42 +00:00

Opened #114 Settings theme grid renders empty: t.colors undefined (regression from #113) 2026-09-10 01:53:20 +00:00

Opened #116 CSP blocks inline styles: admin panel renders unlocked, theme swatches stripped (regression from #84) 2026-09-10 02:16:01 +00:00

Opened #118 Admin lock page: replace explanatory paragraph with centered key input 2026-09-10 02:26:49 +00:00

Opened #120 Add matching light/dark variant for every theme 2026-09-10 02:31:47 +00:00

Opened #122 Release v0.3.0 2026-09-10 02:36:40 +00:00

Opened #123 UI polish: custom URL placeholder, styled buttons/selects, admin link spacing 2026-09-10 02:41:56 +00:00

Opened #124 New paste page: remove custom URL reservation note and the can contents menu 2026-09-10 02:44:40 +00:00

Opened #127 Theme pairs with dark mode toggle + gear active state 2026-09-10 02:56:05 +00:00

Opened #130 Line wrap toggle for editor/viewer with remembered preference 2026-09-10 03:23:01 +00:00

Opened #132 Settings: dark toggle above theme list; midnight card light/dark rows swapped 2026-09-10 03:33:18 +00:00

Opened #133 History: pagination bar disappears when searching or sorting; pin it to page bottom 2026-09-10 03:38:45 +00:00

Opened #135 Result box wraps mid-word (letter wrapping instead of word wrapping) 2026-09-10 03:42:26 +00:00

Opened #136 Select dropdowns: chevron indicator invisible (low contrast / possibly overridden) - make it visible in all presets 2026-09-10 03:46:47 +00:00

Opened #137 [MEDIUM] Admin key accepted via ?key= query parameter leaks the secret into proxy access logs 2026-09-10 03:48:27 +00:00

Opened #138 [LOW] Viewer cookie (vwr) lacks the Secure attribute 2026-09-10 03:48:27 +00:00

Opened #139 [LOW] CSP allows unsafe-inline for script-src and style-src 2026-09-10 03:48:27 +00:00

Opened #141 [MEDIUM] Paste password accepted via GET ?password= query string leaks it into logs and history 2026-09-10 03:48:56 +00:00

Opened #142 [LOW] Long unbroken paste title causes double horizontal scrollbar at mobile width (375px) 2026-09-10 03:48:56 +00:00

Opened #143 [LOW] Deletion token accepted in the URL (?token=), leaking a bearer secret into logs/history 2026-09-10 03:48:56 +00:00

Opened #144 [LOW] Rate limiter keyed solely by IP: users behind one egress IP share a single create bucket (verified, informational) 2026-09-10 03:48:56 +00:00

Opened #146 Paste list: untitled pastes (ID fallback name) styled as code chip - should be plain text like titled pastes 2026-09-10 03:49:23 +00:00

Opened #147 New paste: split title input into its own component, separate from language select + refresh 2026-09-10 03:53:20 +00:00

Opened #152 Line wrap does not break long words; horizontal scroll remains when wrap enabled 2026-09-10 13:18:48 +00:00

Opened #156 add a lot more paste entries to the dev server to test paging to make sure it behaves properly when there are many pages 2026-09-10 13:47:45 +00:00

Opened #157 number boxes in the new paste tab neede a UI rework. 2026-09-10 13:49:48 +00:00

Opened #160 Next major release should update also update the readme with new screenshots and other relevant info 2026-09-10 14:08:49 +00:00

Opened #161 Settings: more padding between sections (under dark mode toggle, between theme sections) 2026-09-10 14:12:28 +00:00

Opened #163 [HIGH] /new Create button does nothing: $("#iscan") null crash in create() — pre-existing since PR #129 merge 2026-09-10 14:31:26 +00:00

Opened #166 Wrap button menu 2026-09-10 14:52:11 +00:00

Opened #167 when lots of text is pasted in with line wrapping enabled the side numbers for lines does not readjust properly. 2026-09-10 14:55:04 +00:00

Opened #168 this notification pill should be clenaed up 2026-09-10 14:56:54 +00:00

Opened #169 there is a line that appears when you hover over the gap in between the dropdown title and the body 2026-09-10 14:58:13 +00:00

Opened #170 there is a random bar at the bottom of the new paste page that should not be here 2026-09-10 15:00:07 +00:00

Opened #171 File upload 2026-09-10 15:08:05 +00:00

Opened #173 Missing pastes should not return a 404 but should display a "Paste ID not found" message on the main UI 2026-09-10 16:00:39 +00:00

Opened #176 label-swap test (will delete) 2026-09-10 16:15:03 +00:00

Opened #184 File upload 2026-09-10 16:35:53 +00:00

Opened #187 website tab icon 2026-09-10 16:38:44 +00:00

Opened #194 Line Number / Line Spacing 2026-09-10 16:57:24 +00:00

Opened #197 Dark mode toggle in settings 2026-09-10 17:03:26 +00:00

Opened #205 Paste gutter numbers drift from wrapped lines (inter-block newline text nodes render as phantom rows) 2026-09-10 17:28:08 +00:00

Opened #207 Dark mode toggle in settings does not work; center its placement 2026-09-10 17:29:42 +00:00

Opened #209 Sorting arrows 2026-09-10 17:36:20 +00:00

Opened #210 Saved pastes overlapping 2026-09-10 17:38:59 +00:00

Opened #221 Images should be scaled 2026-09-10 18:25:06 +00:00

Opened #222 Border on corners 2026-09-10 18:29:06 +00:00

Opened #229 Image view for pastes 2026-09-10 19:51:55 +00:00

Opened #232 File View 2026-09-10 21:59:48 +00:00

Opened #233 File upload names 2026-09-10 22:01:59 +00:00

Opened #235 File type instead of language 2026-09-10 22:03:27 +00:00

Opened #238 Page numbers 2026-09-10 22:28:08 +00:00

Opened #240 Padding on burn after read text box 2026-09-10 22:56:21 +00:00

Opened #243 Copy button does not copy the link only copies the Paste ID. 2026-09-16 20:34:51 +00:00

Opened #248 Server-side cap on attachment filenames 2026-09-17 15:31:33 +00:00

Opened #249 Attachment pastes render an empty code area in the paste view 2026-09-17 15:31:33 +00:00

Opened #250 Raw view lacks mobile viewport handling 2026-09-17 15:31:33 +00:00

Opened #255 Move the URL column to the left 2026-09-17 19:17:11 +00:00

Opened #256 rename URLs to match the actual buttons 2026-09-17 19:18:03 +00:00

Opened #257 Line Number bleed over 2026-09-17 19:24:25 +00:00

Opened #259 line scrolling on new paste 2026-09-17 19:25:50 +00:00

Opened #260 Success! on button clicks 2026-09-17 19:27:00 +00:00

Opened #261 Line number bar should always be visible. 2026-09-17 19:28:57 +00:00

Opened #267 jump to top and jump to bottom buttons 2026-09-17 19:44:19 +00:00

Opened #273 Style scrollbars to match theme 2026-09-17 23:40:28 +00:00

Opened #274 When creating a new paste the line number bar numbers dont allign properly anymore with the actual text line 2026-09-17 23:41:21 +00:00

Opened #280 HIGH: rate limiter bypassable via X-Forwarded-For 2026-09-18 01:25:32 +00:00

Opened #281 MEDIUM: /raw/{id} returns empty body for non-image attachment pastes 2026-09-18 01:25:33 +00:00

Opened #282 MEDIUM: jump-to-top/bottom nav hidden on mobile until a resize event 2026-09-18 01:25:33 +00:00

Opened #283 LOW findings from v0.5.0 pentest (record-only) 2026-09-18 01:25:33 +00:00

Opened #292 Some pastes in the public list highlight and others dont 2026-09-18 02:39:54 +00:00

Opened #294 Switching to midnight theme forces dark mode 2026-09-18 02:58:15 +00:00

Opened #296 Move the URL column left in list tables (right after Paste) 2026-09-18 03:47:05 +00:00

Opened #298 Move URL column to position 2 on /public and /mine (follow-up to #255) 2026-09-18 13:29:11 +00:00