Upgrade the packaged API contract and add PR CI #52
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!52
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/task-8a6810c6-package-contract"
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?
Slugkit.com runs older npm packages and serves a site-owned OpenAPI definition without an official contract declaration. This incrementally upgrades API to 0.2.0, core to 0.1.2 and media to 0.1.1, serves the installed packaged spec, and advertises
slugkit-management-apicontract 1.1.0.Port the API behaviors declared by that document: literal search, explicit publish timestamps, nullable post banners and expanded sources. Existing public-origin handling, branding, article rendering, auth and federation identity are retained. The only schema change adds nullable
posts.banner_url; setup-system changes are deferred. Original template provenance stays intact.Validation: build/typecheck and all 352 tests passed; local Docker build and isolated container discovery/spec smoke check passed. A consistent read-only production snapshot was rehearsed locally: all 27 existing tables were preserved apart from the nullable column, all 9 post pages/content responses worked, and credentials/actor/follower rows were unchanged. The retained production image read the migrated copy and all 9 pages through a read-only mount. Private rehearsal snapshots were removed.
Deployment and rollback prerequisites are recorded in
docs/package-contract-upgrade.md. Backup/restore coverage remains unverified. A separate Forgejo PR/main CI workflow now checks formatting, types, build/generated CSS consistency and 321 deterministic tests; the full 352-test suite, including renamed federation integration tests, remains local. A small formatting baseline and pre-PR script support these checks. Current-head CI must pass before review; release automation remains tag-only. No release tag, image publication or production action is included. Post-deployment acceptance remains pending separate authorization; static archive work is separate.Task: task-8a6810c6
Upgrade existing site to packaged API contract 1.1.0to Upgrade the packaged API contract and add PR CIReview update
75534367112f21c2e6f9046369c307d66d91e2d7.CI / verify (pull_request)succeeded for that exact head in Forgejo run 41. Forgejo discovered the workflow directly from this PR; no bootstrap merge was needed.Acceptance criteria:
Review counts: 4 criteria, 3 met, 1 partial, 0 not-evident; 0 blocking code findings; 0 warnings. Backup/restore verification, Flux image automation control and an approved rollout remain explicit deployment gates. No release tag, image publication or production change occurred.
Next: explicit human merge approval. Keep the task active until separately authorized deployment and final verification. Review approval does not authorize publishing or deployment.