diff --git a/changelog-data.json b/changelog-data.json index 3e3caf8..276558a 100644 --- a/changelog-data.json +++ b/changelog-data.json @@ -1,17 +1,35 @@ { - "_comment": "Source of truth for changelog.html's 'Recent updates' list. Regenerated by tools/gen_changelog.mjs from merged PRs carrying both the 'changelog:major' label and a '## What this means for you' section (see CONTRIBUTING.md). Entries are newest first. Do not hand-edit the 'text' field without also updating changelog.html's auto-generated block (run: node tools/gen_changelog.mjs --rebuild).", + "_comment": "Source of truth for changelog.html's 'Recent updates' list. Regenerated by tools/gen_changelog.mjs from merged PRs carrying a '## What this means for you' section (see CONTRIBUTING.md). Entries are newest first. Do not hand-edit the 'text' field without also updating changelog.html's auto-generated block (run: node tools/gen_changelog.mjs --rebuild).", "entries": [ + { + "pr": 83, + "merged_at": "2026-07-20", + "url": "https://github.com/cityscroll/crol-list/pull/83", + "text": "The changelog page now shows only the changes that matter to you: new features, new languages, and real fixes to things that were visibly broken. Smaller changes stay off the page. It no longer explains its own inner workings to you — it just tells you what's new. It also publishes itself now. No one has to click a button to make it live." + }, + { + "pr": 82, + "merged_at": "2026-07-20", + "url": "https://github.com/cityscroll/crol-list/pull/82", + "text": "Digest emails now have a shorter footer. The stats page and the API docs describe click counts more plainly, with no change to what's counted or how." + }, { "pr": 80, "merged_at": "2026-07-17", "url": "https://github.com/cityscroll/crol-list/pull/80", "text": "If you're watching a notice from an agency that files its awards somewhere other than the City Record, you can now ask to be emailed the moment that award shows up. Click \"Email me when the award registers\" on the notice, confirm your email once, and you're done — no extra emails until there's real news, and it's the exact same possible-vs-confirmed distinction the notice page already shows you." }, + { + "pr": 77, + "merged_at": "2026-07-17", + "url": "https://github.com/cityscroll/crol-list/pull/77", + "text": "No visible change to the site. A future code change that would make the changelog page harder to read now gets flagged on its own pull request, before it merges, instead of after." + }, { "pr": 76, "merged_at": "2026-07-17", "url": "https://github.com/cityscroll/crol-list/pull/76", - "text": "Every note that says your answer lives in another public system now hands you the door: click through to the exact record, the filtered dataset view, or an explanation of what was checked. If a source can't be linked yet, the site says so honestly instead of showing a dead mention." + "text": "- Every note that says your answer lives in another public system now hands you the door: click through to the exact record, the filtered dataset view, or an explanation of what was checked. - If a source can't be linked yet, the site says so honestly instead of showing a dead mention." }, { "pr": 74, @@ -25,6 +43,12 @@ "url": "https://github.com/cityscroll/crol-list/pull/72", "text": "Has a saved alert gone quiet? If it finds nothing new for a couple of months, its next email says so. That email links back to the alerts page. Your exact search is already loaded there. You can broaden it in one step." }, + { + "pr": 73, + "merged_at": "2026-07-17", + "url": "https://github.com/cityscroll/crol-list/pull/73", + "text": "No visible change to the site — this only makes the automated changelog update workflow more reliable, so a language-dictionary change in one PR can't leave the changelog page's cache stamp out of date." + }, { "pr": 70, "merged_at": "2026-07-17", @@ -35,31 +59,67 @@ "pr": 64, "merged_at": "2026-07-15", "url": "https://github.com/cityscroll/crol-list/pull/64", - "text": "Opening a notice with no confirmed prior-award history now offers a \"Show possible earlier rounds\" option \u2014 a set of caveated maybes for your own judgment, instead of a dead end." + "text": "Opening a notice with no confirmed prior-award history now offers a \"Show possible earlier rounds\" option — a set of caveated maybes for your own judgment, instead of a dead end." + }, + { + "pr": 63, + "merged_at": "2026-07-15", + "url": "https://github.com/cityscroll/crol-list/pull/63", + "text": "Contracts suggestions now hint at which ones lead somewhere deeper: a chip with a quiet colored border means its results include contracts with a documented award history or a published agency forecast — worth a click if you want more than this quarter's notice." }, { "pr": 62, "merged_at": "2026-07-15", "url": "https://github.com/cityscroll/crol-list/pull/62", - "text": "The stats page's \"all time\" numbers, topic/lens breakdowns, and day-by-day history now say exactly how far back they can honestly account for \u2014 no more numbers that quietly undercount, and no more \"since launch\" where that isn't true. Digests, searches, and now active watches are also easier to read at a glance, with the technical plumbing (feed fetches, API checks) moved to its own clearly-labeled section at the bottom, translated across all ten shipping languages." + "text": "The stats page's \"all time\" numbers, topic/lens breakdowns, and day-by-day history now say exactly how far back they can honestly account for — no more numbers that quietly undercount, and no more \"since launch\" where that isn't true. Digests, searches, and now active watches are also easier to read at a glance, with the technical plumbing (feed fetches, API checks) moved to its own clearly-labeled section at the bottom, translated across all ten shipping languages." + }, + { + "pr": 57, + "merged_at": "2026-07-15", + "url": "https://github.com/cityscroll/crol-list/pull/57", + "text": "Not user-facing — this is an operator-only admin endpoint with no UI surface, so no changelog entry." + }, + { + "pr": 55, + "merged_at": "2026-07-15", + "url": "https://github.com/cityscroll/crol-list/pull/55", + "text": "Typing a query into the Alerts \"Narrow by keyword\" field and clicking Preview now works whether or not you've clicked a topic chip first — it's resolved the same way the \"Ask\" box already handles free-text queries, and you'll always see either a populated preview or a clear \"we understood this as…\" summary, never silence." }, { "pr": 50, "merged_at": "2026-07-15", "url": "https://github.com/cityscroll/crol-list/pull/50", - "text": "Typing a full sentence like \"education contracts over $200K due in 3 months\" into the Alerts quiz's keyword field now previews real matching results and saves an alert with the actual interpreted filters \u2014 the same thing you'd get from the \"Ask\" box, and the same thing that gets saved when you subscribe. A single word or a quoted phrase still searches literally as before." + "text": "Typing a full sentence like \"education contracts over $200K due in 3 months\" into the Alerts quiz's keyword field now previews real matching results and saves an alert with the actual interpreted filters — the same thing you'd get from the \"Ask\" box, and the same thing that gets saved when you subscribe. A single word or a quoted phrase still searches literally as before." + }, + { + "pr": 49, + "merged_at": "2026-07-15", + "url": "https://github.com/cityscroll/crol-list/pull/49", + "text": "The homepage tagline now describes CROL-List as something you subscribe to for the things you care about, instead of a passive tracking tool — in English and all ten shipping languages." }, { "pr": 47, "merged_at": "2026-07-14", "url": "https://github.com/cityscroll/crol-list/pull/47", - "text": "Alert emails and the \"Preview my digest\" tool now show exactly which word matched and where \u2014 no more guessing why an unrelated-looking notice showed up in your search results." + "text": "Alert emails and the \"Preview my digest\" tool now show exactly which word matched and where — no more guessing why an unrelated-looking notice showed up in your search results." + }, + { + "pr": 46, + "merged_at": "2026-07-14", + "url": "https://github.com/cityscroll/crol-list/pull/46", + "text": "The \"Contracts\" tab and \"Contract trail\" panel heading now match on first paint instead of flashing \"Money\" before JavaScript repaints them, and three previously English-only empty-state hints will now actually show their translation when you switch languages." }, { "pr": 45, "merged_at": "2026-07-14", "url": "https://github.com/cityscroll/crol-list/pull/45", - "text": "Opening the Land or Staffing tab for the first time now shows a real, current example \u2014 a live rezoning application, or the city's most common job title with its salary band and career ladder \u2014 instead of an empty panel waiting for you to search. Your own searches and shared links work exactly as before." + "text": "Opening the Land or Staffing tab for the first time now shows a real, current example — a live rezoning application, or the city's most common job title with its salary band and career ladder — instead of an empty panel waiting for you to search. Your own searches and shared links work exactly as before." + }, + { + "pr": 42, + "merged_at": "2026-07-14", + "url": "https://github.com/cityscroll/crol-list/pull/42", + "text": "Older award notices (pre-2013) are more likely to show their Checkbook NYC payment history instead of a blanket \"no registered contract found.\" Digest emails also no longer show a duplicate line item on the rare occasion City Record republishes a notice under a new ID." }, { "pr": 38, @@ -67,12 +127,24 @@ "url": "https://github.com/cityscroll/crol-list/pull/38", "text": "The stats page now shows day-by-day history of digests sent and searches asked, with recovered and live-counted days honestly labeled." }, + { + "pr": 35, + "merged_at": "2026-07-14", + "url": "https://github.com/cityscroll/crol-list/pull/35", + "text": "The People tab is now called Staffing." + }, { "pr": 32, "merged_at": "2026-07-14", "url": "https://github.com/cityscroll/crol-list/pull/32", "text": "You can now build an alert that watches one agency, or only awards, or only open solicitations, not just an amount or a deadline." }, + { + "pr": 31, + "merged_at": "2026-07-14", + "url": "https://github.com/cityscroll/crol-list/pull/31", + "text": "The respond panel, agency award totals, and empty alert previews now tell you the truth instead of showing a broken-looking guess." + }, { "pr": 30, "merged_at": "2026-07-14", @@ -121,6 +193,12 @@ "url": "https://github.com/cityscroll/crol-list/pull/21", "text": "Added Chinese (simplified) and Russian." }, + { + "pr": 16, + "merged_at": "2026-07-13", + "url": "https://github.com/cityscroll/crol-list/pull/16", + "text": "The About page's biggest dollar claims now link to the actual notices behind them." + }, { "pr": 15, "merged_at": "2026-07-13", @@ -131,7 +209,13 @@ "pr": 13, "merged_at": "2026-07-13", "url": "https://github.com/cityscroll/crol-list/pull/13", - "text": "Every page, not just the homepage, now translates into Espa\u00f1ol, and your language choice is remembered across visits." + "text": "Every page, not just the homepage, now translates into Español, and your language choice is remembered across visits." + }, + { + "pr": 11, + "merged_at": "2026-07-13", + "url": "https://github.com/cityscroll/crol-list/pull/11", + "text": "Fixed two Spanish-translation bugs: today's notice count and the investigation workspace were showing English text after switching to Español." } ] } diff --git a/changelog.html b/changelog.html index 71c4ca6..d38ee3e 100644 --- a/changelog.html +++ b/changelog.html @@ -35,6 +35,7 @@ .lede{font-size:16px;color:var(--ink-soft);margin:22px 0 6px} .rel-auto{margin-top:22px} .rel-auto h2{font-family:var(--font-sc);font-size:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:0} + .chgauto-note{font:13px/1.5 var(--ui);color:var(--muted);margin:4px 0 12px} ul.chg-auto{list-style:none;margin:0;padding:0;font:15.5px/1.6 var(--font-body);color:var(--ink-soft)} ul.chg-auto li{padding:8px 0;border-top:1px solid var(--rule)} ul.chg-auto li:first-child{border-top:none} @@ -102,19 +103,32 @@
These lines come from the descriptions of merged code changes and stay in English for now.