Changelog
Toutes les versions publiées de goflag : le CLI et la bibliothèque Next.js, sur une seule frise. Les entrées sont générées depuis l'historique des commits, donc cette page ne peut pas diverger de ce qui est réellement sorti.
Épingler cette version
pnpm dlx @goflag/cli@0.2.12 https://example.com0.2.12
@goflag/cli
16 août 2026
0.2.12@goflag/cli
16 août 2026
Fonctionnalités
- clia JPEG says its size too, and the probe reads it30c6ef8
- cliog.image.alt.caption — the second site earned it1a6e788
- clithe declared size of a preview image meets the real one062ba35
- clithe preview gains the locale axis and the hydration deltaa2632ce
- clithe preview shows what the catalogue cannot judge24c1d3c
Corrections de bugs
- cli--report is written on the run that captures a baseline50f9583
- cli--summary is refused in baseline mode rather than swallowed4a377d4
- clia deeply nested JSON-LD block no longer costs the audit the page5cfb0e4
- clia JSON report piped to another process arrives wholeb5ff798
- clithe preview survives a hostile page and refuses what it would ignore61b17c8
- releasea release is decided on the package that moved7cb9dac
- the README's version pins are held against the manifestecbe0f7
0.2.11
@goflag/cli
16 août 2026
0.2.11@goflag/cli
16 août 2026
Fonctionnalités
- clikeep the sitemap document tree, and judge what it makes judgeable92fb93e
- clilet a site be asked a question, not only told a verdict2a7cf21
- clisource hreflang.missing, and say why the other one cannot be2c0669f
- clisplit the sitemap mismatch into the half Google backs and the half it does not3b0d2fa
Corrections de bugs
- clistop reading `/doc/` as a locale, and prove the tree off the wirecf1bf0c
0.4.0
@goflag/next
16 août 2026
0.4.0@goflag/next
16 août 2026
Changements incompatibles
- next`routes.metadata({ image })` no longer emits `og:image:alt` derived from the page title. Pass `imageAlt` beside `image` to keep the tag; without it the tag is omitted, which is what `og.image.alt` is there to report. The title was never a valid value — the protocol asks for what is in the image and excludes a caption — and because it satisfied the presence check, no audit could ever say so.
- nextthe library declares only what it was told about an image
Fonctionnalités
- nextthe library declares only what it was told about an imaged5eab4c
Corrections de bugs
- nexta title is a caption, so it is not an og:image:alte237dc3
- nextthe test reads the first image without indexing a unionc565fac
- releasea release is decided on the package that moved7cb9dac
Documentation
- nextog:image:alt stopped defaulting, and nothing said so4f61483
0.2.10
@goflag/cli
15 août 2026
0.2.10@goflag/cli
15 août 2026
Fonctionnalités
- clifind the contradictions no single artefact showse765bf3
- clijudge the sitemap, and delete the fields that pretended todb66503
- clilet a finding say how authoritative it isc46fb64
- cliprobe what the sitemap promises, without asking twice34c1713
- cliread robots.txt instead of scanning it22f2c62
0.2.9
@goflag/cli
15 août 2026
0.2.9@goflag/cli
15 août 2026
Fonctionnalités
- cliask the origin for the favicon nobody declaresf7098e5
- clijudge the file, not only the tag that points at itbe09ac9
- clijudge the icons the extraction was already collecting338a473
- clijudge the og:image, not just its absence5ab8faa
Corrections de bugs
- clipoliteness is owed to other people's servers, not to the originb660bdb
0.3.3
@goflag/next
15 août 2026
0.3.3@goflag/next
15 août 2026
Fonctionnalités
- nextsay the cluster in both vocabularies, and describe the card6f5fbd3
0.2.8
@goflag/cli
13 août 2026
0.2.8@goflag/cli
13 août 2026
Fonctionnalités
- clirender the help and the parser from one flag table0d38ec6
- i18ncount the translations nothing vouches for273847a
- i18npair translations from reciprocal <head> alternates too9f9cc3a
Corrections de bugs
- rulesfollow declared clusters in hreflang.sitemap-mismatch0f934f4
Documentation
- clidocument `goflag flags`, and guard the README's flag list7372ff0
0.2.7
@goflag/cli
13 août 2026
0.2.7@goflag/cli
13 août 2026
Fonctionnalités
- cligoflag rules — the catalogue as data, not as a copy5e56afc
- clilet the sitemap say which URLs are the same pagee9dda38
- the site reads the rule catalogue instead of copying ite07c24d
Corrections de bugs
- cliask a second time before calling a page unreachablea972572
- cliask ICU whether a language tag exists, not a regexb3e6f8d
- clisay when a page was judged without the browser it neededcc03dbe
Documentation
- correct what the documentation says the CLI does7bc8aeb
0.3.2
@goflag/next
13 août 2026
0.3.2@goflag/next
13 août 2026
Fonctionnalités
- nextlet a collection say which entries are one pagee7cdf90
0.3.1
@goflag/next
13 août 2026
0.3.1@goflag/next
13 août 2026
Documentation
- correct what the documentation says the CLI does7bc8aeb
- correct what this session's own documentation got wrong25b8c3a
0.2.6
@goflag/cli
12 août 2026
0.2.6@goflag/cli
12 août 2026
Corrections de bugs
- cliask a second time before calling a page unreachablea972572
0.2.5
@goflag/cli
10 août 2026
0.2.5@goflag/cli
10 août 2026
Corrections de bugs
- clikeep one copy of a document two URLs redirect onto445097d
0.2.4
@goflag/cli
10 août 2026
0.2.4@goflag/cli
10 août 2026
Corrections de bugs
- clireport the pages the audit meant to reach and did not8d7c2da
0.2.3
@goflag/cli
9 août 2026
0.2.3@goflag/cli
9 août 2026
Fonctionnalités
- clichoose pages by the shape of the site, not by a capdad2d78
Corrections de bugs
- clian unreachable sitemap is not a site without one39c9fb2
- clileave the crawl room for pages the selection never named69d2130
0.2.2
@goflag/cli
9 août 2026
0.2.2@goflag/cli
9 août 2026
Corrections de bugs
- clicreate the directory a --baseline or --report path names3489c09
0.3.0
@goflag/next
9 août 2026
0.3.0@goflag/next
9 août 2026
Fonctionnalités
- nextlet a route be declared without being listed6aa12f8
0.2.1
@goflag/cli
8 août 2026
0.2.1@goflag/cli
8 août 2026
Corrections de bugs
- i18nfold locale tags to one identity, as BCP 47 says they are7ec450f
0.2.0
@goflag/next
8 août 2026
0.2.0@goflag/next
8 août 2026
Changements incompatibles
- next`locales` refuses tags naming no real language or region; `bcp47()` returns the canonical case rather than the declared string; and `localeTags.openGraph` becomes unnecessary rather than required.
Fonctionnalités
- nextadd @goflag/next, the route registryc762983
- nextderive every locale form from ICU, validate against it9948f92
- nextsitemap facts per route, and robots that keeps quietbfa3dd4
Corrections de bugs
- nextemit the locale tag the site declared, do not re-case itde1b725
- nextthe manifest must say what npm says, not what comes nextbf32069
Documentation
- a runbook for the one step that cannot be automateda1dd9f9
0.2.0
@goflag/cli
6 août 2026
0.2.0@goflag/cli
6 août 2026
Changements incompatibles
- rulesthe exported `Rule` contract is entirely new. `check(ctx)` and `appliesTo` are gone, replaced by `evaluate(extraction)` returning a verdict, and `summary` is now `title`. Code importing the rule types from `@goflag/cli` must be updated; the CLI itself, its JSON report and its exit codes are unaffected.
Fonctionnalités
- cliadd --conformance and --advisories027c973
- cliadd --profile, a policy overlay over the rule set07a6d00
- rulesadd the versioned extraction model rules read instead of HTMLef3bdd8
- rulesground every rule in a cited source of truthc5c44e3
- rulesrebuild the engine on sourced descriptors155a0a1
- websitedraw the checks literally, tab installs per package manager, drop em-dashes264b4ea
- websitemake the hero a diagram of the audit, switchable per passbb1b179
- websitemake the landing scannable and stop underselling811d8b7
- websitepublish the landing page, documentation and changelogf1b330e
- websitesay everything once and let the hero cards show instead of tellf3e4de3
- websitesplit legal pages per document and refine the hero diagram38ee25f
Corrections de bugs
- cigive the website build the two things only CI withholdsb868a05
- cistop failing the source check on someone else's outage7b13113
- websiteclear the three high advisories the site brought in1f9595f
Documentation
- document rigor, profiles and the two new report sections3eebd53
- make the README a path from install to a gated pipeline54bfe54
- spec the sitemap/robots artefact layer and slot it as Phase G7eef112
0.1.4
@goflag/cli
4 août 2026
0.1.4@goflag/cli
4 août 2026
Fonctionnalités
- clicapture a baseline with the command that will judge itbfbebca
Corrections de bugs
- cirelease only when the published surface moved919b590
Documentation
- correct the README for the monorepo and the published namee50ce53
- planrecord how distribution actually shipped5315126
0.1.3
@goflag/cli
2 août 2026
0.1.3@goflag/cli
2 août 2026
Corrections de bugs
- cistop the tag pipeline dying on an override with no job left5fed36a
- distdrop the ./ from bin, which npm 11 now deletes outrightd285116
Documentation
- ogplan OG images as the remedy to a rule we already ship80348c4
- refresh AGENTS.md for the monorepo and pnpm 116f77c79
0.1.2
@goflag/cli
2 août 2026
0.1.2@goflag/cli
2 août 2026
Corrections de bugs
- cistop tag pipelines dying on a cross-project includeaeb1683
0.1.1
@goflag/cli
2 août 2026
0.1.1@goflag/cli
2 août 2026
Corrections de bugs
- cikeep playwright and its image in lockstep, and fail when they driftc637fa0
- cistop the release guard inverting itself on a matchd597fe5
- depsrebuild the lockfile under the release-age policy71cfe99
Documentation
- toolspin the deprecate command, and say why it is not a one-way doord1da97f
0.1.0
@goflag/cli
31 juillet 2026
0.1.0@goflag/cli
31 juillet 2026
First published version. Every entry above this one is generated from commit history; this one is written by hand, because the history before it belongs to a different tool. goflag began as a browser UI called headlint, and replaying that changelog here would document a product that no longer exists. Published as `@goflag/cli`; the command it installs is `goflag`. The bare `goflag` package name is deliberately left unclaimed for now.
Autres changements
- **Broken links** — crawls the site, dedupes targets globally so a footer link on 500 pages is probed once, and checks each with `HEAD`→`GET` fallback, redirect-chain and loop detection, soft-404 and anti-bot triage.
- **Missing translations** — builds a `route × locale` matrix seeded from the sitemap, and flags routes that exist in one locale and not another, hreflang reciprocity gaps, missing `x-default`, and invalid locale tags.
- **robots.txt policy** — flags a site that forbids crawling while its pages ask to be indexed. Both cannot hold, and robots.txt wins.
- **SEO metadata** — the `<head>` mistakes that cost traffic and are invisible in a browser: missing or oversized title and description, missing or relative canonical, missing `og:title` / `og:description` / `og:image`, missing viewport, contradictory robots directives.
- `goflag <url>` audits a deployed site. `--start "pnpm start"` boots the app first and stops it afterwards, so a merge can be gated on the built output.
- `--regressions-only` with `--baseline` fails only on findings that are new, and `--max-debt` ratchets the known ones down. A gate that can never reach zero gets switched off, and a suppression file that reports green lies.
- `--json` and `--summary` produce the machine-readable report everything else is built on.
- Scope is Next.js App Router: diagnostics and fix snippets assume it.
- Translation gaps and hreflang reciprocity live outside the rule catalogue, so they carry no severity overlay of their own.
- No rule carries provenance metadata yet. Treat the length thresholds as the heuristics they are, not as specification.