33 lines
1.3 KiB
Markdown
33 lines
1.3 KiB
Markdown
# Code Review: Project/Infra Metadata
|
|
|
|
## Scope
|
|
- `go.mod`, `go.sum`
|
|
- `flake.nix`, `flake.lock`
|
|
- `LICENSE`
|
|
|
|
## Findings
|
|
### ✅ Strengths
|
|
- Nix flake provides build + dev shell and a hardened systemd service definition.
|
|
- Go module dependencies are explicit; module list is straightforward.
|
|
- LICENSE is standard MIT.
|
|
|
|
### ⚠️ Issues / Opportunities
|
|
1. **Flake description still Matterbridge-centric**
|
|
- Description/metadata mention Matterbridge sidecar; Matrix-native mode is now supported.
|
|
- Consider updating description/homepage to avoid confusion.
|
|
|
|
2. **Nix service unit assumes Matterbridge**
|
|
- `after = [ "network.target" "matterbridge.service" ]` bakes in Matterbridge even for Matrix-native mode.
|
|
- Consider making the dependency conditional or optional.
|
|
|
|
3. **Go toolchain version mismatch with README/worklog**
|
|
- `go.mod` is now 1.24.0, while README says 1.22+ and worklog mentions 1.22.8.
|
|
- Consider aligning documentation and nix dev shell Go version.
|
|
|
|
4. **Vendor hash may need update after deps**
|
|
- `vendorHash` in flake may need updating due to new deps (mautrix/sqlite).
|
|
- Nix builds will fail until hash is refreshed.
|
|
|
|
## Notes
|
|
- Dev shell includes `matterbridge`; consider adding `sqlite` if using the pure-Go driver for local inspection.
|