# Session 13: Configuration Reload

## Summary

Hot-reload system for server configuration. Detects config changes and applies them without restarting the server. Each option type has a reload handler.

## Scope

| Go File | Features | Feature IDs | Go LOC |
|---------|----------|-------------|--------|
| server/reload.go | 89 | 2800–2888 | 2,085 |
| **Total** | **89** | | **2,085** |

## .NET Classes

- `ConfigReloader` — reload orchestrator
- 50+ individual option reload types (e.g., `AuthOption`, `TlsOption`, `ClusterOption`, `JetStreamOption`, etc.)

## Test Files

| Test File | Tests | Test IDs |
|-----------|-------|----------|
| server/reload_test.go | 73 | 2721–2793 |
| **Total** | **73** | |

## Dependencies

- Session 03 (Configuration — ServerOptions)
- Session 09 (Server Core Part 1)

## .NET Target Location

- `dotnet/src/ZB.MOM.NatsNet.Server/ConfigReloader.cs`

## Notes

- Many small reload option types — consider using a single file with nested classes or a separate `Reload/` folder
- Each option type implements a common interface for diff/apply pattern
- 73 tests cover each option type's reload behavior
