Commit Graph
85 Commits
Author SHA1 Message Date
Evan Jarrett ec2063ef52 fix star not being filled in. add ability to deploy scanner on the same server as the hold 2026-02-13 20:41:36 -06:00
Evan Jarrett 8048921f5e show attestation details 2026-02-13 19:40:05 -06:00
Evan Jarrett de02e1f046 remove distribution from hold, add vulnerability scanning in appview.
1. Removing distribution/distribution from the Hold Service (biggest change)
  The hold service previously used distribution's StorageDriver interface for all blob operations. This replaces it with direct AWS SDK v2 calls through ATCR's own pkg/s3.S3Service:
  - New S3Service methods: Stat(), PutBytes(), Move(), Delete(), WalkBlobs(), ListPrefix() added to pkg/s3/types.go
  - Pull zone fix: Presigned URLs are now generated against the real S3 endpoint, then the host is swapped to the CDN URL post-signing (previously the CDN URL was set as the endpoint, which
  broke SigV4 signatures)
  - All hold subsystems migrated: GC, OCI uploads, XRPC handlers, profile uploads, scan broadcaster, manifest posts — all now use *s3.S3Service instead of storagedriver.StorageDriver
  - Config simplified: Removed configuration.Storage type and buildStorageConfigFromFields(); replaced with a simple S3Params() method
  - Mock expanded: MockS3Client gains an in-memory object store + 5 new methods, replacing duplicate mockStorageDriver implementations in tests (~160 lines deleted from each test file)
2. Vulnerability Scan UI in AppView (new feature)
  Displays scan results from the hold's PDS on the repository page:
  - New lexicon: io/atcr/hold/scan.json with vulnReportBlob field for storing full Grype reports
  - Two new HTMX endpoints: /api/scan-result (badge) and /api/vuln-details (modal with CVE table)
  - New templates: vuln-badge.html (severity count chips) and vuln-details.html (full CVE table with NVD/GHSA links)
  - Repository page: Lazy-loads scan badges per manifest via HTMX
  - Tests: ~590 lines of test coverage for both handlers
3. S3 Diagnostic Tool
  New cmd/s3-test/main.go (418 lines) — tests S3 connectivity with both SDK v1 and v2, including presigned URL generation, pull zone host swapping, and verbose signing debug output.
4. Deployment Tooling
  - New syncServiceUnit() for comparing/updating systemd units on servers
  - Update command now syncs config keys (adds missing keys from template) and service units with daemon-reload
5. DB Migration
  0011_fix_captain_successor_column.yaml — rebuilds hold_captain_records to add the successor column that was missed in a previous migration.
6. Documentation
  - APPVIEW-UI-FUTURE.md rewritten as a status-tracked feature inventory
  - DISTRIBUTION.md renamed to CREDENTIAL_HELPER.md
  - New REMOVING_DISTRIBUTION.md — 480-line analysis of fully removing distribution from the appview side
7. go.mod
  aws-sdk-go v1 moved from indirect to direct (needed by cmd/s3-test).
2026-02-13 15:26:24 -06:00
Evan Jarrett 22d5396589 optimize queries for admin panel 2026-02-10 22:51:51 -06:00
Evan Jarrett 4ac2b97c33 remote at sign from tangled urls 2026-02-10 20:48:24 -06:00
Evan Jarrett 7ba42080c5 more admin panel fixes, allow for fallback relays and jetstreams, improve star lexicon to allow for repo_page backlinks 2026-02-09 21:53:02 -06:00
Evan Jarrett ef0161fb0e update settings page, move admin-panel to tailwind/daisy 2026-02-06 11:23:12 -06:00
Evan Jarrett 35f7a47af3 add simple stripe billing implementation for quotas 2026-02-03 21:52:31 -06:00
Evan Jarrett 34f342f637 lots of refactor and cleanup to allow for branding overrides 2026-02-02 22:42:15 -06:00
Evan Jarrett ca56a7c309 allow domain name and short name to be replaced by config 2026-01-22 14:52:30 -06:00
Evan Jarrett 865c597188 jk found more fixes 2026-01-18 17:27:55 -06:00
Evan Jarrett 536fa416d4 i don't think i can make this website any faster... 2026-01-18 16:54:03 -06:00
Evan Jarrett d8b0305ce8 use sprite sheet for lucide icons, fix logout button, various other improvements 2026-01-18 14:08:34 -06:00
Evan Jarrett f79d6027ad fix not able to star repos 2026-01-17 18:07:27 -06:00
Evan Jarrett 0358e2e5ad update api endpoints to use post body rather than url based handlers 2026-01-17 17:46:10 -06:00
Evan Jarrett faf63d8344 clean up unused endpoints and js, fix more a11y errors 2026-01-17 17:36:22 -06:00
Evan Jarrett 26f049fcbe more accessiblity tweaks 2026-01-17 16:43:54 -06:00
Evan Jarrett ebb107ebec fix learn more button wording 2026-01-17 16:03:02 -06:00
Evan Jarrett d0843323fe more pagespeed fixes 2026-01-17 15:48:40 -06:00
Evan Jarrett b7ed0e7d5b more pagespeed improvements, improve routing handler logic 2026-01-17 10:38:35 -06:00
Evan Jarrett dbe0efd949 page rank/speed/seo improvements 2026-01-16 23:19:41 -06:00
Evan Jarrett 2d7d2fd5ca update search results page 2026-01-16 14:36:11 -06:00
Evan Jarrett c48a763529 fixup search page to use repocard. remove hardcoded values from privacy/terms/home 2026-01-16 11:19:42 -06:00
Evan Jarrett 8f3d992ce4 more styling 2026-01-15 22:32:55 -06:00
Evan Jarrett 6272273588 mascot tweaks on hero 2026-01-15 22:12:51 -06:00
Evan Jarrett 950b1f94d0 add mascot with new colors 2026-01-15 21:45:31 -06:00
Evan Jarrett 908e124917 more visual tweaks 2026-01-15 00:17:48 -06:00
Evan Jarrett eb3eed5f7a lint, fix repo-card styling 2026-01-14 23:18:35 -06:00
Evan Jarrett 055b34af71 varies fixes for indigo xrpc calls, avatars broken on bsku profile change, opengraph card fixes, other ui improvements 2026-01-14 23:14:43 -06:00
Evan Jarrett 23a9b52619 add footer 2026-01-14 14:58:53 -06:00
Evan Jarrett 4c0f20a32e begin large refactor of UI to use tailwind and daisy 2026-01-14 14:42:04 -06:00
Evan Jarrett ac5821593f collapse searchbox when not in use 2026-01-12 11:00:53 -06:00
Evan Jarrett fa9abc28b9 update privacy policy, add exporting/deleting bluesky posts as part of userdata 2026-01-10 15:24:28 -06:00
Evan Jarrett 3155f91e3a make wording on delete more clear its about atcr and not other atproto data 2026-01-10 11:41:02 -06:00
Evan Jarrett 64cdb66957 begin delete my account implementation 2026-01-08 23:17:38 -06:00
Evan Jarrett 3409af6c67 implement hold discovery dropdown in settings. implement a data privacy export feature 2026-01-07 22:41:14 -06:00
Evan Jarrett d4b88b5105 more lint fixes. enable autofix 2026-01-06 23:56:17 -06:00
Evan Jarrett 487fc8a47e wording 2026-01-04 23:37:31 -06:00
Evan Jarrett e5e59fdcbf add tos and privacy policy 2026-01-04 23:12:14 -06:00
Evan Jarrett aa4b32bbd6 basic implementation of quotas 2026-01-04 20:09:41 -06:00
Evan Jarrett 53e196a261 start researching quotas based on layer size per DID 2026-01-04 15:53:44 -06:00
Evan Jarrett 6dd612e157 add helm badge to tags 2026-01-03 20:01:55 -06:00
Evan Jarrett e6bd4c122e fix sql migration bug. add better error logs for auth failures. fix showing incorrect pull commands with helm charts 2026-01-03 17:26:25 -06:00
Evan Jarrett 347db5c391 begin support for helm-charts 2026-01-02 13:09:04 -06:00
Evan Jarrett 8d0cff63fb add 404 page 2025-12-22 12:43:18 -06:00
Evan Jarrett d11356cd18 more improvements on repo page rendering. allow for repo avatar image uploads (requires new scopes) 2025-12-21 21:51:44 -06:00
Evan Jarrett 5a208de4c9 add attestation badge to tags 2025-12-20 11:00:24 -06:00
Evan Jarrett bd55783d8e more style fixes for the og cards 2025-12-18 14:03:49 -06:00
Evan Jarrett 3b343c9fdb fix embed for discord 2025-12-18 13:55:18 -06:00
Evan Jarrett 5f19213e32 better open graph 2025-12-18 12:29:20 -06:00