Skip to content

Commit dbaca64

Browse files
committed
chore(deps): bump x/net to v0.57.0, raise Go floor to 1.25.12, add govulncheck CI
Addresses two dependency-floor findings: 5. golang.org/x/net v0.54.0 carried ~7 published advisories (fixed in v0.55.0/v0.56.0). None were reachable through odek's call graph, but the constraint permitted the vulnerable version. Bumped to v0.57.0 (with x/term v0.45.0 and x/sys v0.47.0 as required companions) and added a govulncheck job to CI so future advisories fail the build. 6. go.mod declared go 1.25.0; scanning with early 1.25.x toolchains traces 22 reachable stdlib CVEs (crypto/tls, crypto/x509, net/http, net/url, net, os, encoding/pem, encoding/asn1), fixed across Go 1.25.2-1.25.12. Raised the go directive to 1.25.12 (verified as the latest 1.25.x patch via go.dev/dl) and stated the minimum build toolchain in the README, docs/DEVELOPMENT.md, and the test/release workflows. Verified: govulncheck reports zero reachable module vulnerabilities after the bump; the single remaining local stdlib report (GO-2026-5856) is fixed in exactly 1.25.12 per the vuln DB and only appears because the local scanning toolchain (go1.26.4) is one patch behind. Full test suite, vet, and golangci-lint pass with the bumped dependencies.
1 parent d581983 commit dbaca64

6 files changed

Lines changed: 34 additions & 12 deletions

File tree

.github/workflows/release.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ jobs:
1616

1717
- uses: actions/setup-go@v5
1818
with:
19+
# Minimum supported build toolchain is Go 1.25.12 (go.mod floor);
20+
# "1.25" resolves to the latest 1.25.x patch release.
1921
go-version: "1.25"
2022

2123
- name: build

.github/workflows/test.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ jobs:
1414

1515
- uses: actions/setup-go@v5
1616
with:
17+
# Minimum supported build toolchain is Go 1.25.12 (go.mod floor);
18+
# "1.25" resolves to the latest 1.25.x patch release.
1719
go-version: "1.25"
1820

1921
- name: build
@@ -42,3 +44,19 @@ jobs:
4244
with:
4345
version: v2.12.2
4446
args: --timeout=10m
47+
48+
vuln:
49+
runs-on: ubuntu-latest
50+
steps:
51+
- uses: actions/checkout@v4
52+
53+
- uses: actions/setup-go@v5
54+
with:
55+
# Latest stable toolchain: stdlib advisories are assessed against
56+
# the newest patch release, and module advisories (e.g. x/net) are
57+
# toolchain-independent. The go.mod floor (go 1.25.12) pins the
58+
# minimum toolchain for downstream builders.
59+
go-version: "stable"
60+
61+
- name: govulncheck
62+
run: go run golang.org/x/vuln/cmd/govulncheck@latest ./...

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
One binary. One loop. Zero frameworks. ReAct (Reasoning + Acting) — think, therefore act.
66

77
```bash
8-
# Install
8+
# Install (requires Go ≥ 1.25.12 — see "Build requirements" below)
99
go install github.com/BackendStack21/odek/cmd/odek@latest
1010

1111
# Use (set ODEK_API_KEY, DEEPSEEK_API_KEY, or OPENAI_API_KEY)
@@ -14,6 +14,8 @@ odek run "How many lines in go.mod?"
1414
# → 3 lines
1515
```
1616

17+
**Build requirements:** Go **1.25.12 or newer**. The `go` directive in `go.mod` pins this floor because earlier 1.25.x toolchains ship reachable standard-library CVEs; CI additionally runs `govulncheck` on every push/PR so new advisories fail the build.
18+
1719
---
1820

1921
## Why odek

docs/DEVELOPMENT.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ no maintained changelog file — create a release/tag and GitHub produces the no
88

99
## Prerequisites
1010

11-
- Go 1.25+ (matches `go.mod`; CI builds with the same toolchain)
11+
- Go 1.25.12+ (matches `go.mod`; CI builds with the same toolchain line and runs `govulncheck` on every push/PR)
1212
- Docker (for sandbox integration tests only)
1313

1414
## Building

go.mod

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
module github.com/BackendStack21/odek
22

3-
go 1.25.0
3+
go 1.25.12
44

55
require (
66
github.com/BackendStack21/go-mcp v1.1.0
77
github.com/BackendStack21/go-vector v1.3.0
8-
golang.org/x/net v0.54.0
9-
golang.org/x/term v0.43.0
8+
golang.org/x/net v0.57.0
9+
golang.org/x/term v0.45.0
1010
)
1111

12-
require golang.org/x/sys v0.44.0
12+
require golang.org/x/sys v0.47.0

go.sum

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ github.com/BackendStack21/go-mcp v1.1.0 h1:NQStOkqUWjzzzmySnfFHvPKhbKr92iBuPJjkN
22
github.com/BackendStack21/go-mcp v1.1.0/go.mod h1:RKFw6nrl6ySQqqrR8KtG7HYZ/heyyjT8SjiEtlbTMY8=
33
github.com/BackendStack21/go-vector v1.3.0 h1:VT1cwPAUzkg3Rt0fXA+jTzW472jgObqs85/TcPs4N7Q=
44
github.com/BackendStack21/go-vector v1.3.0/go.mod h1:TkxZEqKGeN38QNWUoQt4xJcf6n2kI1pY7nu6ibXK1Yo=
5-
golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w=
6-
golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ=
7-
golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ=
8-
golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
9-
golang.org/x/term v0.43.0 h1:S4RLU2sB31O/NCl+zFN9Aru9A/Cq2aqKpTZJ6B+DwT4=
10-
golang.org/x/term v0.43.0/go.mod h1:lrhlHNdQJHO+1qVYiHfFKVuVioJIheAc3fBSMFYEIsk=
5+
golang.org/x/net v0.57.0 h1:K5+3DljvIuDG9/Jv9rvyMywYNFCQ9RSUY6OOTTkT+tE=
6+
golang.org/x/net v0.57.0/go.mod h1:KpXc8iv+r3XplLAG/f7Jsf9RPszJzdR0f58q9vGOuEU=
7+
golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs=
8+
golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
9+
golang.org/x/term v0.45.0 h1:NwWyBmoJCbfTHpxrWoZ9C6/VxOf7ic219I8xZZFdrf0=
10+
golang.org/x/term v0.45.0/go.mod h1:9aqxs0blBcrm/n0L9QW0aRVD+ktan8ssZromtqJC43w=

0 commit comments

Comments
 (0)