Skip to content

Add remote storage reference server#448

Draft
fujibee wants to merge 10 commits into
mainfrom
feat/remote-storage-reference
Draft

Add remote storage reference server#448
fujibee wants to merge 10 commits into
mainfrom
feat/remote-storage-reference

Conversation

@fujibee

@fujibee fujibee commented Jul 20, 2026

Copy link
Copy Markdown
Owner

Summary

  • pin the versioned remote storage HTTP v1 contract, including D/E/G and E2EE-ready envelope invariants
  • add a thin Node.js/TypeScript + Fastify reference server backed by PostgreSQL
  • add atomic batch storage, per-team transactional sequence allocation, cursor floors, capabilities, roster provisioning, health, and permanent idempotency tombstones
  • add Docker/Compose self-hosting assets and a PostgreSQL integration-test CI job

Verification

  • npm run typecheck
  • TEST_DATABASE_URL=postgresql://koichi@localhost/postgres npm test (9 tests)
  • npm run build
  • workflow YAML parse and git diff --check

Design review: mentor-co approved spec head d1a74db before implementation.

@fujibee
fujibee marked this pull request as draft July 20, 2026 13:06
fujibee added 2 commits July 21, 2026 15:12
Adds the project's commitments document, approved verbatim by koit
(only the draft-status header block is removed; the body is
unchanged) — local-first as a design rule, an open sync protocol, no
lock-in on your data, structural encryption, and the maintainers'
own hosted service framed as one provider among possible providers,
not a privileged one.

- PRINCIPLES.md at the repo root.
- Linked from both README.md and README.ja.md in a new "Principles" /
  "原則" section.
- Published on agmsg.cc at /principles (site/src/pages/principles.astro),
  rendering the repo-root PRINCIPLES.md at build time so the page and
  the doc can't drift apart. EN only for now, matching the doc itself.
…d numbering

Section headings already carry their own number ("1. The core works
on its own"), so the surrounding <ol>/<li>'s implicit list ordinal
could be announced alongside it by some screen readers. Plain
div/section carries no such semantics; the visible numbering is
unchanged since it lives in the heading text.

Found in aggie-co1 delta review of PR #448 (non-blocking).
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.

1 participant