Commit graph

47 commits

Author SHA256 Message Date
d12543d730 Bind credential pins to immutable grants 2026-07-17 03:38:10 +09:00
9a305cad46 Exercise admission against durable PostgreSQL 2026-07-17 03:21:09 +09:00
b3e63b9e2b Add atomic durable job admission 2026-07-17 03:20:57 +09:00
be651d559c Exercise target adapter against supported S3 peers 2026-07-17 02:54:27 +09:00
854e6e1c17 Add exact-identity target storage adapter 2026-07-17 02:54:18 +09:00
f569707f97 Add bounded streaming execution kernel 2026-07-17 01:20:15 +09:00
ac2289bd0a Add durable credential registry and secret lifecycle 2026-07-17 00:18:02 +09:00
9b6c3dc71f Model durable ownership for credential secrets 2026-07-16 23:01:17 +09:00
bf028161ae Add identity and target authorization package
OIDC validation, principal mapping, remora:v1 roles, and current-authz
filtering with kind acceptance on Keycloak and ZITADEL.
2026-07-16 18:27:42 +09:00
91ac6dee85 Add Redis-compatible coordination substrate 2026-07-16 14:30:58 +09:00
182b4d58c7 Harden durable replay and lock recovery 2026-07-16 14:30:47 +09:00
20ea9557fd Add compatibility matrix fixture execution
Run package test jobs across every selected provider combination with isolated lane state, released-image canaries, controlled OIDC DNS, and deterministic cleanup.
2026-07-16 05:39:51 +09:00
957d170150 Add PostgreSQL DurableStore substrate for WP-03
Introduce remora-durable with pool/migrations, a RemoraApiMutation-shaped
ledger, claim-fenced outbox projection, CAS helpers, and keyset cursors,
plus a kind Job acceptance suite against the hermetic fixture.
2026-07-16 03:56:44 +09:00
af8bb1a03a Add reusable kind test job execution 2026-07-16 02:36:58 +09:00
3ed528b288 Default bounded verification to the nerdctl runtime 2026-07-16 00:22:31 +09:00
f42343855f Add a released-image dependency compatibility testbed 2026-07-16 00:22:02 +09:00
d07a4085db Validate shared contracts in bounded test lanes 2026-07-15 21:00:59 +09:00
fecb9a1a8d Add TypeScript domain and contract bindings 2026-07-15 21:00:44 +09:00
4da5a980ed Add Rust domain kernel and wire contracts 2026-07-15 21:00:33 +09:00
ff379fb002 Add resource-bounded local verification lanes
Run pinned Rust and browser toolchains in fast and full container lanes with explicit CPU and memory limits.
2026-07-15 19:51:53 +09:00
9156b75c62 Scaffold Svelte frontend and browser test matrix
Establish the TypeScript 7, Oxlint, Vitest, and Playwright workspace with an isolated Svelte diagnostics compatibility boundary.
2026-07-15 19:51:35 +09:00
66991b85b2 Scaffold Rust API and worker workspace
Pin the Rust toolchain and nextest profile so both service crates share a reproducible verification baseline.
2026-07-15 19:51:16 +09:00
0834f291d9 Require executing authority for lease renewal.
RenewLease now demands current durable authority, AttemptExecuting, and a
non-terminal phase so a live lease cannot be extended after authority loss.
Align the mutable API renew prose with that precondition.
2026-07-15 16:59:35 +09:00
75fd30674e Update gitignore 2026-07-15 15:19:59 +09:00
3062bf3d75 Tighten activation recovery and API contracts 2026-07-14 19:04:00 +09:00
033cfeaac6 Specify fenced activation and source credential contracts
Define bounded reservation recovery, exact activation replay fencing, immutable source identities, and deployment-owned secret and target policy boundaries. Align the OpenAPI contract and add a split-store activation safety refinement.
2026-07-14 18:12:28 +09:00
3881514e4b Expose committed result members and stable principals 2026-07-14 12:12:13 +09:00
dfd60cf104 Separate protocol authority from mutable API contracts
Move API artifacts out of docs/spec, define concrete execution and deletion refinements, and document TLA+ abstraction boundaries so architecture prose cannot become a competing protocol specification.
2026-07-14 11:50:10 +09:00
78be27871c Abstract endpoint-specific mutation rejections 2026-07-13 18:36:32 +09:00
900ceb422c Clarify mutation eligibility across replay 2026-07-13 18:33:42 +09:00
e5ab04d49c Model API mutation replay semantics 2026-07-13 18:23:03 +09:00
a44b687897 Tighten failure and manifest contracts 2026-07-13 17:23:32 +09:00
5fdb339fe5 Model durable failure disposition 2026-07-13 16:41:51 +09:00
8c0ec9627e Define API and live update contract 2026-07-13 14:59:50 +09:00
0b2b026283 Define authorization and outbound boundaries 2026-07-13 14:41:11 +09:00
376d1afbf4 Define result deletion boundaries 2026-07-13 14:26:49 +09:00
6b6e315776 Define source resumption proof boundaries 2026-07-13 14:15:02 +09:00
797d971b61 Define durable target cleanup boundaries 2026-07-13 14:03:23 +09:00
a9f611e4f0 Define manifest-rooted result architecture 2026-07-13 12:43:55 +09:00
5d768cb22f Ignore project scratchpad symlink.
Scratchpad lives in the development-scratchpad repository under
~/Data/Scratchpad/remora and is linked as scratchpad/ for local spikes.
2026-07-10 15:30:43 +09:00
6841aaf389 Ignore TLC states directories under docs/protocol.
Keep model-check working trees out of the remora repository.
2026-07-10 14:57:50 +09:00
6b6588c5ac Add eventual cleanup liveness and fix cancel quiescence gaps.
Encode zero-orphan intent as EventuallyNonWinnerStagingCleaned and
EventuallySystemQuiescent under recovery. Stop authorized attempts on
FinalizeCancel and do not re-publish cancel notices after terminal so fair
behaviors can reach SystemQuiescent (TLC-checked on Remora.cfg).
2026-07-10 14:46:55 +09:00
6a0dfc9383 Document that SystemQuiescent and Done are TLC-only (IF-7).
Clarify the deadlock sink is not a product SLO: residual staging and coord
cleanup are best-effort GC, while safety remains CommittedResult and
StagingOwnership.
2026-07-10 14:23:57 +09:00
a3f502f6b6 Weaken live progress to a coordination-only hint (IF-6).
Drop LiveProgressAligned in favor of well-formedness and lease-compatible
progress, stop durable CAS from clearing Redis progress, and add ambient
ClearStaleLiveProgress so TLC matches Postgres + Dragonfly separation.
2026-07-10 14:16:29 +09:00
7d490194c3 Strengthen JobProtocol model after independent review.
Replace tautological invariants with non-trivial ones, allow multi-shot
coordination loss and re-partition, fix reap/progress lifecycle, enable
deadlock checking via Done, and add stress and multi-shot TLC configs.
2026-07-10 12:43:32 +09:00
1206c0a5ac Add initial draft of Remora model 2026-07-10 11:39:49 +09:00
39b41393a6 Initial commit. Add architecture specification and gitignore. 2026-07-10 11:32:11 +09:00