Skip to content

UX and code hygiene review; shorter site description and privacy notice - #125

Merged
bits-bytes-nn merged 2 commits into
mainfrom
chore/review-r28
Nov 14, 2026
Merged

bits-bytes-nn merged 2 commits into
mainfrom
chore/review-r28

Conversation

@bits-bytes-nn

Copy link
Copy Markdown
Owner

Two commits.

3101049: the site description becomes one English line ("In-depth notes on AI/ML papers and technology."). It is the home meta description, the feed subtitle and the footer text. The About privacy section keeps only the Google Analytics notice the GA terms require.

c514dc6: one adversarial review round over UX and code hygiene. The commit message lists every change.

Behaviour changes worth a look:

  • Hover effects removed: the hero darkening and the pagination and share link colour changes.
  • Posts no longer show their own "Subscribe via RSS" line; the footer still has it.
  • /categories/ is regrouped under "By type" and "By topic". The heading ids are unchanged.
  • The search input takes the site's form style.

Config:

  • New ui_lang (en) in _config.yml.
  • categories.html and tags.html get footer_nav / nav_order.
  • CI's PUBLISHED_SITEMAP becomes CHECK_LIVE_SITEMAP: "1".

_data/post_conventions.yml is unchanged, so the scholar-lens drift check is not affected.

Lint rule removed: JAVASCRIPT_LINK. _plugins/safe_post_html.rb fails the build on the same inputs. All five forms were verified: inline, <…>, reference definition, entity-encoded and raw <a>.

Checks run locally:

  • bundle exec ruby test/run_all.rb: 187 runs, 0 failures
  • ruby script/lint-posts.rb
  • jekyll build --strict-front-matter
  • htmlproofer
  • validate-site.sh plus the live sitemap check
  • shellcheck and actionlint
  • Playwright E2E on desktop and mobile, light and dark, with no JS errors. It covered search, the menu with and without JS, the theme toggle, the previous/next cards and the lang attributes.

🤖 Generated with Claude Code

The site description becomes one plain English line; it is the home page's
meta description, the feed subtitle and the footer text. description_lang marks
it as English in the footer and the feed, since the site default is Korean. The
About privacy section keeps only the Google Analytics notice the GA terms
require.
User-facing:
- Previous/next cards: one column on phones, two on wider screens (the
  breakpoint was inverted).
- Phone menu is closed in the markup; a noscript style opens it without JS.
- Search: a blank query clears the results, ?q= keeps and restores the query,
  status waits for IME composition, dates are highlighted, clearer messages,
  results carry their post's lang; styles moved from css/search.css into
  _sass/_search.scss on the site's tokens.
- UI text (header, footer, post meta, TOC, previous/next, share, home cards,
  pagination) is marked with the new `ui_lang` so screen readers read it in
  English on Korean pages.
- /categories/ lists types, then topics, in post_conventions.yml order; the
  footer site map links Categories and Tags (footer_nav).
- Language switcher names each language in its own words; singular citation
  label; duplicate RSS line on posts removed; dark-mode hover contrast fixed;
  hero, pagination and share hover effects removed.

Code and build:
- translations.rb sets page.translation; head.html, the language switcher and
  related_posts.rb use it instead of their own pairing loops.
- related_posts.rb takes the site language instead of hardcoding "ko".
- nokogiri and minitest are in the Gemfile; tests run under the bundle.
- The lint's javascript: link rule is dropped: safe_post_html.rb fails the
  build on the same links.
- The live sitemap check derives its URL from _config.yml (CHECK_LIVE_SITEMAP),
  warns as a GitHub annotation on network errors only, and fails on a sitemap
  with no posts.
- validate-site.sh reads the config URL as YAML and prints XML parse errors.
- Dead CSS selectors, duplicate rules, pre-2020 browser fallbacks, an unused
  derive() argument, the feed's draft filter and a snapshot test removed;
  history comments rewritten as rules.
- Docs: safe_post_html.rb, ui_lang, search and categories behaviour, the
  bundle test command; READMEs point to operations.md for the checks.
@bits-bytes-nn
bits-bytes-nn merged commit 1473373 into main Nov 14, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant