Packaging era split: 25.12 SDK cannot emit ipk — two pinned SDKs (format-selected), or drop ipk
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- go
- Domain
- build-system, release
Research direction
Start by reading packaging/build-inputs.json, build-sdk-package.sh, and the CI matrix, then compare the existing per-release Go handling in go_per_release and sdk-go-version.sh. The maintainer decision is whether ipk remains supported; if yes, done means format-selected, digest-pinned SDKs and matching arch × format CI rows, with each lane producing its expected package. If no, remove the ipk matrix rows and document the 25.12/apk-only choice.
Written by the indexing model from the issue text.
Description
The 24.x/25.x packaging split — analysis and proposal (from the rc1 build driver failures)
Observed: the ipk-lane driver failed on the 25.12.0 SDK with "no .ipk found" — because OpenWrt 25.12 is the apk-native era: its SDK emits .apk regardless of the CONFIG_USE_APK dance (scripts/build-sdk-package.sh appends CONFIG_USE_APK=y only for the apk branch; 25.12's default is already apk, so the ipk lane searches for an extension that era never produces). The rc1 build's apk lane succeeded (tollgate-wrt-0.6.0_rc1-r0.apk staged); the ipk lane cannot succeed on this SDK by construction.
Why ipk can't just be dropped: fork #93/#110's evidence — the installed base installs via opkg on feed-less 24.10-era systems (and orphan-removal semantics that #707 fail-louds). The ipk output is the format those devices consume.
Proposal — two pinned SDKs, format-selected:
packaging/build-inputs.json: extendopenwrt_sdkfrom a singlerelease: 25.12.0to per-format pins —apk: {release: 25.12.0, …}andipk: {release: 24.10.x, …}— each with its own digest-pinned targets. The scaffolding already exists:go_per_releasemaps 24.10's toolchain today, andsdk-go-version.shaudits per release; the.go.versionpin follows the apk (release) line as the shipped-binary truth, with the ipk SDK's older Go checked as ≥ directive floor (and if 24.10's feed Go < 1.26: the ipk lane pinsGOTOOLCHAINfrom the manifest tarball — the same single-source-of-truth rule #687 established).build-sdk-package.sh:PACKAGE_FORMATselects its SDK; the driver'sPACKAGE_EXTENSIONcheck then matches what its era actually emits.- CI matrix: arch × format → the right SDK per row.
Owner decision embedded: confirm ipk stays a supported output (recommend yes — the installed base needs it). If instead the answer is "25.12/apk only", the ipk matrix rows delete and this issue closes with the era note.
(From the orchestrator session; the release lane is fighting this exact mismatch in the rc1 driver right now — implementation can ride its current build work.)
- Dominant language
- Go
- Stars
- 12
- Forks
- 14
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 211
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from OpenTollGate/tollgate-module-basic-go
-
go-battery needs an ndsctl on PATH: TestPurchaseSessionGuardHoldsThroughTheOutcomeUnknownWindow fails on bare hosts (passes with stub)Possibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
OpenTollGate/tollgate-module-basic-go#726 ·
Maintainers usually reply within 1 day
-
rebrand-literal-gutter: uhttpd section-vocabulary check trips on a COMMENT (uhttpd.luci in 92-tollgate-admin-setup:178)Possibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
OpenTollGate/tollgate-module-basic-go#723 ·
Maintainers usually reply within 1 day
-
Discovery endpoint serves text/plain content-type on / — r2r clients warnPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
OpenTollGate/tollgate-module-basic-go#628 ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
OpenTollGate/tollgate-module-basic-go#725 ·
Maintainers usually reply within 1 day
-
cloud-lab Dockerfile.client: mid-file ARG invisible to FROM — client and killer images unbuildable on docker/buildkit 29 (golang:-bookworm)Possibly taken @Amperstrand claimed this today. Open
Difficulty 1/5 Under an hour Newbie friendliness 25/100
OpenTollGate/tollgate-module-basic-go#724 ·
Maintainers usually reply within 1 day
All issues in OpenTollGate/tollgate-module-basic-go
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 4 days
-
bug needs-acceptance
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
vllm-project/semantic-router#4744 ·
Maintainers usually reply within 1 day
-
ScalingModifiers formula fails with "formula returned non-float result" when expression evaluates to an integerPossibly taken @Sarthak-Pandey claimed this today. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
kedacore/keda#8270 · 1 comment ·
Maintainers usually reply within 1 day
-
bug from-studio
Difficulty 2/5 1-3 hours Newbie friendliness 63/100
esengine/DeepSeek-Reasonix#12355 ·
Maintainers usually reply within 1 day
-
[Bug]: Gemini provider replaces a client-supplied `extra_content.google.thought_signature` with `skip_thought_signature_validator`, and writes the sentinel on every replayed function call (old turns, all models)Possibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day