Rename post authors to credited contacts #143

Merged
erik merged 1 commit from feat/task-7dfc311a-credited-contacts into main 2026-06-16 20:41:59 -05:00
Owner

Summary

Renames the contact-backed post author relationship to credited-contact terminology so local post authorship can be separated from external/content credit.

Task

task-7dfc311a

Changes

  • Renamed post API/model fields from authorIds/authors to creditContactIds/creditedContacts.
  • Added migration 020_rename_post_authors_to_credits.sql to rename post_authors to post_credits while preserving rows.
  • Updated post service, API validation, OpenAPI, CLI option/payload names, and docs/specs for credit terminology.
  • Updated public post UI to render contact-backed credits as Credit:/Credits: instead of a local by author line.
  • Updated docs/identity-model.md to show the resolved credited-contact model.
  • Added tests for API create/update/list/get credited contacts, migration data preservation, public UI labels, and CLI payloads.

Testing

  • Unit tests added/updated
  • Manual testing performed
  • ./scripts/pre-pr.sh passes

Checklist

  • ./scripts/pre-pr.sh passes
  • Documentation updated (if needed)
  • No unrelated changes included
## Summary Renames the contact-backed post author relationship to credited-contact terminology so local post authorship can be separated from external/content credit. ## Task task-7dfc311a ## Changes - Renamed post API/model fields from `authorIds`/`authors` to `creditContactIds`/`creditedContacts`. - Added migration `020_rename_post_authors_to_credits.sql` to rename `post_authors` to `post_credits` while preserving rows. - Updated post service, API validation, OpenAPI, CLI option/payload names, and docs/specs for credit terminology. - Updated public post UI to render contact-backed credits as `Credit:`/`Credits:` instead of a local `by` author line. - Updated `docs/identity-model.md` to show the resolved credited-contact model. - Added tests for API create/update/list/get credited contacts, migration data preservation, public UI labels, and CLI payloads. ## Testing - [x] Unit tests added/updated - [ ] Manual testing performed - [x] `./scripts/pre-pr.sh` passes ## Checklist - [x] `./scripts/pre-pr.sh` passes - [x] Documentation updated (if needed) - [x] No unrelated changes included
feat: rename post authors to credited contacts
All checks were successful
CI / build-lint-test (pull_request) Successful in 1m38s
68aac1259f
Task: #task-7dfc311a
Author
Owner

PR review

Summary

Approved. This PR performs the intended model cleanup: contact-backed post credits now use credited-contact terminology across the service, API, CLI, docs, migration, OpenAPI, and public UI labels.

Acceptance criteria

  • Post create/update/list/get code uses creditContactIds and creditedContacts terminology for contact-backed credits.
  • Database schema/migrations use credit terminology for the post-to-contact credit relationship and preserve existing data.
  • Authenticated posts API accepts and returns the new credit fields according to the chosen compatibility policy.
  • OpenAPI/API docs describe credited contacts as external/content credit metadata, not local post authorship.
  • Public post UI no longer renders contact-backed credits as a local by author line.
  • Credited contacts work for article, link, and note posts and default to an empty list when omitted.
  • docs/identity-model.md is updated to reflect the new names and remaining follow-up decisions.
  • Tests cover create/update/list/get behavior for credited contacts and public UI labeling.
  • Relevant lint/typecheck/test/pre-PR checks pass.

Blocking issues

None.

Warnings

None.

Verification

  • ./scripts/pre-pr.sh passed locally.
  • Forgejo Actions run #198 passed (build-lint-test).

Final verdict

Approved. Ready for human merge approval.

## PR review ### Summary Approved. This PR performs the intended model cleanup: contact-backed post credits now use credited-contact terminology across the service, API, CLI, docs, migration, OpenAPI, and public UI labels. ### Acceptance criteria - [x] Post create/update/list/get code uses `creditContactIds` and `creditedContacts` terminology for contact-backed credits. - [x] Database schema/migrations use credit terminology for the post-to-contact credit relationship and preserve existing data. - [x] Authenticated posts API accepts and returns the new credit fields according to the chosen compatibility policy. - [x] OpenAPI/API docs describe credited contacts as external/content credit metadata, not local post authorship. - [x] Public post UI no longer renders contact-backed credits as a local `by` author line. - [x] Credited contacts work for `article`, `link`, and `note` posts and default to an empty list when omitted. - [x] `docs/identity-model.md` is updated to reflect the new names and remaining follow-up decisions. - [x] Tests cover create/update/list/get behavior for credited contacts and public UI labeling. - [x] Relevant lint/typecheck/test/pre-PR checks pass. ### Blocking issues None. ### Warnings None. ### Verification - `./scripts/pre-pr.sh` passed locally. - Forgejo Actions run #198 passed (`build-lint-test`). ### Final verdict Approved. Ready for human merge approval.
erik merged commit bfef694422 into main 2026-06-16 20:41:59 -05:00
erik deleted branch feat/task-7dfc311a-credited-contacts 2026-06-16 20:41:59 -05:00
Sign in to join this conversation.
No description provided.