{
  "$schema": "https://ndcodex.com/schemas/object/v1.json",
  "id": "codex://object/codex-archive-system-v3-12-marginalia-notes",
  "archive_id": "codex-archive-system-v3-12-marginalia-notes",
  "slug": "codex-archive-system-v3-12-marginalia-notes",
  "url": "https://ndcodex.com/objects/codex-archive-system-v3-12-marginalia-notes/",
  "type": "codex",
  "object_form": null,
  "title": "Codex Archive System V3.12 Marginalia Notes",
  "summary": "v3.12 adds a quiet marginalia layer: operator-authored fragments that attach to an object page without becoming their own public feed.",
  "content_text": "v3.12 extends Codex Archive System v3.11 Lattice Groundwork Notes.\n\nThese notes are now extended by Codex Archive System v3.12.1 Marginalia Live Publish Notes.\n\nUse v3.11 for coordinate-aware ingest, v3.12 for the first marginalia layer, and v3.12.1 for the live publish hardening pass that made the inline composer survive production submit.\n\nv3.12 is the marginalia release.\n\nOperator value prop:\n\nYou can now leave a small, object-local note directly on the reading surface and publish it through the existing Carrier Pigeon key flow without opening a separate ingest tool.\n\nReader value prop:\n\nPublished objects can now carry quiet after-notes and traces without turning ndcodex into a comment system, reply stack, or second timeline.\n\nWork chunks and wins:\n\nMarginalia now has a stable archive convention\n\nValue prop: the layer is real without requiring a taxonomy rewrite.\n\nReused fragment as the storage object instead of introducing a new type.\n\nTagged marginalia through origin: marginalia and attached it to the parent object with connections role note.\n\nKept the schema stable by relying on already-supported fragment, origin, visibility, and connection fields.\n\nObject pages now carry a dedicated marginalia stack\n\nValue prop: the mark lives where the reading happened.\n\nAdded a flat marginalia section below the object body.\n\nRendered marks oldest-first so the layer accumulates as trace rather than as ranking.\n\nAdded the same stack to the dedicated codex reading surface so codex notes do not lose the layer.\n\nOperator-only publishing now happens inline\n\nValue prop: the layer can be used in practice, not just described in theory.\n\nAdded an inline composer that reveals itself through operator action.\n\nReused the saved Carrier Pigeon browser key instead of inventing a second auth system.\n\nPublish now lands through the existing /api/pigeon path and appends into the visible stack immediately after submit.\n\nGlobal archive surfaces now ignore marginalia\n\nValue prop: the margin stays in the margin.\n\nHome feed, follow feeds, and related-object recommendations now treat marginalia as object-local support rather than primary archive inventory.\n\nThis preserves the no-global-scribbles rule while still keeping every mark as a real archived object.\n\nRelease-chain documentation is now aligned with the new layer\n\nValue prop: the system can respawn cleanly after the change.\n\nAdded this canonical v3.12 release object.\n\nAdvanced status, respawn, and current-state notes to the same version line.\n\nRecorded the marginalia release as a continuity move rather than an undocumented UI flourish.\n\nMinimum active state after v3.12:\n\nmarginalia is stored as fragment-backed archive content\n\nmarginalia renders inline on object pages and codex pages\n\noperator publishing works through the existing Carrier Pigeon key path\n\nmarginalia stays off the primary feed and follow surfaces\n\nno replies, likes, rankings, or public conversation mechanics were added\n\nNot yet active:\n\nshared/private collaborator tiers beyond the current operator-first path\n\npromotion from marginalia into a fully surfaced standalone fragment workflow\n\nmarginalia on every dedicated route surface outside the generic object page and codex page\n\nmoderation controls beyond normal source editing\n\nNo new object type is introduced in v3.12.\n\nNo social-comment workflow is introduced in v3.12.\n\nNo fragment-feed rollback is required to support marginalia in v3.12.\n\nImplementation note:\n\nThe point of v3.12 is restraint. The archive now supports a modest after-writing layer, but that layer is still governed like archive material, not social exhaust.",
  "content_markdown": "v3.12 extends [Codex Archive System v3.11 Lattice Groundwork Notes](/objects/codex-archive-system-v3-11-lattice-groundwork-notes).\nThese notes are now extended by [Codex Archive System v3.12.1 Marginalia Live Publish Notes](/objects/codex-archive-system-v3-12-marginalia-live-publish-notes).\nUse v3.11 for coordinate-aware ingest, v3.12 for the first marginalia layer, and v3.12.1 for the live publish hardening pass that made the inline composer survive production submit.\n\nv3.12 is the marginalia release.\n\nOperator value prop:\n- You can now leave a small, object-local note directly on the reading surface and publish it through the existing Carrier Pigeon key flow without opening a separate ingest tool.\n\nReader value prop:\n- Published objects can now carry quiet after-notes and traces without turning ndcodex into a comment system, reply stack, or second timeline.\n\nWork chunks and wins:\n\n1. Marginalia now has a stable archive convention\n   Value prop: the layer is real without requiring a taxonomy rewrite.\n   - Reused `fragment` as the storage object instead of introducing a new type.\n   - Tagged marginalia through `origin: marginalia` and attached it to the parent object with `connections` role `note`.\n   - Kept the schema stable by relying on already-supported fragment, origin, visibility, and connection fields.\n\n2. Object pages now carry a dedicated marginalia stack\n   Value prop: the mark lives where the reading happened.\n   - Added a flat marginalia section below the object body.\n   - Rendered marks oldest-first so the layer accumulates as trace rather than as ranking.\n   - Added the same stack to the dedicated codex reading surface so codex notes do not lose the layer.\n\n3. Operator-only publishing now happens inline\n   Value prop: the layer can be used in practice, not just described in theory.\n   - Added an inline composer that reveals itself through operator action.\n   - Reused the saved Carrier Pigeon browser key instead of inventing a second auth system.\n   - Publish now lands through the existing `/api/pigeon` path and appends into the visible stack immediately after submit.\n\n4. Global archive surfaces now ignore marginalia\n   Value prop: the margin stays in the margin.\n   - Home feed, follow feeds, and related-object recommendations now treat marginalia as object-local support rather than primary archive inventory.\n   - This preserves the no-global-scribbles rule while still keeping every mark as a real archived object.\n\n5. Release-chain documentation is now aligned with the new layer\n   Value prop: the system can respawn cleanly after the change.\n   - Added this canonical v3.12 release object.\n   - Advanced status, respawn, and current-state notes to the same version line.\n   - Recorded the marginalia release as a continuity move rather than an undocumented UI flourish.\n\nMinimum active state after v3.12:\n- marginalia is stored as fragment-backed archive content\n- marginalia renders inline on object pages and codex pages\n- operator publishing works through the existing Carrier Pigeon key path\n- marginalia stays off the primary feed and follow surfaces\n- no replies, likes, rankings, or public conversation mechanics were added\n\nNot yet active:\n- shared/private collaborator tiers beyond the current operator-first path\n- promotion from marginalia into a fully surfaced standalone fragment workflow\n- marginalia on every dedicated route surface outside the generic object page and codex page\n- moderation controls beyond normal source editing\n\nNo new object type is introduced in v3.12.\nNo social-comment workflow is introduced in v3.12.\nNo fragment-feed rollback is required to support marginalia in v3.12.\n\nImplementation note:\n- The point of v3.12 is restraint. The archive now supports a modest after-writing layer, but that layer is still governed like archive material, not social exhaust.",
  "author": {
    "id": "nathan-davis",
    "name": "Nathan Davis",
    "designation": "Archive Operator",
    "role": "Archive Operator",
    "handle": "@nathandavis",
    "avatar": "/media/people/nathan-davis.jpg",
    "bio": "Designer, builder, and curator of the Codex Archive."
  },
  "contributors": [
    {
      "id": "nathan-davis",
      "name": "Nathan Davis",
      "designation": "Archive Operator",
      "role": "Archive Operator",
      "handle": "@nathandavis",
      "avatar": "/media/people/nathan-davis.jpg",
      "bio": "Designer, builder, and curator of the Codex Archive."
    }
  ],
  "date_published": "2026-03-17T22:20:00.000Z",
  "date_modified": "2026-03-17T22:20:00.000Z",
  "status": "published",
  "visibility": "public",
  "language": "en-US",
  "axes": {
    "scale": "macro",
    "depth": "structural",
    "focus": "system",
    "function": "revelatory"
  },
  "themes": [
    "systems",
    "methodology",
    "fragments",
    "publishing",
    "continuity"
  ],
  "constellations": [
    "Maintenance Psalms"
  ],
  "tags": [
    "systems",
    "methodology",
    "fragments",
    "publishing",
    "continuity"
  ],
  "keywords": [
    "Codex",
    "systems",
    "methodology",
    "fragments",
    "publishing",
    "continuity",
    "Maintenance Psalms"
  ],
  "relations": [
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-12-marginalia-live-publish-notes",
      "slug": "codex-archive-system-v3-12-marginalia-live-publish-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-12-marginalia-live-publish-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-11-lattice-groundwork-notes",
      "slug": "codex-archive-system-v3-11-lattice-groundwork-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-11-lattice-groundwork-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/carrier-pigeon-publishing-system",
      "slug": "carrier-pigeon-publishing-system",
      "url": "https://ndcodex.com/objects/carrier-pigeon-publishing-system/"
    },
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-2-fragment-feed-notes",
      "slug": "codex-archive-system-v3-2-fragment-feed-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-2-fragment-feed-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/the-bones-hold-content-architecture",
      "slug": "the-bones-hold-content-architecture",
      "url": "https://ndcodex.com/objects/the-bones-hold-content-architecture/"
    },
    {
      "kind": "dependency",
      "target": "codex://object/codex-archive-system-v3-11-lattice-groundwork-notes",
      "slug": "codex-archive-system-v3-11-lattice-groundwork-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-11-lattice-groundwork-notes/"
    },
    {
      "kind": "dependency",
      "target": "codex://object/carrier-pigeon-publishing-system",
      "slug": "carrier-pigeon-publishing-system",
      "url": "https://ndcodex.com/objects/carrier-pigeon-publishing-system/"
    },
    {
      "kind": "dependency",
      "target": "codex://object/codex-archive-system-v3-2-fragment-feed-notes",
      "slug": "codex-archive-system-v3-2-fragment-feed-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-2-fragment-feed-notes/"
    },
    {
      "kind": "connection",
      "target": "codex://object/codex-archive-system-v3-11-lattice-groundwork-notes",
      "slug": "codex-archive-system-v3-11-lattice-groundwork-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-11-lattice-groundwork-notes/",
      "role": "previous version",
      "display": "feature"
    },
    {
      "kind": "connection",
      "target": "codex://object/codex-archive-system-v3-12-marginalia-live-publish-notes",
      "slug": "codex-archive-system-v3-12-marginalia-live-publish-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-12-marginalia-live-publish-notes/",
      "role": "next update",
      "display": "inline"
    },
    {
      "kind": "connection",
      "target": "codex://object/carrier-pigeon-publishing-system",
      "slug": "carrier-pigeon-publishing-system",
      "url": "https://ndcodex.com/objects/carrier-pigeon-publishing-system/",
      "role": "operator auth path",
      "display": "inline"
    },
    {
      "kind": "connection",
      "target": "codex://object/codex-archive-system-v3-2-fragment-feed-notes",
      "slug": "codex-archive-system-v3-2-fragment-feed-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-2-fragment-feed-notes/",
      "role": "fragment precedent",
      "display": "feature"
    },
    {
      "kind": "connection",
      "target": "codex://object/the-bones-hold-content-architecture",
      "slug": "the-bones-hold-content-architecture",
      "url": "https://ndcodex.com/objects/the-bones-hold-content-architecture/",
      "role": "object-surface continuity",
      "display": "inline"
    }
  ],
  "media": [],
  "capture": null
}