Refresh public content rendering and presentation #59
No reviewers
Labels
No labels
activitypub
actor
admin
ai-safety
article
articles
atproto
bug
cli
configuration
content
dev-environment
docker
enhancement
feature
federation
fediverse
forgejo
garage
health
how-to
logging
markdown
mastodon
media
navigation
opengraph
passkeys
preview
priority:medium
production
release
rendering
s3
settings
setup
status:active
status:done
status:inprogress
technical
webauthn
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
erik/slugkit.com!59
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/task-f79f9b23-content-presentation"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Implements task-f79f9b23 as a selective port from Slugkit template ac34f5e.
Preserved boundaries
No setup wizard, content/data migration, production storage writes, actor/key changes, release publication, deployment or homelab changes. Branding, release tooling and recent security/runtime work remain intact.
/api/1.1.0, packaged OpenAPI compliance, exact-version documentation, contract archive/discovery, historical schema bytes and strict publish-body validation are unchanged.Verification
./scripts/pre-pr.sh: passed (format, typecheck, CSS/build reproducibility, 581 tests in 60 files, including local-only integration tests)./articlesand/posts/slug-cli-initreviewed read-only; regression fixtures cover its formatted title, inline banner and CLI code patterns.http://localhost:4175is in progress; desktop cards all measure 496px tall. Completion evidence will be posted before merge.npm run test:ci(no integration/browser/container/federation verification in CI).Documentation:
docs/content-rendering.md.Review and verification complete
Fresh-context, read-only Pi review identified two P2 defects: clipping at wide single-column card widths and missing failed-image handling for link-preview banners. Both were fixed in
c9524ae; independent re-review reports no actionable findings and confirms both fixes by source inspection. The reviewer did not independently run tests/browser/CI; those checks were performed by the implementing agent.Verification on current head:
./scripts/pre-pr.shpassed: formatting, typecheck, build, generated CSS reproducibility and 581 tests in 60 files (local-only integration suite included).verifyPR run #60 succeeded for exact headc9524aea32. CI retainstest:ci, excluding integration tests.Main implementation files:
src/templates/public.tsx,src/templates/markdown.ts,src/templates/post-banner-script.ts,src/routes/home.ts,src/sources/sources.ts,src/media/media.ts, generated styles and focused regression tests. Behavior/verification documented indocs/content-rendering.md; explicit local fixture inscripts/presentation-browser-fixture.ts.Preserved: branding, existing stored content/references, nonce/CSRF protections, security/federation/readiness work, exact-version API/docs, packaged OpenAPI/archive/schema discovery, strict publish-body validation and release tooling. No setup gate, release publication, deployment, homelab change or live federation write.
Review artifacts (local):
/tmp/slugkit-com-presentation-independent-review.txtand/tmp/slugkit-com-presentation-independent-review-v2.txt.Published and deployed: web-v0.1.39
User explicitly approved release 0.1.39 and automatic production rollout, then instructed: publish without the data backups. No production data backup was created.
web-v0.1.39points to95231aec8cf1f371fdc2b77acc9364fa0d5084ca.evcraddock/slugkit-com:0.1.39forlinux/amd64andlinux/arm64.sha256:c2d16ae8c571042c562453da3d7a70419537aba1c0935bc979e9a3df3eda1b77;latestresolves to the same digest.77fd608b61f93888fee06c82c9399c400ead47ab. No manual Kubernetes or homelab configuration change was made.Verification
/ready, API health and the native healthcheck. Smoke container removed afterward.https://slugkit.com/readyandhttps://www.slugkit.com/readyreport status ready, version 0.1.39 and database pass.@slug@slugkit.comhandle displays. No JavaScript page errors recorded.Remaining presentation finding — not a fully passing visual audit
The existing
/posts/slug-cli-initarticle still repeats its title: the stored body begins with an image paragraph before the matching H1. The renderer suppresses only a matching leading H1, so this banner-before-heading case remains outside that handling. Browser inspection shows two H1s. The local compatibility fixture exercised title-before-banner ordering, not this actual production ordering.This finding was not hidden or marked passed. Production content was not rewritten, no unapproved patch release or rollback was performed, and the browser checklist retains
article-titleas unmet. A follow-up renderer fix and regression case require the normal approved development/release workflow.Local verification reports:
/tmp/slugkit-com-release-before.jsonand/tmp/slugkit-com-release-after.jsoncontain only public metadata/hashes and health results, not database backups or secret contents. Website checkout remains clean on main.