Commit Graph

30 Commits

Author SHA1 Message Date
Joseph Doherty
3e9ad16033 feat(batch24): complete leaf nodes implementation and verification 2026-03-01 01:31:57 -05:00
Joseph Doherty
2aaa38cad9 feat(batch38): merge consumer-lifecycle 2026-03-01 00:57:36 -05:00
Joseph Doherty
bb9558e6a9 task4: implement batch38 group C ack and delivery state 2026-03-01 00:30:22 -05:00
Joseph Doherty
9644e4fad6 feat(batch37): merge stream-messages 2026-03-01 00:22:33 -05:00
Joseph Doherty
797c035b2a feat(batch34): merge js-cluster-consumers 2026-02-28 23:55:33 -05:00
Joseph Doherty
a9ccb66e35 batch37 task6 implement group E pre-ack snapshot and restore 2026-02-28 23:54:28 -05:00
Joseph Doherty
9a42b93b4b feat(batch34): implement and verify group B cluster consumer features 2026-02-28 23:37:15 -05:00
Joseph Doherty
82c2f4ed1c batch36 task2 implement group-a lifecycle primitives 2026-02-28 22:52:06 -05:00
Joseph Doherty
bbf3e8128a feat(batch28): merge jetstream-api 2026-02-28 22:41:44 -05:00
Joseph Doherty
d6754eae25 feat(batch28): implement jetstream api consumer/message/snapshot handlers 2026-02-28 22:33:50 -05:00
Joseph Doherty
7e8b81b648 Port batch 32 JS cluster meta feature implementations 2026-02-28 22:30:33 -05:00
Joseph Doherty
bf115b116e feat(batch28): implement jetstream api dispatch and account request core 2026-02-28 22:24:10 -05:00
Joseph Doherty
28f2a075fd feat(batch27): merge jetstream-core 2026-02-28 21:46:00 -05:00
Joseph Doherty
5b2d32c503 feat(batch27): implement jetstream config validation and error tail 2026-02-28 21:15:57 -05:00
Joseph Doherty
6726c07749 feat(batch27): implement jetstream usage foundations and limit helpers 2026-02-28 21:07:24 -05:00
Joseph Doherty
12b8c9b4c5 feat(batch27): implement jetstream engine state and account enable core 2026-02-28 21:01:11 -05:00
Joseph Doherty
f2bc957229 chore(batch23): start routes batch 2026-02-28 20:59:47 -05:00
Joseph Doherty
4b7fac7957 feat(batch27): implement jetstream bootstrap and account wiring 2026-02-28 20:57:02 -05:00
Joseph Doherty
e53b4aa17a feat(batch19): implement activation, issuer, and external auth account methods 2026-02-28 20:21:52 -05:00
Joseph Doherty
5493703280 feat(batch19): implement service reply and stream import/export methods 2026-02-28 20:15:59 -05:00
Joseph Doherty
f4dfbf49bd feat(batch19): implement service import maps and response subscription methods 2026-02-28 20:10:06 -05:00
Joseph Doherty
50f6b69fda feat(batch19): implement account latency and import-cycle methods 2026-02-28 19:53:59 -05:00
Joseph Doherty
dcf1df44d1 feat(batch19): implement account trace/counter/export core methods 2026-02-28 19:47:10 -05:00
Joseph Doherty
78d222a86d feat(batch9): implement f1 auth and dirstore foundations 2026-02-28 12:12:50 -05:00
Joseph Doherty
cd24ea01c5 feat(batch6-task4): implement f3 account authorization parsing 2026-02-28 09:47:32 -05:00
Joseph Doherty
beab0e60da feat(batch3): implement send queue feature group 2026-02-28 07:31:12 -05:00
Joseph Doherty
8849265780 Eliminate PortTracker stub backlog by implementing Raft/file-store/stream/server/client/OCSP stubs and adding coverage. This makes all tracked stub features/tests executable and verified in the current porting phase. 2026-02-27 08:56:26 -05:00
Joseph Doherty
f0faaffe69 feat(p7-09): JetStream unit tests — versioning (12), dirstore (12), batching/errors deferred (66)
Port session P7-09: add tests from jetstream_versioning_test.go (T:1791–1808),
dirstore_test.go (T:285–296), jetstream_batching_test.go (T:716–744),
jetstream_errors_test.go (T:1381–1384), and accounts_test.go (T:80–110).

- JetStreamVersioningTests: 12 active unit tests + 6 deferred (server-required)
- DirectoryStoreTests: 12 filesystem tests using fake JWTs (no NKeys dependency)
- JetStreamBatchingTests: 29 deferred stubs (all require running JetStream cluster)
- JetStreamErrorsTests: 4 deferred stubs (NewJS* factories not yet ported)
- accounts_test.go T:80–110: 31 deferred (all use RunServerWithConfig)

Fix DirJwtStore.cs expiration bugs:
  - Use DateTimeOffset.UtcNow.UtcTicks (not Unix-relative ticks) for expiry comparison
  - Replace in-place JwtItem mutation with new-object replacement so DrainStale
    can detect stale heap entries via ReferenceEquals check

Add JetStreamVersioning.cs methods: SetStaticStreamMetadata,
SetDynamicStreamMetadata, CopyStreamMetadata, SetStaticConsumerMetadata,
SetDynamicConsumerMetadata, SetDynamicConsumerInfoMetadata, CopyConsumerMetadata.

Tests: 725 pass, 53 skipped/deferred, 0 failures.
DB: +24 complete, +66 deferred.
2026-02-26 20:02:00 -05:00
Joseph Doherty
ce45dff994 feat: port sessions 12 & 13 — Events/Monitoring/MsgTrace + Config Reload
Session 12 (218 features, IDs 854-950, 2166-2251, 2405-2439):
- EventTypes: system subjects, event message types, InternalState, ConnectEventMsg,
  DisconnectEventMsg, AccountNumConns, ServerIdentity, DataStats
- MonitorTypes: Connz, ConnInfo, ConnzOptions, ConnState, ProxyInfo, TlsPeerCert
- MonitorSortOptions: SortOpt, ConnInfos, all 13 sort comparers
- MsgTraceTypes: IMsgTrace, MsgTraceBase + 6 concrete types, custom JSON converter

Session 13 (89 features, IDs 2800-2888):
- ReloadOptions: IReloadOption interface, NoopReloadOption base, 50 option classes
  covering logging, TLS, auth, cluster, JetStream, MQTT, OCSP, misc
2026-02-26 15:46:14 -05:00
Joseph Doherty
12a14ec476 feat: port session 11 — Accounts & Directory JWT Store
- Account: full Account class (200 features) with subject mappings,
  connection counting, export/import checks, expiration timers
- DirJwtStore: directory-based JWT storage with sharding and expiry
- AccountResolver: IAccountResolver, MemoryAccountResolver,
  UrlAccountResolver, DirAccountResolver, CacheDirAccountResolver
- AccountTypes: all supporting types (AccountLimits, SConns, ExportMap,
  ImportMap, ServiceExport, StreamExport, ServiceLatency, etc.)
- 34 unit tests (599 total), 234 features complete (IDs 150-349, 793-826)
2026-02-26 15:37:08 -05:00