Repository navigation
claude command, speed/hardening pass, and portfolio refresh - #144
Merged
Merged
Conversation
Typing `claude` draws the Claude Code welcome box (cwd follows the fake file system) and a tip: "We're not paying for your Claude tokens!", then returns to the prompt. It never calls Anthropic. Listed in help. Also removes the `eval` command, which sat in the same block: the URL fragment runs as a command on load, so /#eval-<js> was a reflected XSS on the origin. A test asserts no deep link can reach it. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Measured on the live site before the change: every visitor downloaded all 76 company logos and portraits (3.9 MB) in the background, plus two Google Fonts that were never rendered, a hidden 106 KB logo, and two raw.githubusercontent.com files, and every asset was served with max-age=0. - Preload only the firm logo and team portraits; `tldr` already awaits its own company's art, so portfolio logos load on demand. - Downscale 27 source images that were 1000–5000 px wide for a 40-character ASCII render (images/ 5.9 MB -> 4.1 MB). - Drop the unused Google Fonts import and the hidden <img id="logo">. - Replay history on resize only when the column count changes, and never rerun upgrade/apply/test/tui/claude during a replay. Phone keyboards fire height-only resizes that used to wipe the session. - Serve the four homepage scripts under content-hashed names in dist/static/ and add _headers: immutable for those, a week for images and video, an hour for the rest. index.html stays revalidated. - Fetch README.md and welcome.htm from this origin on demand instead of from GitHub on every visit; the build copies README.md into dist/. - stylePrint matches %command% tokens with one precompiled regex. - term.pos() reads xterm's public buffer.active.cursorX rather than the private _core field. - The application function forwards only the six expected fields, trimmed and capped, rejects oversized or malformed bodies, and drops honeypot submissions. - welcome.htm no longer loads the whole command set for the blurb. - Pin netlify-cli through npx; update vitest, jsdom, and terser. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… Finite Systems Reconciled against the Fund Master "Last Round" companies. New entries with logos from Airtable, each with a one- or two-sentence description: Lark, Flight Science, MAIA Analytics, Zep, Indices, Volund, Lightmill Systems, Hexagon Labs, Manzano Systems, Western Magnetics. SixWheel is now Revoy (new slug and logo). Feather is now Finite Systems with its new logo; the `feather` slug is kept so the deep link still resolves. Seam's URL is the canonical seam.co. Domains were verified in a browser and Airtable was updated to match. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
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.
Summary
Three commits, best reviewed one at a time.
1.
claudecommand. Draws the Claude Code welcome box and a tip ("We're not paying for your Claude tokens!"), then returns to the prompt. Never calls Anthropic. Also removeseval: the URL fragment runs as a command on load, so/#eval-<js>was a reflected XSS on the origin.2. Speed and hardening pass. Measured on the live site before the change, every visitor downloaded all 76 logos and portraits (3.9 MB) in the background, two unused Google Fonts, a hidden 106 KB logo, and two files from raw.githubusercontent.com, with every asset served at
max-age=0.tldralready awaits its own image).images/5.9 MB → 4.1 MB).upgrade/apply/test/tui/claudeduring a replay.dist/static/and add_headers(immutable for those, a week for images/video, an hour for the rest).README.md/welcome.htm, fetched on demand.term.pos()uses the public xterm buffer API;stylePrintuses one precompiled regex; pinned netlify-cli; updated vitest/jsdom/terser.3. Portfolio refresh. Reconciled against Fund Master "Last Round" companies: ten new entries with logos (Lark, Flight Science, MAIA Analytics, Zep, Indices, Volund, Lightmill Systems, Hexagon Labs, Manzano Systems, Western Magnetics). SixWheel → Revoy, Feather → Finite Systems (slug kept), Seam URL → seam.co. Domains verified in a browser; Airtable updated to match.
Test plan
npm test: 455 passing (was 441)npm run buildsucceeds;dist/index.htmlreferences hashed scripts;llms.txtlists 78 companiesnpm start:claude,/#eval-…now "Command not found", idle network trace shows 8 image requests instead of 76 and no font/GitHub requests,tldr revoyandtldr featherrender the new logoscurl -I https://root.vc/static/<hashed>.jsshould showmax-age=31536000, immutable(netlify dev does not apply_headers, so this could only be checked in production)🤖 Generated with Claude Code