Repository navigation
Conversation
Template/rendering bugs:
- people.html: faculty bio was gated on {% if person.link %} instead of
person.description, hiding the bio of anyone without a personal website
- people.html: student photos used alt="{{ person.name }}", a field the
student data files never define, so 19 portraits rendered alt=""
- articles.html: {% if index == 1 %} referenced an undefined variable;
Liquid's counter is forloop.index, so the spacer never rendered
- papers.html: id="description" sat inside the per-paper loop, emitting 22
duplicate ids; js/main.js locates the panel positionally so the id is unused
- main.html/head.html: the leading space sat inside the Liquid string literal
({{ " /papers" | ... }}), emitting href=" /papers" and breaking any non-root
baseurl
- main.html: logo used a relative src while every other reference is absolute
Accessibility:
- Add alt text to the nav/home/mission logos and to article and project images,
clearing all ~30 missing-alt failures reported by html-proofer
Content and citations:
- "Ulaanbataar" -> "Ulaanbaatar"; "protocols,characterize" -> add space;
"6~GHz" LaTeX artifact -> "6 GHz"; "_real-time_" rendered literally since
abstracts are not markdownified; "a electric" -> "an electric"
- "IEEE Vehicle Networking Conference" -> "Vehicular"
- subprotocols.html: correct WLSK author order to match papers.yaml, add
missing periods to "L Landon" and "Willie K Harrison", and align the
LEO-NET venue name with papers.yaml
- Switch two paper URLs from http to https
Tooling:
- Makefile check_links passed html-proofer 3.x flags to the installed 5.x and
died on OptionParser::InvalidOption; translate to --ignore-empty-alt,
--swap-urls, --ignore-urls and drop --check-html (removed in 4.x)
html-proofer now finishes clean; previously 32 failures.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Kuu16A3q7arLfDyjUb3RX
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Second-pass audit follow-up to #12. Every item below was reproduced against the built site before and after the change.
Template bugs affecting rendered output
pages/people.html— the faculty bio was gated on{% if person.link %}rather thanperson.description, so a faculty member with a bio but no personal website would render no bio at all. Masked today only because the one entry infaculty.yamlhas both fields.pages/people.html— student photos usedalt="{{ person.name }}", but the student data files only definefirst_name/last_name. Result: 19 portraits built withalt=""and were announced as decorative. html-proofer stays silent on this because the attribute is technically present.pages/articles.html—{% if index == 1 %}referenced an undefined variable (Liquid's counter isforloop.index), so the spacerdivnever rendered —0occurrences in the built output.pages/papers.html—id="description"sat inside the per-paper loop, emitting 22 duplicate ids.js/main.jslocates the panel positionally via.parent().next(), so the id was unused; removed rather than uniquified.pages/main.html/_includes/head.html— the leading space sat inside the Liquid string literal ({{ " /papers" | prepend: site.baseurl }}), emittinghref=" /papers". Harmless at the current empty baseurl, but would produce/net /papersunder any non-root baseurl. 8 occurrences.pages/main.html— the logo was the repo's only relative asset path; made absolute for consistency.Accessibility
Added alt text to the nav, home and mission logos and to article and project images — clearing all ~30 missing-alt failures. The favicon link on the subprotocols page pointed at
assets/favicon.ico, which does not exist; repointed at the real icons in/icon/.Content and citations
Ulaanbataar→Ulaanbaatar(spelled correctly elsewhere in the same file)papers.yamlprotocols,characterize→ add spacepapers.yaml6~GHzLaTeX artifact →6 GHzpapers.yaml_real-time_rendered as literal underscores — abstracts are not markdownifiedpapers.yamlIEEE Vehicle Networking Conference→Vehicularpapers.yamla electric heater→an electric heaterprojects.yamlpapers.yaml(Arvonen/Palacios were transposed)subprotocols.htmlL Landon→L. Landon,Willie K Harrison→Willie K. Harrisonsubprotocols.htmlpapers.yamlsubprotocols.htmlhttptohttpspapers.yamlTooling
make check_linkswas dead — it passed html-proofer 3.x flags (--empty_alt_ignore,--url-swap,--url-ignore) to the installed 5.x and died immediately onOptionParser::InvalidOption. Translated to--ignore-empty-alt/--swap-urls/--ignore-urls, and dropped--check-html(removed in 4.x). The target runs clean now.Verification
html-prooferon the built site: 32 failures → finishes successfully. Duplicate ids 22 → 0, empty student alts 19 → 0, leading-space hrefs 6 → 0, spacer div 0 → 1.Deliberately not included
Left for a separate decision: dead code (
js/material.js, unused_layouts/post.html/page.html, empty_includes/footer.html, unimported_sass/_faculty.scss, dead selectors, unusedcolors:in_config.yml), and the Sass deprecation warnings (slash-div,@import,global-builtin,color-functions) which will become hard errors at Dart Sass 2.0.External link liveness is unverified — the audit environment has no outbound network egress, so every URL including jsdelivr returned
000. Worth runningmake check_linkslocally now that the target works.🤖 Generated with Claude Code
https://claude.ai/code/session_013Kuu16A3q7arLfDyjUb3RX
Generated by Claude Code