Self-host the laboratory badge to satisfy the site CSP #2

Merged
ClaudiuSchuster merged 1 commit from oss-oo/laboratory-references into main 2026-09-26 17:32:19 +00:00
Owner

Vendors the oss-oo menu logo variants into the repository (byte-identical to the asset repo manifest) so the footer badge ships same-origin and renders under the site CSP in both design worlds.

Vendors the oss-oo menu logo variants into the repository (byte-identical to the asset repo manifest) so the footer badge ships same-origin and renders under the site CSP in both design worlds.
Point the personal site at the laboratory and port publication to lab CI
All checks were successful
verify / Verify (push) Successful in 7s
verify / Verify (pull_request) Successful in 7s
028f9ac196
Content:
- hero and contact buttons now open the oss-oo laboratory profile; the
  GitHub wording is gone from user-facing text
- the four project cards link their laboratory repositories
  (oss-oo.io/OSS-Singularity/*) and load their preview artwork from the
  laboratory raw URLs, which also unblocks builds after the GitHub
  mirrors were emptied (raw.githubusercontent previews 404 today)
- the footer carries the oss-oo menu logo from the laboratory asset
  repo, theme-aware: white wordmark on the dark atelier, dark wordmark
  on the bright prismatic world

Publication port:
- .forgejo/workflows/verify.yml: dependency-free verification gate
  (pinned alpine:3.20, make build + node --check), mirroring the
  GitHub Verify workflow
- .forgejo/workflows/deploy.yml: production publication through the
  existing restricted claudiuschuster_de_target endpoint (staged
  upload, atomic switch, retained rollback, zone-local purge, live
  edge/origin acceptance) driven by scripts/profile-publish.py; runs
  on every main push and as a plan/publish dispatch diagnostic
- build_site.py now sources project previews from the laboratory
Self-host the laboratory badge to satisfy the site CSP
All checks were successful
verify / Verify (pull_request) Successful in 7s
verify / Verify (push) Successful in 7s
6b50661f5c
The strict Content-Security-Policy served with the site (img-src 'self')
blocks hotlinked badge images from oss-oo.io. Vendor both oss-oo menu
logo variants (byte-identical to the asset repo manifest, CC BY-SA 4.0)
into the repository, fingerprint them through the build, and wire the
prismatic world sheet to the bright variant via the build's replacement
mechanism. The footer badge now ships from the same origin on both
pages and renders in both design worlds.
ClaudiuSchuster force-pushed oss-oo/laboratory-references from 6b50661f5c
All checks were successful
verify / Verify (pull_request) Successful in 7s
verify / Verify (push) Successful in 7s
to 1cf29d3259
All checks were successful
verify / Verify (push) Successful in 7s
verify / Verify (pull_request) Successful in 7s
2026-09-26 17:31:50 +00:00
Compare
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
ClaudiuSchuster/claudiuschuster.de!2
No description provided.