Skip to content

Commit 450985a

Browse files
committed
mark completed tasks
1 parent 72b1699 commit 450985a

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

specs/004-add-client-server/tasks.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
- [X] T009 Add `KVCommand.Watch(key: String)` in `/Users/somdoron/git/zio-raft/kvstore/src/main/scala/zio/kvstore/package.scala`; define watch semantics including initial snapshot (return current value immediately) and idempotency (duplicate watch has no effect).
3333
- [X] T010 Update `KVStateMachine` at `/Users/somdoron/git/zio-raft/kvstore/src/main/scala/zio/kvstore/KVStateMachine.scala` to manage subscriptions in `HMap` per spec: add schema entries for (a) key → Set[SessionId], (b) sessionId → Set[key]; register on watch; remove in `handleSessionExpired`; in `applyCommand(Set)`, after updating state, fan out `KVServerRequest.Notification` to all sessions subscribed to that key.
3434
- [X] T011 Update scodec codecs in `/Users/somdoron/git/zio-raft/kvstore/src/main/scala/zio/kvstore/package.scala` and `/Users/somdoron/git/zio-raft/kvstore/src/main/scala/zio/kvstore/protocol/KVServerRequest.scala` to cover new command/response/server-request types.
35-
- [ ] T012 Create `Node` skeleton at `/Users/somdoron/git/zio-raft/kvstore/src/main/scala/zio/kvstore/node/Node.scala` with constructor wiring (server, raft core, state machine) and `run` method signature; no logic yet.
35+
- [X] T012 Create `Node` skeleton at `/Users/somdoron/git/zio-raft/kvstore/src/main/scala/zio/kvstore/node/Node.scala` with constructor wiring (server, raft core, state machine) and `run` method signature; no logic yet.
3636
- [X] T012 Create `Node` skeleton at `/Users/somdoron/git/zio-raft/kvstore/src/main/scala/zio/kvstore/node/Node.scala` with constructor wiring (server, raft core, state machine) and `run` method signature; no logic yet.
3737
- [X] T013 Implement `Node` raft actions processing stream: consume `RaftServer.raftActions`, map to `SessionCommand`, call state machine, and based on results publish via `RaftServer.sendClientResponse`, `sendServerRequest`, `sendRequestError`, or `confirmSessionCreation`.
3838
- [X] T014 Implement `Node` 10s retry stream: periodically check `hasPendingRequests` (dirty read) and when true initiate `SessionCommand.GetRequestsForRetry`; publish resulting actions via the same `RaftServer` methods.

0 commit comments

Comments
 (0)