• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / secrets / 20583398193
84%

Build:
DEFAULT BRANCH: master
Ran 29 Dec 2025 09:46PM UTC
Jobs 1
Files 15
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

29 Dec 2025 09:46PM UTC coverage: 84.205% (+0.3%) from 83.941%
20583398193

push

github

web-flow
feat: add optional PIN protection for secrets (#98)

* docs: add implementation plan for optional PIN feature

* feat: add optional PIN protection for secrets

add --allow-no-pin CLI flag (default false) that allows users to skip
PIN protection when creating secrets via the web UI. When enabled and
user leaves PIN empty, show confirmation modal. On retrieval, show
"Reveal Secret" button instead of PIN form.

- backend: AllowNoPin config, empty PIN support in messager, HasPin method
- web layer: form validation, template data, conditional UI rendering
- frontend: confirmation modal with CSS animations, reveal button UI
- e2e tests: 8 comprehensive browser tests for all scenarios
- docs: README updated with new flag

* fix: resolve race condition in auth popup state reset

replace afterSwap-based popup close detection with explicit click handlers.
the previous approach had a race condition where HX-Trigger events fired
after swap, causing encryption state to reset before form re-submission.

click handlers now only reset state on explicit user actions (close button
or backdrop click), not on server-driven swaps during successful auth flow.

* fix: address review feedback for optional PIN feature

- reset noPinConfirmed flag in resetEncryptionState() to prevent stale state
- clear pendingForm after issueRequest() to avoid memory retention
- add PIN length validation (catches 4-digit PIN early with clear message)
- extract validatePIN helper function for reuse in both generate and load
- add .optional-hint CSS class for PIN label styling

* fix: use outline warning icon in no-pin modal

* refactor: address code review findings

- change validatePIN to return error instead of string (idiomatic Go)
- add test verifying API rejects empty PIN even when AllowNoPin enabled
- add unit tests for showMessageViewCtrl/loadMessageCtrl with PIN-less messages
- document Optional PIN architecture in CLAUDE.md

68 of 71 new or added lines in 4 files covered. (95.77%)

1706 of 2026 relevant lines covered (84.21%)

75.5 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
0.0
0.0% app/main.go
2
92.27
0.13% app/server/web.go
Jobs
ID Job ID Ran Files Coverage
1 20583398193.1 29 Dec 2025 09:46PM UTC 15
84.21
GitHub Action Run
Source Files on build 20583398193
  • Tree
  • List 15
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 9e7ba758 on github
  • Prev Build on master (#20552271282)
  • Next Build on master (#20583490573)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc