Clarify Institute messaging, simplify navigation, and surface glossary/research wayfinding#397
Conversation
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
et3 | 12f2524 | Commit Preview URL Branch Preview URL |
Jan 14 2026, 05:40 AM |
Summary of ChangesHello @zz-plant, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly refines the user experience and content architecture of the Ethotechnics Institute website. The primary goal is to clearly differentiate the Institute's open research and free resources from the Studio's paid implementation services. This is achieved through updated messaging, simplified navigation, and a new decision-tree-based 'Start Here' guide. Additionally, the PR enhances content discoverability and maintainability by introducing glossary priority tiers, a content freeze notice, and comprehensive research citation guidance. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This is a comprehensive update that significantly improves the clarity and navigation of the site. The changes to the homepage, navigation, and "Start Here" page successfully align with the goal of distinguishing the Institute from the Studio and guiding users more effectively. The additions to the glossary and research pages, such as priority tiers and citation guidance, are also valuable enhancements for users.
The code changes are well-implemented and consistent with the Astro framework.
I have one major piece of feedback regarding maintainability in src/content/glossary.ts, where content is being manually duplicated from src/content/glossary.json. Addressing this will prevent future inconsistencies and simplify content updates. Please see my detailed comment on that file.
Overall, this is a fantastic set of improvements. Great work!
| priorityTiers: [ | ||
| { | ||
| id: "core", | ||
| title: "Core concepts", | ||
| description: | ||
| "Essential terms for understanding Ethotechnics theory and practice.", | ||
| termIds: [ | ||
| "ethotechnics", | ||
| "moral-behavior", | ||
| "ethical-load-path", | ||
| "consent-journey", | ||
| "contestability", | ||
| "stoppability", | ||
| "repair-log", | ||
| "burden-index", | ||
| ], | ||
| }, | ||
| { | ||
| id: "applied", | ||
| title: "Applied concepts", | ||
| description: | ||
| "Terms practitioners use when designing or auditing care-centered systems.", | ||
| termIds: [ | ||
| "permission-surface", | ||
| "safety-valve", | ||
| "stewardship-window", | ||
| "appeal-passage-rate", | ||
| "maintenance-window", | ||
| "signal-credibility", | ||
| "fair-burden-distribution", | ||
| "time-to-halt", | ||
| ], | ||
| }, | ||
| { | ||
| id: "emerging", | ||
| title: "Emerging concepts", | ||
| description: | ||
| "Exploratory areas that are evolving with ongoing research.", | ||
| termIds: [ | ||
| "moral-drift-control", | ||
| "care-redundancy", | ||
| "burden-elasticity", | ||
| "adaptive-refusal-pathways", | ||
| "ambiguity-budgets", | ||
| "ethical-load-testing", | ||
| ], | ||
| }, | ||
| ], |
There was a problem hiding this comment.
This pull request introduces priorityTiers and a freezeNotice, which is a great addition for guiding users through the glossary.
However, I've noticed that this file, src/content/glossary.ts, manually duplicates a significant amount of content from src/content/glossary.json. For example, the priorityTiers and freezeNotice you're adding here are also present in glossary.json. This pattern of duplication exists throughout the file, such as with the glossaryTerms array, which appears to be a manual, flattened copy of all entries from the JSON file.
This data duplication creates a significant maintainability burden and risk of inconsistency. Any update to glossary.json requires a parallel manual update here, which is error-prone.
Recommendation:
I strongly recommend refactoring this to have a single source of truth. Instead of manually maintaining this data, we should derive glossaryContent, glossaryTerms, and other exports from the glossary content collection at build time. Astro's content collections are designed for this. You could, for example, create a utility function that fetches and transforms the glossary entry from the collection into the structures needed by the rest of the application.
This would eliminate the duplication, reduce the chance of data getting out of sync, and make the codebase much easier to maintain.
Motivation
Description
src/pages/index.astro).src/content/navigation.ts).src/content/start-here.json,src/pages/start-here/index.astro).src/content/institute.ts,src/pages/institute/index.astro).src/content/glossary.json,src/content/glossary.ts,src/pages/glossary/index.astro).src/content/research.ts,src/pages/research/index.astro).src/content/site-footer.ts).src/content.config.ts).Testing
bun run check, which completed successfully but produced existing Astro inline script hints and a deprecatedtseslintsignature warning.bun testpassed (14 pass, 3 skip, 0 fail) and TypeScript typecheck (bun run typecheck) completed without errors.bun run validate:jsonandbun run validate:glossary.bun run dev) and captured a homepage screenshot to verify visual changes locally.Codex Task