Skip to content

backlog: Otto-180 Server Meshing + SpacetimeDB deep research — game-industry competitive angle#352

Merged
AceHack merged 3 commits intomainfrom
backlog/otto-180-server-meshing-spacetime-db-research
Apr 24, 2026
Merged

backlog: Otto-180 Server Meshing + SpacetimeDB deep research — game-industry competitive angle#352
AceHack merged 3 commits intomainfrom
backlog/otto-180-server-meshing-spacetime-db-research

Conversation

@AceHack
Copy link
Copy Markdown
Member

@AceHack AceHack commented Apr 24, 2026

Summary

Aaron Otto-180: "also backlog server mesh from star citizen, our db backend when we shard it should support this style of cross shard communication like server mesh, it's amazing actually, i think space time db is similar too or not it might be orthogonal but we want to support these use cases in our backend too. do deep reserach here, this could get us lots of customers in the game industruy if we can compete with server mess/space time db".

Explicit backlog directive overrides Otto-171 freeze-state queue discipline.

Two architectures to research (likely orthogonal, Aaron's intuition is right)

  • Server Meshing (CIG / Star Citizen) — horizontal-scaling across game servers; entity handoff + state propagation across meshed-server boundaries.
  • SpacetimeDB (Clockwork Labs, Apache-2) — DB + server unified; "the database IS the server" pitch; 1000x cheaper + faster claim vs traditional MMO backend.

Zeta differentiators identified

  • Retraction-native semantics = native rollback / lag-comp / failed-transaction recovery
  • Time-travel queries compose with replay / match-review
  • Columnar storage serves game-economy analytics

Deliverable

docs/research/server-meshing-spacetimedb-comparison-zeta-sharding-fit.md with 5 sections: SM architecture / SpacetimeDB architecture / Zeta-sharding fit / competitive positioning / integration scenarios.

Customer-industry angle

3-5 named studio-types (MMO / sim / esports / mobile persistent / VR-social) with value-proposition per segment.

IP discipline

Same pattern as Otto-175c / Scientology rows: public CIG Inside-Star-Citizen + RSI blog content OK; SpacetimeDB Apache-2 code study OK; no adoption of CIG proprietary architecture docs, no positioning as CIG-adjacent / SpacetimeDB-adjacent in public branding.

Placement

P2 research-grade at line ~921 (end of "## P2 — Post-v1 query-surface research" section). NOT BACKLOG tail — 53 DIRTY siblings on tail; placing here avoids cascading another positional-append conflict.

Test plan

  • Markdownlint clean.
  • BACKLOG-only; no code changes.
  • Placement away from DIRTY-saturated tail.

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings April 24, 2026 10:14
@AceHack AceHack enabled auto-merge (squash) April 24, 2026 10:14
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 55ce0fac69

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/BACKLOG.md Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new P2 backlog research item describing a planned deep-dive into Server Meshing (Star Citizen/CIG) and SpacetimeDB, framed as input to Zeta’s eventual multi-node/sharding design and game-industry competitive positioning.

Changes:

  • Adds a detailed P2 backlog entry covering research scope, differentiators, deliverable doc target, and IP-discipline constraints.

Comment thread docs/BACKLOG.md Outdated
Comment thread docs/BACKLOG.md Outdated
Comment thread docs/BACKLOG.md Outdated
Comment thread docs/BACKLOG.md Outdated
AceHack added a commit that referenced this pull request Apr 24, 2026
Applying PR-resolve-loop discipline to #352. 5 unresolved
review threads (Copilot P2 inline-code-span + P1 cross-ref
drift + P2 IP-discipline ambiguity + P1 inline-code-span
duplicate + P1 line-reference drift). 4 addressed in this
commit; resolution replies to follow via GraphQL.

1. Inline code span split across lines 1008-1009 (Copilot
   P2 threads 59XP74 + 59XSRN, duplicate finding): Moved
   the multi-line `docs/research/server-meshing-*.md` path
   onto its own line so the backtick-delimited span renders
   atomically per CommonMark. No more rendering risk.

2. "Otto-175c starship-franchise-mapping row" cross-ref
   that didn't resolve (Copilot P1 thread 59XSQc): Clarified
   the reference to note the row landed in PR #351 (merged).
   Amara 10th + 11th ferry cross-refs updated to point at
   their archived location under `docs/aurora/2026-04-24-
   amara-*.md` paths.

3. Wire-protocol row line-number reference was `~754`,
   actual location is `~830` (Copilot P1 thread 59XSRf):
   Corrected the line hint.

4. "No Star-Citizen trademarked content ingested" IP-
   discipline bullet was ambiguous — the row itself uses
   trademarked names for reference (Copilot P2 thread
   59XSQz): Rewrote the discipline block to explicitly
   distinguish industry-landscape reference (permitted)
   from proprietary-content ingestion (excluded), with
   specific "research-permitted" boundaries for CIG's
   public Inside-Star-Citizen + RSI content and for
   SpacetimeDB's Apache-2 repo.

Framing: this commit demonstrates the PR-resolve-loop
pattern (BACKLOG row Otto-204, PR #356) on a second PR
after the pattern was first applied to #354. Active
management vs ship-and-pray. Part of the corrective
response to Otto-204c livelock-diagnosis.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 44825a88fc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/BACKLOG.md Outdated
AceHack added a commit that referenced this pull request Apr 24, 2026
PR-resolve-loop applied to #336 (KSK naming definition doc).
1 CI failure + 6 unresolved review threads.

CI fix:

- docs/definitions/KSK.md:19 MD026/no-trailing-punctuation:
  "## In this project, KSK means..." → "## In this project,
  KSK means" (dropped the three dots in the heading).

Review-thread fixes:

1. docs/GLOSSARY.md:819 — "LFG/lucent-ksk" read as in-repo
   path: Rewrote to explicitly mark as the external
   repository at https://github.com/Lucent-Financial-Group/
   lucent-ksk, clarified "not a local LFG/ directory in
   this repo."

2. docs/definitions/KSK.md:158 — named individuals in
   Attribution section violated factory name-attribution
   policy: Rewrote using role references ("the human
   maintainer", "an external AI collaborator", "a trusted
   external contributor"). Direct names preserved only in
   audit-trail surfaces per policy (commit messages,
   tick-history, session memory).

3. docs/definitions/KSK.md:153 — cross-reference to
   memory/feedback_ksk_naming_unblocked_*.md that didn't
   exist in repo: Removed path reference entirely; the
   factual substance was restated in role-based prose
   without a broken-link dependency.

4. docs/definitions/KSK.md:180 — "LFG/lucent-ksk" repeated
   same in-repo-path confusion as GLOSSARY: Applied same
   fix (external repo URL + explicit "separate repo"
   framing).

5. docs/definitions/KSK.md:207 — cross-reference list
   included `docs/aurora/*-5th-ferry-*`, `*-12th-ferry-*`,
   `*-14th-ferry-*`, `*-16th-ferry-*` globs that resolve
   to zero files in the current tree: Rewrote list to
   enumerate only verified in-repo references (6th / 7th /
   17th / 19th ferries that actually exist); added
   explicit note that earlier ferries (5th / 12th / 14th
   / 16th) live in ROUND-HISTORY + session memory rather
   than as standalone docs.

6. docs/definitions/KSK.md:191 — literal "+" continuation
   line violating markdownlint + repo convention: resolved
   as a side-effect of the Attribution rewrite — the
   replacement prose doesn't use "+" continuations.

Framing: third PR where PR-resolve-loop discipline is
applied (after #354 and #352). Active management continues.
Compound lesson from Otto-204c: prior-session review-
resolution precedents now integrated into per-tick habit,
not just sitting in memory.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
Resolves 5 P1 review threads all reporting the same class of issue:
inline-code spans (backticks) and URLs broken across newlines.

CommonMark inline-code spans cannot span newlines — the `span` is
literally broken as rendered, and readers cannot copy the path
cleanly. Same for URLs: Markdown auto-linkers stop at whitespace.

Fix pattern: move the full backticked path (or URL) onto its own
line, wrapping the surrounding prose instead. No content removed.

Threads addressed:
- 59Vtvx — OpenAI Frontier URL split across line break
- 59WtwY — `docs/research/frontier-ux-zora-evolution-*.md`
  split (first occurrence, Class-a list)
- 59Wtwq — `memory/feedback_aaron_dont_wait_on_approval_log_
  decisions_frontier_ui_is_his_review_surface_*.md` split;
  also updated to the concrete landed filename
- 59Wtw8 — same UX design-doc path split (Composition section)
- 59WtxM — `docs/definitions/KSK.md` split

Same fix pattern as PR #352 (server-meshing-*.md path).
AceHack and others added 3 commits April 24, 2026 08:52
…ndustry competitive angle

Aaron Otto-180: "also backlog server mesh from star citizen,
our db backend when we shard it should support this style of
cross shard communication like server mesh, it's amazing
actually, i think space time db is similar too or not it
might be orthogonal but we want to support these use cases
in our backend too. do deep reserach here, this could get us
lots of customers in the game industruy if we can compete
with server mess/space time db".

Two architectures to research (Aaron's "might be orthogonal"
intuition is correct):

1. Server Meshing (CIG / Star Citizen) — horizontal-scaling
   across many game servers; entity handoff + state
   propagation at server boundaries. Static vs Dynamic Server
   Meshing both in scope.

2. SpacetimeDB (Clockwork Labs, Apache-2) — vertical-
   integration of DB + server; reducers as stored-procedure-
   like functions; "the database IS the server" pitch;
   claims 1000x cheaper + faster than traditional MMO
   backend.

Zeta's retraction-native DBSP substrate can plausibly
support EITHER pattern (or both). Competitive differentiators
identified:

- Retraction-native semantics (native rollback /
  lag-compensation / failed-transaction recovery).
- Time-travel queries compose with persistent-universe
  replay / match-review.
- Columnar storage serves game-economy analytics.

CIG / RSI attribution preserved (Aaron supplied): Cloud
Imperium Games = developer; Roberts Space Industries =
publishing/marketing subsidiary + in-game ship manufacturer;
founded April 2012 by Chris Roberts.

Research deliverable: docs/research/server-meshing-
spacetimedb-comparison-zeta-sharding-fit.md with 5 sections
(SM architecture / SpacetimeDB architecture / Zeta fit /
competitive positioning / integration scenarios).

Customer-industry angle: 3-5 named studio-types (MMO / sim /
esports / mobile persistent / VR-social) with value-
proposition per segment.

IP discipline (same pattern as Otto-175c + Scientology rows):
no CIG proprietary content ingested beyond public Inside-
Star-Citizen + RSI blog; SpacetimeDB Apache-2 code study
fine; no positioning as CIG-adjacent or SpacetimeDB-
adjacent in public branding (technical reference OK).

Priority P2 research-grade; effort L (deep research) +
L (design ADR when sharding graduates). Waits on Zeta
multi-node foundation (not yet shipped).

Placed in "## P2 — Post-v1 query-surface research" section
at line ~921 — NOT BACKLOG tail — to avoid positional-
append conflict pattern (53 DIRTY siblings on tail).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Applying PR-resolve-loop discipline to #352. 5 unresolved
review threads (Copilot P2 inline-code-span + P1 cross-ref
drift + P2 IP-discipline ambiguity + P1 inline-code-span
duplicate + P1 line-reference drift). 4 addressed in this
commit; resolution replies to follow via GraphQL.

1. Inline code span split across lines 1008-1009 (Copilot
   P2 threads 59XP74 + 59XSRN, duplicate finding): Moved
   the multi-line `docs/research/server-meshing-*.md` path
   onto its own line so the backtick-delimited span renders
   atomically per CommonMark. No more rendering risk.

2. "Otto-175c starship-franchise-mapping row" cross-ref
   that didn't resolve (Copilot P1 thread 59XSQc): Clarified
   the reference to note the row landed in PR #351 (merged).
   Amara 10th + 11th ferry cross-refs updated to point at
   their archived location under `docs/aurora/2026-04-24-
   amara-*.md` paths.

3. Wire-protocol row line-number reference was `~754`,
   actual location is `~830` (Copilot P1 thread 59XSRf):
   Corrected the line hint.

4. "No Star-Citizen trademarked content ingested" IP-
   discipline bullet was ambiguous — the row itself uses
   trademarked names for reference (Copilot P2 thread
   59XSQz): Rewrote the discipline block to explicitly
   distinguish industry-landscape reference (permitted)
   from proprietary-content ingestion (excluded), with
   specific "research-permitted" boundaries for CIG's
   public Inside-Star-Citizen + RSI content and for
   SpacetimeDB's Apache-2 repo.

Framing: this commit demonstrates the PR-resolve-loop
pattern (BACKLOG row Otto-204, PR #356) on a second PR
after the pattern was first applied to #354. Active
management vs ship-and-pray. Part of the corrective
response to Otto-204c livelock-diagnosis.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings April 24, 2026 12:53
@AceHack AceHack force-pushed the backlog/otto-180-server-meshing-spacetime-db-research branch from 44825a8 to 255ac9a Compare April 24, 2026 12:53
AceHack added a commit that referenced this pull request Apr 24, 2026
Resolves 5 P1 review threads all reporting the same class of issue:
inline-code spans (backticks) and URLs broken across newlines.

CommonMark inline-code spans cannot span newlines — the `span` is
literally broken as rendered, and readers cannot copy the path
cleanly. Same for URLs: Markdown auto-linkers stop at whitespace.

Fix pattern: move the full backticked path (or URL) onto its own
line, wrapping the surrounding prose instead. No content removed.

Threads addressed:
- 59Vtvx — OpenAI Frontier URL split across line break
- 59WtwY — `docs/research/frontier-ux-zora-evolution-*.md`
  split (first occurrence, Class-a list)
- 59Wtwq — `memory/feedback_aaron_dont_wait_on_approval_log_
  decisions_frontier_ui_is_his_review_surface_*.md` split;
  also updated to the concrete landed filename
- 59Wtw8 — same UX design-doc path split (Composition section)
- 59WtxM — `docs/definitions/KSK.md` split

Same fix pattern as PR #352 (server-meshing-*.md path).
@AceHack AceHack merged commit 3484e7b into main Apr 24, 2026
12 checks passed
@AceHack AceHack deleted the backlog/otto-180-server-meshing-spacetime-db-research branch April 24, 2026 12:55
AceHack added a commit that referenced this pull request Apr 24, 2026
…ame factory UI (#348)

* backlog: Otto-168 "Frontier" naming conflict with OpenAI Frontier — rename factory UI

Aaron Otto-168: "i just found this https://openai.com/index/
introducing-openai-frontier/ ... naming conflicts ... also
absorb everyting lol, it composes nicely ... backlog"

OpenAI announced an "OpenAI Frontier" (Otto-168 WebFetch got
403; scope TBD next tick via WebSearch or URL-retry). Factory
currently uses "Frontier UI / Frontier UX" as the public-
facing user-UI layer name. Brand conflict.

Three-class usage scope locked so rename surgically targets
the conflicting usage without disrupting technical or
industry vocabulary:

(a) CONFLICTING (rename): frontier-ux-zora-evolution design
    doc, "Frontier UI/Frontier plugin" BACKLOG rows, memory
    pointers.
(b) TECHNICAL-LITERATURE (keep): Timely-Dataflow antichain
    frontier, Naiad partial-order composition, bloom-filter
    research frontier.
(c) INDUSTRY-TERM (keep): "frontier model", "frontier LLM",
    frontier-environment confidence memory.

Rename candidates (Zora / Starboard / Bridge / Horizon /
Vantage / Aurora) with analysis; Aaron + naming-expert make
the call. 6-step action sequence filed.

Non-actions: don't rename literature/industry uses; don't
ship same-tick as discovery; don't pick name unilaterally.

Composition: Aurora+Zeta+KSK naming triangle stays intact;
DST+Cartel-Lab+Veridicality internal module names unaffected.

Priority P1 (active brand conflict); effort 3×S (scope
research + naming + rename PR).

Placed under P2 research-grade section (adjacent to Frontier
plugin inventory row, line ~4360), not BACKLOG tail — avoids
positional-append conflict pattern that cost #334 this
session.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* backlog: Otto-169 WebSearch completes OpenAI Frontier scope research — severity HIGH

WebSearch unblocked the deferred Otto-168 URL-research. OpenAI
Frontier (launched 2026-02-05) is a full enterprise AI-agent
platform — not internal research, not a model name. Direct
overlap with the factory's "Frontier UI" agent-orchestration
space. Consulting-partnership distribution (Accenture / BCG /
Capgemini / McKinsey) guarantees wide enterprise-AI
dissemination.

Severity assessment: HIGH. Filed inline to the existing BACKLOG
row.

Action sequence steps 1 (scope fetch) + 2 (severity) now
complete; steps 3-6 (naming-expert + Aaron final call +
rename PR + memory archive) still pending.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(#348): markdown inline-code spans + URL continuous on one line

Resolves 5 P1 review threads all reporting the same class of issue:
inline-code spans (backticks) and URLs broken across newlines.

CommonMark inline-code spans cannot span newlines — the `span` is
literally broken as rendered, and readers cannot copy the path
cleanly. Same for URLs: Markdown auto-linkers stop at whitespace.

Fix pattern: move the full backticked path (or URL) onto its own
line, wrapping the surrounding prose instead. No content removed.

Threads addressed:
- 59Vtvx — OpenAI Frontier URL split across line break
- 59WtwY — `docs/research/frontier-ux-zora-evolution-*.md`
  split (first occurrence, Class-a list)
- 59Wtwq — `memory/feedback_aaron_dont_wait_on_approval_log_
  decisions_frontier_ui_is_his_review_surface_*.md` split;
  also updated to the concrete landed filename
- 59Wtw8 — same UX design-doc path split (Composition section)
- 59WtxM — `docs/definitions/KSK.md` split

Same fix pattern as PR #352 (server-meshing-*.md path).

* fix(#348): 2 review threads — Otto-63 dangling ref + KSK.md proposed-path clarification

---------

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 3 comments.

Comment thread docs/BACKLOG.md
Comment on lines +1300 to +1303
protocol row (around line 830) + Regular-database
façade row (above) + Otto-175c starship-franchise-
mapping row (Star Citizen thematic research row
filed in PR #351; landed on main). Waits on Zeta
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The cross-reference Pluggable wire-protocol row (around line 830) is out of date: that row currently starts at line 1056 in this file. Suggest either updating the line number to the current location or replacing the fragile line-number reference with a stable identifier (e.g., the row title) to avoid repeated drift as BACKLOG.md grows.

Suggested change
protocol row (around line 830) + Regular-database
façade row (above) + Otto-175c starship-franchise-
mapping row (Star Citizen thematic research row
filed in PR #351; landed on main). Waits on Zeta
protocol row (above) + Regular-database façade row
(above) + Otto-175c starship-franchise-mapping row
(Star Citizen thematic research row filed in PR
#351; landed on main). Waits on Zeta

Copilot uses AI. Check for mistakes.
Comment thread docs/BACKLOG.md
Comment on lines +1305 to +1309
Amara ferries referencing the multi-node future (the
11th-ferry-Temporal-Coordination-Detection + 12th-
ferry-Executive-Summary cross-references) are the
relevant priors; both are pending absorb (not yet
landed under `docs/aurora/`).
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The references to 11th-ferry-Temporal-Coordination-Detection and 12th-ferry-Executive-Summary don’t resolve to any existing docs under docs/aurora/ in the repo. Please either link to the concrete existing Amara ferry docs you mean (file paths) or remove/rename these identifiers so the backlog entry doesn’t contain dangling xrefs.

Suggested change
Amara ferries referencing the multi-node future (the
11th-ferry-Temporal-Coordination-Detection + 12th-
ferry-Executive-Summary cross-references) are the
relevant priors; both are pending absorb (not yet
landed under `docs/aurora/`).
Amara ferry material referencing the multi-node
future is the relevant prior, but that material is
still pending absorb and has not yet landed under
`docs/aurora/`).

Copilot uses AI. Check for mistakes.
Comment thread docs/BACKLOG.md
Comment on lines +1281 to +1285
- No ingestion of SpacetimeDB proprietary code or docs
beyond what's published under their Apache-2 license
at `clockworklabs/SpacetimeDB`. Public code study +
architecture-paper reading is research-permitted.
study is fine).
Copy link

Copilot AI Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wording in the SpacetimeDB IP-discipline bullet is internally inconsistent: it says "SpacetimeDB proprietary code" but the next clause frames the allowed scope as the public Apache-2 repo. Consider rephrasing to "non-public/private SpacetimeDB materials" (and explicitly allow Apache-2 repo + published docs) to avoid implying the Apache-2 code is proprietary.

Suggested change
- No ingestion of SpacetimeDB proprietary code or docs
beyond what's published under their Apache-2 license
at `clockworklabs/SpacetimeDB`. Public code study +
architecture-paper reading is research-permitted.
study is fine).
- No ingestion of non-public/private SpacetimeDB
materials. Public Apache-2-licensed code at
`clockworklabs/SpacetimeDB`, plus published docs and
architecture-paper reading, is research-permitted.

Copilot uses AI. Check for mistakes.
AceHack added a commit that referenced this pull request Apr 24, 2026
PR-resolve-loop applied to #336 (KSK naming definition doc).
1 CI failure + 6 unresolved review threads.

CI fix:

- docs/definitions/KSK.md:19 MD026/no-trailing-punctuation:
  "## In this project, KSK means..." → "## In this project,
  KSK means" (dropped the three dots in the heading).

Review-thread fixes:

1. docs/GLOSSARY.md:819 — "LFG/lucent-ksk" read as in-repo
   path: Rewrote to explicitly mark as the external
   repository at https://github.com/Lucent-Financial-Group/
   lucent-ksk, clarified "not a local LFG/ directory in
   this repo."

2. docs/definitions/KSK.md:158 — named individuals in
   Attribution section violated factory name-attribution
   policy: Rewrote using role references ("the human
   maintainer", "an external AI collaborator", "a trusted
   external contributor"). Direct names preserved only in
   audit-trail surfaces per policy (commit messages,
   tick-history, session memory).

3. docs/definitions/KSK.md:153 — cross-reference to
   memory/feedback_ksk_naming_unblocked_*.md that didn't
   exist in repo: Removed path reference entirely; the
   factual substance was restated in role-based prose
   without a broken-link dependency.

4. docs/definitions/KSK.md:180 — "LFG/lucent-ksk" repeated
   same in-repo-path confusion as GLOSSARY: Applied same
   fix (external repo URL + explicit "separate repo"
   framing).

5. docs/definitions/KSK.md:207 — cross-reference list
   included `docs/aurora/*-5th-ferry-*`, `*-12th-ferry-*`,
   `*-14th-ferry-*`, `*-16th-ferry-*` globs that resolve
   to zero files in the current tree: Rewrote list to
   enumerate only verified in-repo references (6th / 7th /
   17th / 19th ferries that actually exist); added
   explicit note that earlier ferries (5th / 12th / 14th
   / 16th) live in ROUND-HISTORY + session memory rather
   than as standalone docs.

6. docs/definitions/KSK.md:191 — literal "+" continuation
   line violating markdownlint + repo convention: resolved
   as a side-effect of the Attribution rewrite — the
   replacement prose doesn't use "+" continuations.

Framing: third PR where PR-resolve-loop discipline is
applied (after #354 and #352). Active management continues.
Compound lesson from Otto-204c: prior-session review-
resolution precedents now integrated into per-tick habit,
not just sitting in memory.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
…2..145) (#336)

* docs: KSK naming definition doc — resolves Amara 16th-ferry correction #7

Canonical expansion locked by Aaron Otto-142..145 (self-correcting
transient Otto-141 "SDK" typo): **KSK = Kinetic Safeguard Kernel**.

"Kernel" here is used in the safety-kernel / security-kernel sense
(Anderson 1972 reference-monitor, Saltzer-Schroeder complete-
mediation, aviation safety-kernel) — **NOT** an OS-kernel (not
Linux / Windows / BSD ring-0 / kernel-mode). The lead paragraph of
the doc makes this distinction up-front so readers coming from
OS-kernel contexts do not misinterpret.

Doc content (docs/definitions/KSK.md):

- "In this project, KSK means..." definitional anchor with the
  k1/k2/k3 + revocable-budgets + multi-party-consent + signed-
  receipts + traffic-light + optional-anchoring mechanism set
  (per Amara 5th ferry, ratified 7th/16th/17th)
- "Inspired by..." DNSSEC KSK, DNSCrypt + threshold-sig
  ceremonies, security kernels (Anderson / Saltzer-Schroeder),
  aviation safety kernels, microkernel OS lineage
- "NOT identical to..." OS kernel, DNSSEC KSK, generic
  root-of-trust, blockchain/ledger, policy engine (OPA Rego /
  XACML), authentication system
- Attribution + provenance: Aaron + Amara concept owners; Max
  initial-starting-point in LFG/lucent-ksk (preserved per
  Otto-77 attribution; rewrite authority per Otto-140)
- Relationship to Zeta / Aurora / lucent-ksk triangle
- Cross-references to 5 prior courier ferries

Also added glossary pointer entry (`### KSK (Kinetic Safeguard
Kernel)`) placed under "## Meta-algorithms and factory-native
coinages" section with plain + technical definition and pointer
to the full doc.

Addresses:
- Amara 16th-ferry §4 (KSK naming stabilization needed)
- Amara 17th-ferry correction #7 (stabilization still pending)
- BACKLOG row 4278 (updated in-place to reflect landing)

Authority: Aaron Otto-140 rewrite approved (Max-coordination
gate lifted; Max attribution preserved).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(#336): markdownlint MD026 + 5 review-thread P1s

PR-resolve-loop applied to #336 (KSK naming definition doc).
1 CI failure + 6 unresolved review threads.

CI fix:

- docs/definitions/KSK.md:19 MD026/no-trailing-punctuation:
  "## In this project, KSK means..." → "## In this project,
  KSK means" (dropped the three dots in the heading).

Review-thread fixes:

1. docs/GLOSSARY.md:819 — "LFG/lucent-ksk" read as in-repo
   path: Rewrote to explicitly mark as the external
   repository at https://github.com/Lucent-Financial-Group/
   lucent-ksk, clarified "not a local LFG/ directory in
   this repo."

2. docs/definitions/KSK.md:158 — named individuals in
   Attribution section violated factory name-attribution
   policy: Rewrote using role references ("the human
   maintainer", "an external AI collaborator", "a trusted
   external contributor"). Direct names preserved only in
   audit-trail surfaces per policy (commit messages,
   tick-history, session memory).

3. docs/definitions/KSK.md:153 — cross-reference to
   memory/feedback_ksk_naming_unblocked_*.md that didn't
   exist in repo: Removed path reference entirely; the
   factual substance was restated in role-based prose
   without a broken-link dependency.

4. docs/definitions/KSK.md:180 — "LFG/lucent-ksk" repeated
   same in-repo-path confusion as GLOSSARY: Applied same
   fix (external repo URL + explicit "separate repo"
   framing).

5. docs/definitions/KSK.md:207 — cross-reference list
   included `docs/aurora/*-5th-ferry-*`, `*-12th-ferry-*`,
   `*-14th-ferry-*`, `*-16th-ferry-*` globs that resolve
   to zero files in the current tree: Rewrote list to
   enumerate only verified in-repo references (6th / 7th /
   17th / 19th ferries that actually exist); added
   explicit note that earlier ferries (5th / 12th / 14th
   / 16th) live in ROUND-HISTORY + session memory rather
   than as standalone docs.

6. docs/definitions/KSK.md:191 — literal "+" continuation
   line violating markdownlint + repo convention: resolved
   as a side-effect of the Attribution rewrite — the
   replacement prose doesn't use "+" continuations.

Framing: third PR where PR-resolve-loop discipline is
applied (after #354 and #352). Active management continues.
Compound lesson from Otto-204c: prior-session review-
resolution precedents now integrated into per-tick habit,
not just sitting in memory.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(#336): 2 review threads — ROUND-HISTORY claim + ferry cross-ref numbers

- Thread PRRT_kwDOSF9kNM59YL4x (line 219): ROUND-HISTORY.md
  claim was false (grep confirms zero 'ferry' references and
  no tick rows); repointed to
  docs/hygiene-history/loop-tick-history.md where ferries and
  tick rows actually live.
- Thread PRRT_kwDOSF9kNM59YL4- (line 151): parenthetical
  listed 5th/7th/12th/14th/16th/17th but Cross-references is
  authoritative with 6th/7th/12th/17th/19th; aligned the
  parenthetical to match the verified in-repo list.

---------

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
…ll (10 PRs)

Otto-207: maintainer "are we saving these yet gitnative and
have we backfilled them yet?" Honest answer was NO — the
PR-preservation BACKLOG row (Otto-150..154, PR #335 in queue)
specifies the discipline but never shipped the capture
tooling. This PR ships the minimal viable implementation
+ backfills 10 PRs from this session.

New tool:

- tools/pr-preservation/archive-pr.sh — one-shot bash
  script that fetches a PR's review threads, reviews, and
  comments via `gh api graphql` and writes them to
  docs/pr-discussions/PR-<N>-<slug>.md with YAML
  frontmatter (pr_number / title / author / state / dates
  / refs / archived_at / archive_tool).
- tools/pr-preservation/README.md — scope (Phase 0
  minimal vs Phase 1-4 longer plan), usage, output
  schema, backfill status, dependencies (bash + python3
  + gh; no external packages), cross-references to
  Otto-171 / Otto-204 / Otto-204c / PR #335.

Backfill (10 PRs archived this tick):

- PR #354 backlog-split Phase 1a
- PR #352 Server Meshing + SpacetimeDB research
- PR #336 KSK naming definition doc
- PR #342 calibration-harness Stage-2 design (merged)
- PR #344 Amara 19th ferry absorb (merged)
- PR #346 DST compliance criteria (merged)
- PR #350 Frontier rename pass-2 (merged)
- PR #353 BACKLOG split Phase 0 design (merged)
- PR #355 Codex first peer-agent deep-review absorb
  (merged)
- PR #356 PR-resolve-loop skill row (merged)

Total: 72 review threads + 40 reviews + 6 general comments
captured across ~97KB of archive markdown.

Long-term plan deliberately kept in BACKLOG row (Otto-150
..154 / PR #335 queue elevation) rather than expanded in
this commit's docs. Phase 0 shipping now; Phase 1 GHA
workflow + Phase 2 historical backfill + Phase 3
reconciliation + Phase 4 redaction layer remain queued
tickets. Per maintainer directive "make sure you backlog
then to a proper long term solution" — the phased plan
is already in PR #335 and covers the remaining work.

Discipline applied: active-management on the preservation
gap itself. Previous tick's "ship and pray" pattern is the
exact failure mode this tool begins to close (operator-
initiated archive instead of silent reliance on GitHub-
side conversation storage). Composes with Otto-204c
livelock-diagnosis memory + Otto-204 PR-resolve-loop
skill (this script is step 4 of that cycle's
conversation-preservation hook).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
…ll (10 PRs)

Otto-207: maintainer "are we saving these yet gitnative and
have we backfilled them yet?" Honest answer was NO — the
PR-preservation BACKLOG row (Otto-150..154, PR #335 in queue)
specifies the discipline but never shipped the capture
tooling. This PR ships the minimal viable implementation
+ backfills 10 PRs from this session.

New tool:

- tools/pr-preservation/archive-pr.sh — one-shot bash
  script that fetches a PR's review threads, reviews, and
  comments via `gh api graphql` and writes them to
  docs/pr-discussions/PR-<N>-<slug>.md with YAML
  frontmatter (pr_number / title / author / state / dates
  / refs / archived_at / archive_tool).
- tools/pr-preservation/README.md — scope (Phase 0
  minimal vs Phase 1-4 longer plan), usage, output
  schema, backfill status, dependencies (bash + python3
  + gh; no external packages), cross-references to
  Otto-171 / Otto-204 / Otto-204c / PR #335.

Backfill (10 PRs archived this tick):

- PR #354 backlog-split Phase 1a
- PR #352 Server Meshing + SpacetimeDB research
- PR #336 KSK naming definition doc
- PR #342 calibration-harness Stage-2 design (merged)
- PR #344 Amara 19th ferry absorb (merged)
- PR #346 DST compliance criteria (merged)
- PR #350 Frontier rename pass-2 (merged)
- PR #353 BACKLOG split Phase 0 design (merged)
- PR #355 Codex first peer-agent deep-review absorb
  (merged)
- PR #356 PR-resolve-loop skill row (merged)

Total: 72 review threads + 40 reviews + 6 general comments
captured across ~97KB of archive markdown.

Long-term plan deliberately kept in BACKLOG row (Otto-150
..154 / PR #335 queue elevation) rather than expanded in
this commit's docs. Phase 0 shipping now; Phase 1 GHA
workflow + Phase 2 historical backfill + Phase 3
reconciliation + Phase 4 redaction layer remain queued
tickets. Per maintainer directive "make sure you backlog
then to a proper long term solution" — the phased plan
is already in PR #335 and covers the remaining work.

Discipline applied: active-management on the preservation
gap itself. Previous tick's "ship and pray" pattern is the
exact failure mode this tool begins to close (operator-
initiated archive instead of silent reliance on GitHub-
side conversation storage). Composes with Otto-204c
livelock-diagnosis memory + Otto-204 PR-resolve-loop
skill (this script is step 4 of that cycle's
conversation-preservation hook).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
…ll (10 PRs)

Otto-207: maintainer "are we saving these yet gitnative and
have we backfilled them yet?" Honest answer was NO — the
PR-preservation BACKLOG row (Otto-150..154, PR #335 in queue)
specifies the discipline but never shipped the capture
tooling. This PR ships the minimal viable implementation
+ backfills 10 PRs from this session.

New tool:

- tools/pr-preservation/archive-pr.sh — one-shot bash
  script that fetches a PR's review threads, reviews, and
  comments via `gh api graphql` and writes them to
  docs/pr-discussions/PR-<N>-<slug>.md with YAML
  frontmatter (pr_number / title / author / state / dates
  / refs / archived_at / archive_tool).
- tools/pr-preservation/README.md — scope (Phase 0
  minimal vs Phase 1-4 longer plan), usage, output
  schema, backfill status, dependencies (bash + python3
  + gh; no external packages), cross-references to
  Otto-171 / Otto-204 / Otto-204c / PR #335.

Backfill (10 PRs archived this tick):

- PR #354 backlog-split Phase 1a
- PR #352 Server Meshing + SpacetimeDB research
- PR #336 KSK naming definition doc
- PR #342 calibration-harness Stage-2 design (merged)
- PR #344 Amara 19th ferry absorb (merged)
- PR #346 DST compliance criteria (merged)
- PR #350 Frontier rename pass-2 (merged)
- PR #353 BACKLOG split Phase 0 design (merged)
- PR #355 Codex first peer-agent deep-review absorb
  (merged)
- PR #356 PR-resolve-loop skill row (merged)

Total: 72 review threads + 40 reviews + 6 general comments
captured across ~97KB of archive markdown.

Long-term plan deliberately kept in BACKLOG row (Otto-150
..154 / PR #335 queue elevation) rather than expanded in
this commit's docs. Phase 0 shipping now; Phase 1 GHA
workflow + Phase 2 historical backfill + Phase 3
reconciliation + Phase 4 redaction layer remain queued
tickets. Per maintainer directive "make sure you backlog
then to a proper long term solution" — the phased plan
is already in PR #335 and covers the remaining work.

Discipline applied: active-management on the preservation
gap itself. Previous tick's "ship and pray" pattern is the
exact failure mode this tool begins to close (operator-
initiated archive instead of silent reliance on GitHub-
side conversation storage). Composes with Otto-204c
livelock-diagnosis memory + Otto-204 PR-resolve-loop
skill (this script is step 4 of that cycle's
conversation-preservation hook).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
…ll (10 PRs)

Otto-207: maintainer "are we saving these yet gitnative and
have we backfilled them yet?" Honest answer was NO — the
PR-preservation BACKLOG row (Otto-150..154, PR #335 in queue)
specifies the discipline but never shipped the capture
tooling. This PR ships the minimal viable implementation
+ backfills 10 PRs from this session.

New tool:

- tools/pr-preservation/archive-pr.sh — one-shot bash
  script that fetches a PR's review threads, reviews, and
  comments via `gh api graphql` and writes them to
  docs/pr-discussions/PR-<N>-<slug>.md with YAML
  frontmatter (pr_number / title / author / state / dates
  / refs / archived_at / archive_tool).
- tools/pr-preservation/README.md — scope (Phase 0
  minimal vs Phase 1-4 longer plan), usage, output
  schema, backfill status, dependencies (bash + python3
  + gh; no external packages), cross-references to
  Otto-171 / Otto-204 / Otto-204c / PR #335.

Backfill (10 PRs archived this tick):

- PR #354 backlog-split Phase 1a
- PR #352 Server Meshing + SpacetimeDB research
- PR #336 KSK naming definition doc
- PR #342 calibration-harness Stage-2 design (merged)
- PR #344 Amara 19th ferry absorb (merged)
- PR #346 DST compliance criteria (merged)
- PR #350 Frontier rename pass-2 (merged)
- PR #353 BACKLOG split Phase 0 design (merged)
- PR #355 Codex first peer-agent deep-review absorb
  (merged)
- PR #356 PR-resolve-loop skill row (merged)

Total: 72 review threads + 40 reviews + 6 general comments
captured across ~97KB of archive markdown.

Long-term plan deliberately kept in BACKLOG row (Otto-150
..154 / PR #335 queue elevation) rather than expanded in
this commit's docs. Phase 0 shipping now; Phase 1 GHA
workflow + Phase 2 historical backfill + Phase 3
reconciliation + Phase 4 redaction layer remain queued
tickets. Per maintainer directive "make sure you backlog
then to a proper long term solution" — the phased plan
is already in PR #335 and covers the remaining work.

Discipline applied: active-management on the preservation
gap itself. Previous tick's "ship and pray" pattern is the
exact failure mode this tool begins to close (operator-
initiated archive instead of silent reliance on GitHub-
side conversation storage). Composes with Otto-204c
livelock-diagnosis memory + Otto-204 PR-resolve-loop
skill (this script is step 4 of that cycle's
conversation-preservation hook).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
…ll (10 PRs)

Otto-207: maintainer "are we saving these yet gitnative and
have we backfilled them yet?" Honest answer was NO — the
PR-preservation BACKLOG row (Otto-150..154, PR #335 in queue)
specifies the discipline but never shipped the capture
tooling. This PR ships the minimal viable implementation
+ backfills 10 PRs from this session.

New tool:

- tools/pr-preservation/archive-pr.sh — one-shot bash
  script that fetches a PR's review threads, reviews, and
  comments via `gh api graphql` and writes them to
  docs/pr-discussions/PR-<N>-<slug>.md with YAML
  frontmatter (pr_number / title / author / state / dates
  / refs / archived_at / archive_tool).
- tools/pr-preservation/README.md — scope (Phase 0
  minimal vs Phase 1-4 longer plan), usage, output
  schema, backfill status, dependencies (bash + python3
  + gh; no external packages), cross-references to
  Otto-171 / Otto-204 / Otto-204c / PR #335.

Backfill (10 PRs archived this tick):

- PR #354 backlog-split Phase 1a
- PR #352 Server Meshing + SpacetimeDB research
- PR #336 KSK naming definition doc
- PR #342 calibration-harness Stage-2 design (merged)
- PR #344 Amara 19th ferry absorb (merged)
- PR #346 DST compliance criteria (merged)
- PR #350 Frontier rename pass-2 (merged)
- PR #353 BACKLOG split Phase 0 design (merged)
- PR #355 Codex first peer-agent deep-review absorb
  (merged)
- PR #356 PR-resolve-loop skill row (merged)

Total: 72 review threads + 40 reviews + 6 general comments
captured across ~97KB of archive markdown.

Long-term plan deliberately kept in BACKLOG row (Otto-150
..154 / PR #335 queue elevation) rather than expanded in
this commit's docs. Phase 0 shipping now; Phase 1 GHA
workflow + Phase 2 historical backfill + Phase 3
reconciliation + Phase 4 redaction layer remain queued
tickets. Per maintainer directive "make sure you backlog
then to a proper long term solution" — the phased plan
is already in PR #335 and covers the remaining work.

Discipline applied: active-management on the preservation
gap itself. Previous tick's "ship and pray" pattern is the
exact failure mode this tool begins to close (operator-
initiated archive instead of silent reliance on GitHub-
side conversation storage). Composes with Otto-204c
livelock-diagnosis memory + Otto-204 PR-resolve-loop
skill (this script is step 4 of that cycle's
conversation-preservation hook).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request Apr 24, 2026
…ll (10 PRs)

Otto-207: maintainer "are we saving these yet gitnative and
have we backfilled them yet?" Honest answer was NO — the
PR-preservation BACKLOG row (Otto-150..154, PR #335 in queue)
specifies the discipline but never shipped the capture
tooling. This PR ships the minimal viable implementation
+ backfills 10 PRs from this session.

New tool:

- tools/pr-preservation/archive-pr.sh — one-shot bash
  script that fetches a PR's review threads, reviews, and
  comments via `gh api graphql` and writes them to
  docs/pr-discussions/PR-<N>-<slug>.md with YAML
  frontmatter (pr_number / title / author / state / dates
  / refs / archived_at / archive_tool).
- tools/pr-preservation/README.md — scope (Phase 0
  minimal vs Phase 1-4 longer plan), usage, output
  schema, backfill status, dependencies (bash + python3
  + gh; no external packages), cross-references to
  Otto-171 / Otto-204 / Otto-204c / PR #335.

Backfill (10 PRs archived this tick):

- PR #354 backlog-split Phase 1a
- PR #352 Server Meshing + SpacetimeDB research
- PR #336 KSK naming definition doc
- PR #342 calibration-harness Stage-2 design (merged)
- PR #344 Amara 19th ferry absorb (merged)
- PR #346 DST compliance criteria (merged)
- PR #350 Frontier rename pass-2 (merged)
- PR #353 BACKLOG split Phase 0 design (merged)
- PR #355 Codex first peer-agent deep-review absorb
  (merged)
- PR #356 PR-resolve-loop skill row (merged)

Total: 72 review threads + 40 reviews + 6 general comments
captured across ~97KB of archive markdown.

Long-term plan deliberately kept in BACKLOG row (Otto-150
..154 / PR #335 queue elevation) rather than expanded in
this commit's docs. Phase 0 shipping now; Phase 1 GHA
workflow + Phase 2 historical backfill + Phase 3
reconciliation + Phase 4 redaction layer remain queued
tickets. Per maintainer directive "make sure you backlog
then to a proper long term solution" — the phased plan
is already in PR #335 and covers the remaining work.

Discipline applied: active-management on the preservation
gap itself. Previous tick's "ship and pray" pattern is the
exact failure mode this tool begins to close (operator-
initiated archive instead of silent reliance on GitHub-
side conversation storage). Composes with Otto-204c
livelock-diagnosis memory + Otto-204 PR-resolve-loop
skill (this script is step 4 of that cycle's
conversation-preservation hook).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants