Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Four drift fences for tests/contract/ (+ test.yml clean-container lane + pre-commit wiring)

Aperta
#767 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@Amperstrand ci sta già lavorando.

Dal 8/10/2026.

  • #775 di @Amperstrand — aperta

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
github-actions, go
Ambito
ci-cd, testing-qa

Direzione di ricerca

Start by reading the existing contract checks under tests/contract/, test.yml, and hooks/pre-commit; inspect packaging/build-inputs.json for the pinned Go version and the current SSID matcher tests. Add the four specified drift fences and their shared SSID fixture, then verify the Go suite passes both locally and in the clean golang:1.26.8-bookworm lane. Done means each gate catches the described drift without widening the clean-container check to mask failures.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Commissioned hardening of the contract estate. Four fences, one PR, one commit each:

  1. check-changelog-fragments.py — every changelog.d/*.md must reference a real PR/issue number (filename and body in agreement), with no placeholder text. Live specimen: changelog.d/vm-campaign.added.md carries no number at all (its change is merged PR #704). The failure class this stops: a fragment that cites a foreign PR's number (#631/#743 class) or a placeholder, which folds a wrong or dead link into the release notes.
  2. check-toolchain-parity.py extension — every go.mod go directive must be <= the manifest's pinned .go.version (packaging/build-inputs.json, currently 1.26.8). Today's tree is clean (max directive: 1.26.0); the fence catches future drift.
  3. check-ssid-naming — the SSID matcher (hasTollGateSSID) must accept bare TollGate-/Net4sats- AND single-!-decorated forms, case-insensitively, with a double ! rejected — pinned by a committed fixture table shared by the Go unit test and the contract check. The SSID contract broke twice (#618 — brand-blind matcher; #706 — the ! decoration whose reader half is specified but unlanded). This lands #706's reader-side tolerance so the fixture table is green on merge; #706 then only needs its writer/installer half.
  4. test.yml clean-container job — the module suite in pristine golang:1.26.8-bookworm. A pass there but failure on ubuntu-latest runners (or vice versa) is hidden host-state coupling (the /etc/tollgate class): runner-image packages, $HOME leftovers, injected env or caches. Each failure gets its own issue; the fence is never widened to paper over one.

Plus wiring: hooks/pre-commit gains the fragment-number and SSID-naming gates and go.mod triggers on toolchain parity.

Lingua principale
Go
Stelle
12
Fork
14
Merge medio
3g 21h
PR unite (30g)
269

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di OpenTollGate/tollgate-module-basic-go

Tutte le issue di OpenTollGate/tollgate-module-basic-go

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.