Joseph Doherty
61e27879f7
Merge branch 'worktree-agent-a830a417'
...
# Conflicts:
# dotnet/tests/ZB.MOM.NatsNet.Server.IntegrationTests/Helpers/CheckHelper.cs
# dotnet/tests/ZB.MOM.NatsNet.Server.IntegrationTests/Helpers/ConfigHelper.cs
# dotnet/tests/ZB.MOM.NatsNet.Server.IntegrationTests/Helpers/IntegrationTestBase.cs
# dotnet/tests/ZB.MOM.NatsNet.Server.IntegrationTests/Helpers/NatsTestClient.cs
# dotnet/tests/ZB.MOM.NatsNet.Server.IntegrationTests/Helpers/TestCluster.cs
2026-03-01 12:16:28 -05:00
Joseph Doherty
60422ab85f
docs: add deferred integration tests design
...
884 deferred tests across 34 Go test files. Plan: build shared test
harness (Batch 48), then port all tests in 12 parallel batches (49-60)
using Sonnet agents in isolated worktrees.
2026-03-01 11:08:13 -05:00
Joseph Doherty
41ea272c8a
chore(batch42-47): reconcile porting.db after all deferred feature batches
...
- Promoted 226 deferred features to verified (audit name mismatches)
- 1 stub remains (mqtt transferUniqueSessStreamsToMuxed — needs running server)
- Features: 3626 verified + 22 complete + 24 n/a + 1 stub = 3673 total (98.7%)
- Tests: 2066 verified + 307 n/a + 884 deferred = 3257 total
- Overall: 6057/6942 items complete (87.3%)
2026-03-01 10:18:54 -05:00
Joseph Doherty
ac24c03d70
chore: add batch prompt and report artifacts
2026-02-28 05:54:25 -05:00
Joseph Doherty
564b91ded1
Add batch tracking markdown with all 42 implementation batches
2026-02-27 21:41:53 -05:00
Joseph Doherty
8a126c4932
Add batch plans for batches 37-41 (rounds 19-21)
...
Generated design docs and implementation plans via Codex for:
- Batch 37: Stream Messages
- Batch 38: Consumer Lifecycle
- Batch 39: Consumer Dispatch
- Batch 40: MQTT Server/JSA
- Batch 41: MQTT Client/IO
All plans include mandatory verification protocol and anti-stub guardrails.
Updated batches.md with file paths and planned status.
All 42 batches (0-41) now have design docs and implementation plans.
2026-02-27 17:27:51 -05:00
Joseph Doherty
f8dce79ac0
Add batch plans for batches 31-36 (rounds 16-18)
...
Generated design docs and implementation plans via Codex for:
- Batch 31: Raft Part 2
- Batch 32: JS Cluster Meta
- Batch 33: JS Cluster Streams
- Batch 34: JS Cluster Consumers
- Batch 35: JS Cluster Remaining
- Batch 36: Stream Lifecycle
All plans include mandatory verification protocol and anti-stub guardrails.
Updated batches.md with file paths and planned status.
2026-02-27 17:01:31 -05:00
Joseph Doherty
c05d93618e
Add batch plans for batches 23-30 (rounds 12-15)
...
Generated design docs and implementation plans via Codex for:
- Batch 23: Routes
- Batch 24: Leaf Nodes
- Batch 25: Gateways
- Batch 26: WebSocket
- Batch 27: JetStream Core
- Batch 28: JetStream API
- Batch 29: JetStream Batching
- Batch 30: Raft Part 1
All plans include mandatory verification protocol and anti-stub guardrails.
Updated batches.md with file paths and planned status.
2026-02-27 16:33:10 -05:00
Joseph Doherty
dc3e162608
Add batch plans for batches 13-15, 18-22 (rounds 8-11)
...
Generated design docs and implementation plans via Codex for:
- Batch 13: FileStore Read/Query
- Batch 14: FileStore Write/Lifecycle
- Batch 15: MsgBlock + ConsumerFileStore
- Batch 18: Server Core
- Batch 19: Accounts Core
- Batch 20: Accounts Resolvers
- Batch 21: Events + MsgTrace
- Batch 22: Monitoring
All plans include mandatory verification protocol and anti-stub guardrails.
Updated batches.md with file paths and planned status.
2026-02-27 15:43:14 -05:00
Joseph Doherty
f0455a1e45
Add batch plans for batches 6-7, 9-12, 16-17 (rounds 4-7)
...
Generated design docs and implementation plans via Codex for:
- Batch 6: Opts package-level functions
- Batch 7: Opts class methods + Reload
- Batch 9: Auth, DirStore, OCSP foundations
- Batch 10: OCSP Cache + JS Events
- Batch 11: FileStore Init
- Batch 12: FileStore Recovery
- Batch 16: Client Core (first half)
- Batch 17: Client Core (second half)
All plans include mandatory verification protocol and anti-stub guardrails.
Updated batches.md with file paths and planned status.
2026-02-27 14:56:19 -05:00
Joseph Doherty
b928be4f2f
Add batch plans for batches 1-5 and 8 (rounds 1-3)
...
Generated design docs and implementation plans via Codex for:
- Batch 1: Proto, Const, CipherSuites, NKey, JWT
- Batch 2: Parser, Sublist, MemStore remainders
- Batch 3: SendQ, Service, Client ProxyProto
- Batch 4: Logging
- Batch 5: JetStream Errors
- Batch 8: Store Interfaces
All plans include mandatory verification protocol and anti-stub guardrails.
Updated batches.md with file paths and planned status.
2026-02-27 14:11:29 -05:00
Joseph Doherty
f98e33457f
Add batch tracking markdown with all 42 implementation batches
2026-02-27 13:23:17 -05:00
Joseph Doherty
ee0827d7d4
Reconcile batch 0 with 553 implementable tests and add design/plan docs
...
Map 553 deferred tests whose feature dependencies are all verified into
batch 0 (batch_tests table). Add Codex-generated design and implementation
plan for batch 0 execution.
2026-02-27 13:20:29 -05:00
Joseph Doherty
4e61314c1c
docs: add AGENTS.md for OpenAI Codex with PortTracker reference and porting workflow
2026-02-27 06:11:11 -05:00
Joseph Doherty
3297334261
docs: add audit-verified status updates design
2026-02-27 05:46:12 -05:00
Joseph Doherty
485c7b0c2e
docs: add unit test audit extension design
2026-02-27 05:34:31 -05:00
Joseph Doherty
84dc9d1e1d
docs: add feature audit script implementation plan
...
7 tasks: add Roslyn package, create SourceIndexer, FeatureClassifier,
AuditCommand, smoke test, execute audit, cleanup.
2026-02-27 05:12:49 -05:00
Joseph Doherty
60dce2dc9a
docs: add feature audit script design
...
Automated PortTracker CLI command (feature audit) using Roslyn syntax
tree analysis to classify 3394 unknown features into verified/stub/n_a/deferred.
2026-02-27 05:09:37 -05:00
Joseph Doherty
e7f259710a
docs: add feature status audit implementation plan
...
68 batch tasks processing 50 features each. Each batch: fetch unknown
features, inspect .NET source, classify, dry-run, execute via PortTracker CLI.
2026-02-27 04:50:37 -05:00
Joseph Doherty
810ef29dbb
docs: add feature status audit design
...
Design for classifying 3394 unknown features against their .NET
implementations in batches of 50, using PortTracker batch-update
with mandatory dry-run before execution.
2026-02-27 04:49:21 -05:00
Joseph Doherty
a99092d0bd
docs: add PortTracker batch operations implementation plan
...
7 tasks: Database transaction helper, BatchFilters infrastructure,
batch commands for feature/test/module/library, and smoke tests.
2026-02-27 04:37:36 -05:00
Joseph Doherty
97be7a25a2
docs: add PortTracker batch operations design
...
Design for batch-update and batch-map subcommands across all entity
types (feature, test, module, library) with shared filter infrastructure
and dry-run-by-default safety.
2026-02-27 04:34:52 -05:00
Joseph Doherty
7750b46f9f
docs: Phase 7 implementation plan — 11 tasks, 10 sessions
...
Covers schema migration, small-module verification, 224 stub fills,
401 new unit tests, 2126 deferred server-integration tests, and
NatsServerBehaviorTests integration baseline.
2026-02-26 18:49:24 -05:00
Joseph Doherty
d09de1c5cf
docs: Phase 7 design — porting verification approach
...
Defines two-layer test strategy (unit vs server-integration/deferred),
10-session structure, schema extension adding deferred status, and
completion criteria for Phase 7.
2026-02-26 18:38:28 -05:00
Joseph Doherty
8253f975ec
docs: implementation plan for completing 93 stub features
2026-02-26 16:59:33 -05:00
Joseph Doherty
63715f256a
docs: design for completing 93 stub features (config binding + auth implementation)
2026-02-26 16:54:05 -05:00
Joseph Doherty
88b1391ef0
feat: port session 07 — Protocol Parser, Auth extras (TPM/certidp/certstore), Internal utilities & data structures
...
Session 07 scope (5 features, 17 tests, ~1165 Go LOC):
- Protocol/ParserTypes.cs: ParserState enum (79 states), PublishArgument, ParseContext
- Protocol/IProtocolHandler.cs: handler interface decoupling parser from client
- Protocol/ProtocolParser.cs: Parse(), ProtoSnippet(), OverMaxControlLineLimit(),
ProcessPub/HeaderPub/RoutedMsgArgs/RoutedHeaderMsgArgs, ClonePubArg(), GetHeader()
- tests/Protocol/ProtocolParserTests.cs: 17 tests via TestProtocolHandler stub
Auth extras from session 06 (committed separately):
- Auth/TpmKeyProvider.cs, Auth/CertificateIdentityProvider/, Auth/CertificateStore/
Internal utilities & data structures (session 06 overflow):
- Internal/AccessTimeService.cs, ElasticPointer.cs, SystemMemory.cs, ProcessStatsProvider.cs
- Internal/DataStructures/GenericSublist.cs, HashWheel.cs
- Internal/DataStructures/SubjectTree.cs, SubjectTreeNode.cs, SubjectTreeParts.cs
All 461 tests pass (460 unit + 1 integration). DB updated for features 2588-2592 and tests 2598-2614.
2026-02-26 13:16:56 -05:00
Joseph Doherty
b335230498
chore: scaffold .NET solution structure for Phase 6
...
Creates the four-project .NET 10 solution (ZB.MOM.NatsNet.slnx):
- ZB.MOM.NatsNet.Server: main library with MEL, BCrypt.Net-Next, IronSnappy
- ZB.MOM.NatsNet.Server.Host: console host with Serilog + Microsoft.Extensions.Hosting
- ZB.MOM.NatsNet.Server.Tests: xUnit 2.9 / Shouldly / NSubstitute / BenchmarkDotNet
- ZB.MOM.NatsNet.Server.IntegrationTests: same test stack, separate project
Also adds Phase 6 porting plan and task-tracking JSON.
2026-02-26 08:03:21 -05:00
Joseph Doherty
023a5ddb7e
chore: complete phase 5 - verify all .NET mappings
...
All verification checks passed: zero unmapped items, zero collisions,
all PascalCase naming, valid namespaces, all N/A items justified, all
tests targeting correct project. Fixed 8 non-PascalCase method names.
2026-02-26 07:45:05 -05:00
Joseph Doherty
8051436f57
docs: add .NET coding standards and reference from phase docs
...
Establish project-wide rules for testing (xUnit 3 / Shouldly /
NSubstitute), logging (Microsoft.Extensions.Logging + Serilog +
LogContext), and general C# conventions. Referenced from CLAUDE.md
and phases 4-7.
2026-02-26 07:27:30 -05:00
Joseph Doherty
1fd7e5193b
chore: complete phase 3 - map all 36 Go libraries to .NET equivalents
...
Map every external Go dependency to its .NET BCL, NuGet, or custom
implementation target, completing the library mapping phase.
2026-02-26 07:20:16 -05:00
Joseph Doherty
e0e5e427e1
docs: complete phase 2 - verification of captured items
...
All database counts verified against disk baselines: 109 source files,
85 test files, 3673 features, 3257 tests, 36 library imports. Zero
orphaned or dangling records. No circular dependencies.
2026-02-26 07:15:16 -05:00
Joseph Doherty
c5964c66c5
chore: complete phase 1 - Go codebase decomposition
...
Run Go AST analyzer against nats-server source, populating porting.db
with 12 modules, 3673 features, 3257 unit tests, 11 inter-module
dependencies, and 36 external library imports.
2026-02-26 07:06:57 -05:00
Joseph Doherty
6021d8445e
docs: link completion criteria to Gitea issues and add issue tracking guidance
...
- Created 52 Gitea issues across milestones 1-7, one per completion criterion
- Each criterion now links to its corresponding issue ([#N](url) format)
- Milestone Tracking sections updated with Issue Updates subsection:
when/how to comment, close issues via CLI or web UI
- Phases 4-7 criteria converted from plain bullets to checkbox format
2026-02-26 06:50:08 -05:00
Joseph Doherty
6983cb60bb
docs: add Gitea milestone tracking instructions to all phase docs
...
Each phase doc now includes:
- Milestone Tracking section linking to the corresponding Gitea milestone
- Checklist item in Completion Criteria to close the milestone
- Phase 7 also closes the Final: Porting Complete milestone (ID 8)
2026-02-26 06:44:48 -05:00
Joseph Doherty
8d68f63e6c
chore: update project structure, naming, and add reporting infrastructure
...
- Update all 7 phase docs with source/target location references
(golang/ for Go source, dotnet/ for .NET version)
- Rename NATS.Server to ZB.MOM.NatsNet.Server in phase 4-7 docs
- Update solution layout to dotnet/src/ and dotnet/tests/ structure
- Create CLAUDE.md with project summary and phase links
- Update .gitignore: track porting.db, add standard .NET patterns
- Add golang/nats-server as git submodule
- Add reports/generate-report.sh and pre-commit hook
- Add documentation_rules.md to version control
2026-02-26 06:38:56 -05:00
Joseph Doherty
ca6ed0f09f
docs: add phase 4-7 instruction guides
2026-02-26 06:23:13 -05:00
Joseph Doherty
1bc64cf36e
docs: add phase 1-3 instruction guides
2026-02-26 06:22:21 -05:00
Joseph Doherty
1909aa9fae
Add porting tracker implementation plan with 17 tasks
...
Detailed step-by-step plan covering: SQLite schema, Go AST analyzer
(5 files), .NET PortTracker CLI (8 command groups), and 7 phase
instruction documents. Includes native task tracking and persistence.
2026-02-26 06:02:54 -05:00
Joseph Doherty
3615dcc78a
Add porting tracker design document
...
Design for SQLite-based tracking system to manage the Go-to-.NET port
of nats-server. Includes DB schema (modules, features, unit_tests,
dependencies, library_mappings), Go AST analyzer for codebase
decomposition, .NET CLI tool for ongoing management, and 7 phased
workflow guides.
2026-02-26 05:56:58 -05:00