Document identity model relationships #140

Closed
opened 2026-06-11 08:02:29 -05:00 by erik · 3 comments
Owner

Goal

Create a source-controlled identity model reference that visualizes the current Slugkit template-site code models, database tables, and intended authorship relationships using Mermaid diagrams.

Requirements

  • Add a new documentation page, likely docs/identity-model.md.
  • Include Mermaid diagrams that show the relationships between relevant TypeScript/code models and database tables.
  • Cover at minimum:
    • ActivityPub actor / primary actor settings
    • posts
    • contacts
    • sources
    • accounts
    • post author/contact relationships currently represented by authorIds, authors, and post_authors
    • management/auth identities such as admin login, API keys, and CLI identity
  • Include a terminology table mapping each concept to code models and database tables.
  • Clearly distinguish:
    • local post author/publisher
    • primary ActivityPub actor
    • external linked-content credit/source metadata
    • contacts
    • sources
    • management authentication identity
  • Document the current mismatch/confusion where authorIds are contact IDs even though the template-site intended local post author is the primary ActivityPub actor.
  • Include an "open questions" or "follow-up decisions" section for any model/API cleanup that should not be solved in the diagram-only task.
  • Keep this task documentation-only; do not change runtime behavior, schema, or APIs.

Acceptance criteria

  • docs/identity-model.md exists and renders Mermaid diagrams for the current relationships.
  • The document maps concepts to code models and database tables in a table.
  • The diagrams show both current database/code relationships and the intended template-site authorship model.
  • The document explicitly explains that admin/API/CLI identity is authentication/management identity, not public authorship.
  • The document explicitly explains that contacts/sources represent external metadata/credit, not the default local post author in the template-site model.
  • The document identifies the current authorIds/post_authors ambiguity as a follow-up design issue.
  • Relevant documentation formatting/checks pass.

Dependencies

  • None
## Goal Create a source-controlled identity model reference that visualizes the current Slugkit template-site code models, database tables, and intended authorship relationships using Mermaid diagrams. ## Requirements - Add a new documentation page, likely `docs/identity-model.md`. - Include Mermaid diagrams that show the relationships between relevant TypeScript/code models and database tables. - Cover at minimum: - ActivityPub actor / primary actor settings - posts - contacts - sources - accounts - post author/contact relationships currently represented by `authorIds`, `authors`, and `post_authors` - management/auth identities such as admin login, API keys, and CLI identity - Include a terminology table mapping each concept to code models and database tables. - Clearly distinguish: - local post author/publisher - primary ActivityPub actor - external linked-content credit/source metadata - contacts - sources - management authentication identity - Document the current mismatch/confusion where `authorIds` are contact IDs even though the template-site intended local post author is the primary ActivityPub actor. - Include an "open questions" or "follow-up decisions" section for any model/API cleanup that should not be solved in the diagram-only task. - Keep this task documentation-only; do not change runtime behavior, schema, or APIs. ## Acceptance criteria - [ ] `docs/identity-model.md` exists and renders Mermaid diagrams for the current relationships. - [ ] The document maps concepts to code models and database tables in a table. - [ ] The diagrams show both current database/code relationships and the intended template-site authorship model. - [ ] The document explicitly explains that admin/API/CLI identity is authentication/management identity, not public authorship. - [ ] The document explicitly explains that contacts/sources represent external metadata/credit, not the default local post author in the template-site model. - [ ] The document identifies the current `authorIds`/`post_authors` ambiguity as a follow-up design issue. - [ ] Relevant documentation formatting/checks pass. ## Dependencies - None
Author
Owner

Synced from todu comment by @todu on 2026-06-11T13:10:29.952Z

PR review

PR #141 reviewed and approved.

Acceptance criteria

  • 7 total
  • 7 met
  • 0 missing

Verification

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

Result

No blocking issues or warnings. Ready for human merge approval.

_Synced from todu comment by @todu on 2026-06-11T13:10:29.952Z_ ## PR review PR #141 reviewed and approved. ### Acceptance criteria - 7 total - 7 met - 0 missing ### Verification - `./scripts/pre-pr.sh` passed locally. - Forgejo Actions run #195 passed (`build-lint-test`). ### Result No blocking issues or warnings. Ready for human merge approval.
Author
Owner

Synced from todu comment by @todu on 2026-06-11T13:26:11.801Z

PR review update

PR #141 was updated to split the large Mermaid diagrams into smaller focused diagrams for readability.

Acceptance criteria

  • 7 total
  • 7 met
  • 0 missing

Verification

  • ./scripts/pre-pr.sh passed locally after the readability update.
  • Forgejo Actions run #196 passed (build-lint-test).

Result

No blocking issues or warnings. Ready for human merge approval.

_Synced from todu comment by @todu on 2026-06-11T13:26:11.801Z_ ## PR review update PR #141 was updated to split the large Mermaid diagrams into smaller focused diagrams for readability. ### Acceptance criteria - 7 total - 7 met - 0 missing ### Verification - `./scripts/pre-pr.sh` passed locally after the readability update. - Forgejo Actions run #196 passed (`build-lint-test`). ### Result No blocking issues or warnings. Ready for human merge approval.
erik 2026-06-12 07:30:25 -05:00
Author
Owner

Synced from todu comment by @todu on 2026-06-12T12:30:13.983Z

Closing summary

Acceptance criteria

  • 7 total
  • 7 met
  • 0 partial
  • 0 missing

Evidence

  • docs/identity-model.md exists on main after merge commit c394e90 from PR #141.
  • The document includes Mermaid diagrams for current database relationships, current code relationships, and the intended template-site authorship model.
  • The terminology table maps concepts to code models/modules and database tables.
  • The document explicitly separates primary ActivityPub authorship, contacts/sources as external metadata/credit, and admin/API/CLI management identity.
  • The authorIds/authors/post_authors ambiguity is documented as a follow-up design issue.
  • Repository history shows PR #141 changed only docs/identity-model.md.
  • Prior PR review evidence recorded ./scripts/pre-pr.sh passed and Forgejo Actions build-lint-test passed on run #196.

Result

Task is ready and has been closed.

_Synced from todu comment by @todu on 2026-06-12T12:30:13.983Z_ ## Closing summary ### Acceptance criteria - 7 total - 7 met - 0 partial - 0 missing ### Evidence - `docs/identity-model.md` exists on `main` after merge commit `c394e90` from PR #141. - The document includes Mermaid diagrams for current database relationships, current code relationships, and the intended template-site authorship model. - The terminology table maps concepts to code models/modules and database tables. - The document explicitly separates primary ActivityPub authorship, contacts/sources as external metadata/credit, and admin/API/CLI management identity. - The `authorIds`/`authors`/`post_authors` ambiguity is documented as a follow-up design issue. - Repository history shows PR #141 changed only `docs/identity-model.md`. - Prior PR review evidence recorded `./scripts/pre-pr.sh` passed and Forgejo Actions `build-lint-test` passed on run #196. ### Result Task is ready and has been closed.
Sign in to join this conversation.
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
erik/slugkit#140
No description provided.