Files
natsdotnet/docs/plans/2026-02-23-jetstream-remaining-parity-map.md
2026-02-23 13:43:14 -05:00

12 KiB

JetStream Remaining Parity Map

Go Subject .NET Route Status Test
$JS.API.INFO AccountApiHandlers.HandleInfo ported JetStreamAccountInfoApiTests.Account_info_returns_jetstream_limits_and_usage_shape
$JS.API.SERVER.REMOVE AccountControlApiHandlers.HandleServerRemove ported JetStreamAccountControlApiTests.Account_and_server_control_subjects_are_routable
$JS.API.ACCOUNT.PURGE.* AccountControlApiHandlers.HandleAccountPurge ported JetStreamAccountControlApiTests.Account_and_server_control_subjects_are_routable
$JS.API.ACCOUNT.STREAM.MOVE.* AccountControlApiHandlers.HandleAccountStreamMove ported JetStreamAccountControlApiTests.Account_and_server_control_subjects_are_routable
$JS.API.ACCOUNT.STREAM.MOVE.CANCEL.* AccountControlApiHandlers.HandleAccountStreamMoveCancel ported JetStreamAccountControlApiTests.Account_and_server_control_subjects_are_routable
$JS.API.STREAM.CREATE.* StreamApiHandlers.HandleCreate ported JetStreamStreamLifecycleApiTests.Stream_create_info_and_update_roundtrip
$JS.API.STREAM.INFO.* StreamApiHandlers.HandleInfo ported JetStreamStreamLifecycleApiTests.Stream_create_info_and_update_roundtrip
$JS.API.STREAM.UPDATE.* StreamApiHandlers.HandleUpdate ported JetStreamStreamLifecycleApiTests.Stream_update_and_delete_roundtrip
$JS.API.STREAM.DELETE.* StreamApiHandlers.HandleDelete ported JetStreamStreamLifecycleApiTests.Stream_update_and_delete_roundtrip
$JS.API.STREAM.NAMES StreamApiHandlers.HandleNames ported JetStreamStreamListApiTests.Stream_names_and_list_return_created_streams
$JS.API.STREAM.LIST StreamApiHandlers.HandleList ported JetStreamStreamListApiTests.Stream_names_and_list_return_created_streams
$JS.API.STREAM.PEER.REMOVE.* ClusterControlApiHandlers.HandleStreamPeerRemove ported JetStreamClusterControlExtendedApiTests.Peer_remove_and_consumer_stepdown_subjects_return_success_shape
$JS.API.STREAM.MSG.GET.* StreamApiHandlers.HandleMessageGet ported JetStreamStreamMessageApiTests.Stream_msg_get_delete_and_purge_change_state
$JS.API.STREAM.MSG.DELETE.* StreamApiHandlers.HandleMessageDelete ported JetStreamStreamMessageApiTests.Stream_msg_get_delete_and_purge_change_state
$JS.API.STREAM.PURGE.* StreamApiHandlers.HandlePurge ported JetStreamStreamMessageApiTests.Stream_msg_get_delete_and_purge_change_state
$JS.API.DIRECT.GET.* DirectApiHandlers.HandleGet ported JetStreamDirectGetApiTests.Direct_get_returns_message_without_stream_info_wrapper
$JS.API.STREAM.SNAPSHOT.* StreamApiHandlers.HandleSnapshot ported JetStreamSnapshotRestoreApiTests.Snapshot_then_restore_reconstructs_messages
$JS.API.STREAM.RESTORE.* StreamApiHandlers.HandleRestore ported JetStreamSnapshotRestoreApiTests.Snapshot_then_restore_reconstructs_messages
$JS.API.CONSUMER.CREATE.. ConsumerApiHandlers.HandleCreate ported JetStreamConsumerApiTests.Consumer_create_and_info_roundtrip
$JS.API.CONSUMER.INFO.. ConsumerApiHandlers.HandleInfo ported JetStreamConsumerApiTests.Consumer_create_and_info_roundtrip
$JS.API.CONSUMER.NAMES.* ConsumerApiHandlers.HandleNames ported JetStreamConsumerListApiTests.Consumer_names_list_and_delete_are_supported
$JS.API.CONSUMER.LIST.* ConsumerApiHandlers.HandleList ported JetStreamConsumerListApiTests.Consumer_names_list_and_delete_are_supported
$JS.API.CONSUMER.DELETE.. ConsumerApiHandlers.HandleDelete ported JetStreamConsumerListApiTests.Consumer_names_list_and_delete_are_supported
$JS.API.CONSUMER.PAUSE.. ConsumerApiHandlers.HandlePause ported JetStreamConsumerControlApiTests.Consumer_pause_reset_unpin_mutate_state
$JS.API.CONSUMER.RESET.. ConsumerApiHandlers.HandleReset ported JetStreamConsumerControlApiTests.Consumer_pause_reset_unpin_mutate_state
$JS.API.CONSUMER.UNPIN.. ConsumerApiHandlers.HandleUnpin ported JetStreamConsumerControlApiTests.Consumer_pause_reset_unpin_mutate_state
$JS.API.CONSUMER.MSG.NEXT.. ConsumerApiHandlers.HandleNext ported JetStreamConsumerNextApiTests.Consumer_msg_next_respects_batch_request
$JS.API.CONSUMER.LEADER.STEPDOWN.. ClusterControlApiHandlers.HandleConsumerLeaderStepdown ported JetStreamClusterControlExtendedApiTests.Peer_remove_and_consumer_stepdown_subjects_return_success_shape
$JS.API.STREAM.LEADER.STEPDOWN.* ClusterControlApiHandlers.HandleStreamLeaderStepdown ported JetStreamClusterControlApiTests.Stream_leader_stepdown_and_meta_stepdown_endpoints_return_success_shape
$JS.API.META.LEADER.STEPDOWN ClusterControlApiHandlers.HandleMetaLeaderStepdown ported JetStreamClusterControlApiTests.Stream_leader_stepdown_and_meta_stepdown_endpoints_return_success_shape

Post-Baseline Parity Closures (2026-02-23)

Scope Status Test Evidence
Inter-server account-scoped interest protocol (A+/A-) ported InterServerAccountProtocolTests.Aplus_Aminus_frames_include_account_scope_and_do_not_leak_interest_across_accounts
Gateway reply remap (_GR_.) ported GatewayAdvancedSemanticsTests.Gateway_forwarding_remaps_reply_subject_with_gr_prefix_and_restores_on_return
Leaf loop marker/account mapping ($LDS. + LS account scope) ported LeafAdvancedSemanticsTests.Leaf_loop_marker_blocks_reinjected_message_and_account_mapping_routes_to_expected_account
JetStream internal client lifecycle ported JetStreamInternalClientTests.JetStream_enabled_server_creates_internal_jetstream_client_and_keeps_it_account_scoped
Stream runtime policy parity (max_msg_size, max_age_ms, max_msgs_per) ported JetStreamStreamPolicyParityTests.Stream_rejects_oversize_message_and_prunes_by_max_age_and_per_subject_limits
Stream behavior parity (dedupe window + sealed/delete/purge guards) ported JetStreamStreamConfigBehaviorTests.Stream_honors_dedup_window_and_sealed_delete_purge_guards
Consumer deliver/backoff/flow-control parity ported JetStreamConsumerDeliverPolicyParityTests.*, JetStreamConsumerBackoffParityTests.*, JetStreamConsumerFlowControlParityTests.*
Mirror/source advanced parity ported JetStreamMirrorSourceParityTests.Source_subject_transform_and_cross_account_mapping_copy_expected_messages_only
FileStore block + expiry parity ported JetStreamFileStoreBlockParityTests.*, JetStreamStoreExpiryParityTests.*
RAFT advanced consensus/snapshot/membership hooks ported RaftConsensusAdvancedParityTests.*, RaftSnapshotTransferParityTests.*, RaftMembershipParityTests.*
JetStream cluster governance + cross-cluster gateway path hooks ported JetStreamClusterGovernanceParityTests.*, JetStreamCrossClusterGatewayParityTests.*

Full-Repo Remaining Parity Closure (2026-02-23)

Scope Status Test Evidence
Row-level parity guard from differences.md table ported DifferencesParityClosureTests.Differences_md_has_no_remaining_baseline_n_or_stub_rows_in_tracked_scope
Profiling endpoint (/debug/pprof) ported PprofEndpointTests.Debug_pprof_endpoint_returns_profile_index_when_profport_enabled
Accept-loop reload lock and callback hook ported AcceptLoopReloadLockTests.*, AcceptLoopErrorCallbackTests.*
Adaptive read buffer and outbound pooling ported AdaptiveReadBufferTests.*, OutboundBufferPoolTests.*
Inter-server opcode routing + trace initialization ported InterServerOpcodeRoutingTests.*, MessageTraceInitializationTests.*
SubList missing APIs and optimization/sweeper behavior ported SubListNotificationTests.*, SubListRemoteFilterTests.*, SubListQueueWeightTests.*, SubListMatchBytesTests.*, SubListHighFanoutOptimizationTests.*, SubListAsyncCacheSweepTests.*
Route account scope/topology/compression parity hooks ported RouteAccountScopedTests.*, RouteTopologyGossipTests.*, RouteCompressionTests.*
Gateway interest-only and leaf hub/spoke mapping helpers ported GatewayInterestOnlyParityTests.*, LeafHubSpokeMappingParityTests.*
Auth extension callout/proxy hooks ported AuthExtensionParityTests.*, ExternalAuthCalloutTests.*, ProxyAuthTests.*
Monitoring connz filter/field parity and varz slow-consumer breakdown ported ConnzParityFilterTests.*, ConnzParityFieldTests.*, VarzSlowConsumerBreakdownTests.*
JetStream runtime/consumer/storage/mirror-source closure tasks ported JetStreamStreamRuntimeParityTests.*, JetStreamStreamFeatureToggleParityTests.*, JetStreamConsumerRuntimeParityTests.*, JetStreamConsumerFlowReplayParityTests.*, JetStreamFileStoreLayoutParityTests.*, JetStreamFileStoreCryptoCompressionTests.*, JetStreamMirrorSourceRuntimeParityTests.*
RAFT runtime parity closure ported RaftConsensusRuntimeParityTests.*, RaftSnapshotTransferRuntimeParityTests.*, RaftMembershipRuntimeParityTests.*
JetStream cluster governance + cross-cluster runtime closure ported JetStreamClusterGovernanceRuntimeParityTests.*, JetStreamCrossClusterRuntimeParityTests.*
MQTT listener/connection/parser baseline parity ported MqttListenerParityTests.*, MqttPublishSubscribeParityTests.*

JetStream Truth Matrix

Feature Differences Row Evidence Status Test Evidence
Internal JetStream client lifecycle JETSTREAM (internal) verified JetStreamInternalClientTests.*, JetStreamInternalClientRuntimeTests.*
Stream retention semantics (Limits/Interest/WorkQueue) Retention (Limits/Interest/WorkQueue) verified JetStreamRetentionPolicyTests.*, JetStreamRetentionRuntimeParityTests.*
Stream runtime policy and dedupe window Duplicates dedup window verified JetStreamStreamPolicyParityTests.*, JetStreamDedupeWindowParityTests.*
Consumer deliver policy cursor semantics DeliverPolicy (All/Last/New/StartSeq/StartTime) verified JetStreamConsumerDeliverPolicyParityTests.*, JetStreamConsumerDeliverPolicyLongRunTests.*
Ack/redelivery/backoff state-machine semantics AckPolicy.All verified JetStreamConsumerBackoffParityTests.*, JetStreamAckRedeliveryStateMachineTests.*
Flow control, rate limiting, and replay timing Flow control verified JetStreamConsumerFlowControlParityTests.*, JetStreamFlowControlReplayTimingTests.*
Replay timing parity under burst load Replay policy verified JetStreamFlowReplayBackoffTests.*, JetStreamFlowControlReplayTimingTests.*
FileStore durable block/index semantics Block-based layout (64 MB blocks) verified JetStreamFileStoreBlockParityTests.*, JetStreamFileStoreDurabilityParityTests.*
FileStore encryption/compression contracts AES-GCM / ChaCha20 encryption verified JetStreamFileStoreCryptoCompressionTests.*, JetStreamFileStoreCompressionEncryptionParityTests.*
RAFT append/commit quorum safety Log append + quorum verified RaftConsensusAdvancedParityTests.*, RaftAppendCommitParityTests.*
RAFT next-index/snapshot/membership convergence Log mismatch resolution (NextIndex) verified RaftSnapshotTransferParityTests.*, RaftOperationalConvergenceParityTests.*
RAFT snapshot transfer behavior Snapshot network transfer verified RaftSnapshotTransferParityTests.*, RaftOperationalConvergenceParityTests.*
RAFT membership changes Membership changes verified RaftMembershipParityTests.*, RaftOperationalConvergenceParityTests.*
JetStream meta/replica governance behavior Meta-group governance verified JetStreamClusterGovernanceParityTests.*, JetStreamClusterGovernanceBehaviorParityTests.*
Cross-cluster JetStream runtime behavior Cross-cluster JetStream (gateways) verified JetStreamCrossClusterGatewayParityTests.*, JetStreamCrossClusterBehaviorParityTests.*