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)
This commit is contained in:
Joseph Doherty
2026-02-26 06:44:48 -05:00
parent 8d68f63e6c
commit 6983cb60bb
7 changed files with 93 additions and 0 deletions

View File

@@ -33,6 +33,10 @@ echo $CGO_ENABLED # should print 1 (or be unset; we set it explicitly below)
| Go source code | `golang/` (specifically `golang/nats-server/`) |
| .NET ported version | `dotnet/` |
## Milestone Tracking
This phase corresponds to **Milestone 1** in [Gitea](https://gitea.dohertylan.com/dohertj2/natsnet/milestone/1). When starting this phase, verify the milestone is open. Assign relevant issues to this milestone as work progresses.
## Steps
### Step 1: Initialize the porting database
@@ -230,6 +234,15 @@ Phase 1 Checklist:
Note: The "All libraries mapped" item will be unchecked -- that is expected.
Library mapping is the concern of Phase 3.
- [ ] Close the Phase 1 milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/1" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/1
## Troubleshooting
### CGO_ENABLED not set or build fails with "gcc not found"

View File

@@ -21,6 +21,10 @@ proceeding to library mapping and porting.
| Go source code | `golang/` (specifically `golang/nats-server/`) |
| .NET ported version | `dotnet/` |
## Milestone Tracking
This phase corresponds to **Milestone 2** in [Gitea](https://gitea.dohertylan.com/dohertj2/natsnet/milestone/2). When starting this phase, verify the milestone is open. Assign relevant issues to this milestone as work progresses.
## Steps
### Step 1: Generate the summary report
@@ -265,6 +269,14 @@ Phase 2 is complete when ALL of the following are true:
- [ ] `dependency ready` returns at least one item (the graph has valid roots).
- [ ] Library mappings table contains all external imports.
- [ ] `phase check 1` passes with all items except "All libraries mapped" checked.
- [ ] Close the Phase 2 milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/2" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/2
## Troubleshooting

View File

@@ -20,6 +20,10 @@ returns an empty list and every import has a documented .NET migration path.
| Go source code | `golang/` (specifically `golang/nats-server/`) |
| .NET ported version | `dotnet/` |
## Milestone Tracking
This phase corresponds to **Milestone 3** in [Gitea](https://gitea.dohertylan.com/dohertj2/natsnet/milestone/3). When starting this phase, verify the milestone is open. Assign relevant issues to this milestone as work progresses.
## Steps
### Step 1: List all unmapped libraries
@@ -252,6 +256,14 @@ Phase 3 is complete when ALL of the following are true:
guidance).
- [ ] `phase check 1` shows all items checked including "All libraries mapped".
- [ ] A mapping report has been exported for reference.
- [ ] Close the Phase 3 milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/3" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/3
## Troubleshooting

View File

@@ -16,6 +16,10 @@ Every module, feature, and test in the porting database must have either a .NET
- **Go source code** is located in the `golang/` folder (specifically `golang/nats-server/`)
- **.NET ported version** is located in the `dotnet/` folder
## Milestone Tracking
This phase corresponds to **Milestone 4** in [Gitea](https://gitea.dohertylan.com/dohertj2/natsnet/milestone/4). When starting this phase, verify the milestone is open. Assign relevant issues to this milestone as work progresses.
## Solution Structure
Define the .NET solution layout following standard conventions:
@@ -185,6 +189,14 @@ dotnet run --project tools/NatsNet.PortTracker -- feature list --status n_a --db
- Every test has `dotnet_project`, `dotnet_class`, and `dotnet_method` set, or status is `n_a` with a reason
- Naming follows PascalCase and the namespace hierarchy described above
- No two features map to the same class + method combination (collisions)
- [ ] Close the Phase 4 milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/4" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/4
## Related Documentation

View File

@@ -16,6 +16,10 @@ Confirm zero unmapped items, validate all N/A justifications, enforce naming con
- **Go source code** is located in the `golang/` folder (specifically `golang/nats-server/`)
- **.NET ported version** is located in the `dotnet/` folder
## Milestone Tracking
This phase corresponds to **Milestone 5** in [Gitea](https://gitea.dohertylan.com/dohertj2/natsnet/milestone/5). When starting this phase, verify the milestone is open. Assign relevant issues to this milestone as work progresses.
## Steps
### Step 1: Confirm zero unmapped items
@@ -191,6 +195,14 @@ dotnet run --project tools/NatsNet.PortTracker -- feature map <id> \
- All tests target the correct test project
- `phase check 5` passes with no errors
- Mapping report exported and reviewed
- [ ] Close the Phase 5 milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/5" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/5
## Related Documentation

View File

@@ -22,6 +22,10 @@ Implement every non-N/A module, feature, and test in the porting database. Work
- **Go source code** is located in the `golang/` folder (specifically `golang/nats-server/`)
- **.NET ported version** is located in the `dotnet/` folder
## Milestone Tracking
This phase corresponds to **Milestone 6** in [Gitea](https://gitea.dohertylan.com/dohertj2/natsnet/milestone/6). When starting this phase, verify the milestone is open. Assign relevant issues to this milestone as work progresses.
## Porting Workflow
This is the core loop. Repeat until all items are complete.
@@ -250,6 +254,14 @@ dotnet run --project tools/NatsNet.PortTracker -- feature map <id> \
- The solution compiles without errors: `dotnet build`
- `dependency blocked` returns no items (or only items waiting for Phase 7 verification)
- `report summary` shows the expected completion counts
- [ ] Close the Phase 6 milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/6" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/6
## Related Documentation

View File

@@ -17,6 +17,10 @@ Every ported module passes its targeted tests. Every item in the database reache
- **Go source code** is located in the `golang/` folder (specifically `golang/nats-server/`)
- **.NET ported version** is located in the `dotnet/` folder
## Milestone Tracking
This phase corresponds to **Milestone 7** in [Gitea](https://gitea.dohertylan.com/dohertj2/natsnet/milestone/7). When starting this phase, verify the milestone is open. Assign relevant issues to this milestone as work progresses.
## Verification Workflow
Work through modules one at a time. Do not move to the next module until the current one is fully verified.
@@ -231,6 +235,22 @@ The issue is at a module boundary. Check:
- Key behavioral scenarios produce equivalent results on Go and .NET servers
- `phase check 7` passes with no errors
- Final report exported and reviewed
- [ ] Close the Phase 7 milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/7" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/7
- [ ] Close the **Final: Porting Complete** milestone in Gitea:
```bash
curl -s -X PATCH "https://gitea.dohertylan.com/api/v1/repos/dohertj2/natsnet/milestones/8" \
-H "Content-Type: application/json" \
-H "Authorization: token $GITEA_TOKEN" \
-d '{"state":"closed"}'
```
Or close it via the Gitea web UI at https://gitea.dohertylan.com/dohertj2/natsnet/milestone/8
## Related Documentation