Skip to content

content-model: journal - Reconcile entry metadata and loading #364

Open

Description

@ashleyshaw

Outcome

Align journal source metadata, validation and runtime card/detail models.

Verified context

journalContentLoader.ts targets absent /journal-content/; current content/journal/ uses journal-entry, while mock cards require other presentation fields.

Scope

Implement the adapter after shared import/publication decisions; preserve prior migration and slugs.

Acceptance criteria

Boundaries and sources

Creation defines work only; it does not start implementation. Preserve unrelated code, protected assets, editorial wording and existing records. Do not fabricate content, identity, media, manuscript chapters, dates or engagement data. Use approved repository-native authoring, validation, preview and publication decisions; do not provision an external CMS or database. Existing editorial verification remains with its current issues. All acceptance criteria remain unchecked until evidenced.

Repository evidence was inspected on develop at 4ecdb26d9655a48bf000a7c89da2f70383edce87. Recheck before implementation; no build or browser tests were run for this draft. Follow repository instructions and applicable Spec Kit requirements. Paths below refer to this repository.

Sources: repository instructions, application, editorial content.

Branch instructions

  • Repository: lightspeedwp/ThisOneTimeOnAcidCom
  • Proposed branch: feat/journal-markdown-adapter
  • Base: develop
  • Naming policy: local guide, validator, organisation strategy.
  • Pull request template: Organisation .github/PULL_REQUEST_TEMPLATE/pr_feature.md, per inspected local routing; recheck before opening a PR.
  • Constraints: Preserve unrelated changes; do not force-push, merge or deploy. Complete applicable Spec Kit requirements before implementation.
  • Conflicts or missing evidence: Proposed branch, not an existing branch; collision freedom is unverified. Recheck current branch routing and open governance changes, including PR automation: repo-governance - Add governance automation and validation #346. Older instructions claim branch rules are absent; the inspected local guide and executable validator establish the current convention. This draft creates no branch or pull request.

Branch instructions — verification addendum

For branch-existence and PR-template verification only, this addendum supersedes the earlier Branch instructions. Existing outcomes, scope, acceptance criteria and other constraints remain unchanged.

  • Repository: lightspeedwp/ThisOneTimeOnAcidCom
  • Implementing scope: this issue’s journal source discovery, metadata adaptation and malformed/draft fixture coverage.
  • Branch state: proposed new branch; existing proposal feat/journal-markdown-adapter, not found remotely at review.
  • Base: develop.
  • Naming evidence: local naming guide and validator at develop revision 4ecdb26d9655a48bf000a7c89da2f70383edce87; feat fits new runtime adaptation. Recheck before implementation.
  • Existing work: no journal-specific open PR found. Do not automatically reuse the broad governance branch build/repo-governance-continue-spec-001.
  • PR template: the shared organisation feature template is the current workflow suggestion only. Automatic branch-based selection, named-template loading and default-template inheritance remain unverified. Read the matching shared template when preparing the PR and use its sections; do not create local template files, modify shared locked templates or assume routing comments load template content.
  • Parent context: existing journal parent is coordination only, not a native PR development or closing target. Omit parent identifiers from reusable branch/PR text pending association verification.
  • Allowed closing targets: none currently; this issue requires complete acceptance evidence and verified mapping/effects before closing syntax is proposed.
  • Dependencies: approved shared import/publication policy and metadata contracts; applicable Spec Kit completion; runnable TS/Vite loader-test strategy. Current Jest discovery/transform configuration does not establish that coverage.
  • Constraints: preserve unrelated changes, editorial wording, slugs and protected assets. No force-push, merge or deployment.

Expected file changes

Provisional plan; existing paths checked at develop revision 4ecdb26d9655a48bf000a7c89da2f70383edce87. These are intended changes, not delivered or approved implementation.

Operation Path Intended change Evidence Dependency
Edit src/app/utils/journalContentLoader.ts Adapt approved discovery/metadata, reject malformed entries and isolate drafts Existing path at checked revision Shared source-authority/publication approval
Edit src/app/data/mock/pages/journal/types.ts Align entry shape with approved contract and optional presentation/media fields Existing path at checked revision Shared metadata contract
Edit, conditional src/app/data/mock/journal-posts.ts Reconcile card compatibility without inventing metadata or replacing protected image references Existing path at checked revision Confirm compatibility change is necessary

Shared reference files scripts/journal-schema.ts and scripts/parse-journal-markdown.ts are not automatically assigned to this issue. Coordinate with their existing owners rather than duplicating shared-schema/loading work.

Create: malformed-entry, README-exclusion, stable-slug and draft-isolation tests/fixtures are required by the scoped outcome, but exact new paths and runnable harness remain unresolved. Resolve those before treating the plan as complete.

Out of scope: editorial rewrites, README reconciliation, managed workflows, asset migration and unrelated shared-contract changes. Changelog changes require separate permission. This plan authorises no edits.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Fields

Priority

None yet

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions