Repository navigation
feat: merge the Direct Connect deep dive (cross-connect) in as a second page - #16
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
| title: { en: "Myth or fact?", ja: "ほんと? うそ?" }, | ||
| lead: { | ||
| en: "Ten things people commonly believe about Direct Connect. Pick an answer on each card to see whether you were right.", | ||
| ja: "Direct Connect についてよくある思い込みを 10 個。カードごとに答えを選ぶと、正解と理由が出ます。", |
There was a problem hiding this comment.
The intro says "Ten" / "10 個", but MYTHS in content/myths.ts has 11 entries (11 truth: fields). Either the count or the data is off. Better to derive the number from MYTHS.length than hard-code it in copy. The same "ten" appears in README.md:53 and README.ja.md:53 ("10 問").
There was a problem hiding this comment.
Fixed. The lead now uses MYTHS.length, and both READMEs say 11.
| | Operations | Yes/no troubleshooting tree, metrics worth an alarm | | ||
| | Pricing | Monthly estimate from list prices, flat-rate break-even | | ||
| | Patterns | Seven questions to a topology, anti-patterns | | ||
| | Quiz | Ten myth-or-fact cards on the most common misconceptions | |
There was a problem hiding this comment.
"Ten myth-or-fact cards" doesn't match the code: src/features/direct-connect/content/myths.ts defines 11. README.ja.md:53 ("10 問") has the same problem.
There was a problem hiding this comment.
Fixed. The lead now uses MYTHS.length, and both READMEs say 11.
|
Reviewed the diff against the README, the freshness workflow and the DX price list. The workflow changes keep least-privilege permissions and the issue body is a quoted heredoc. I re-added the worked examples in docs/direct-connect/10-pricing.md and they are correct. The break-even figure is also correct. One finding, posted inline: the quiz copy says ten myth-or-fact cards (Myths.tsx, README.md:53, README.ja.md:53), but content/myths.ts has 11. Not verified: I did not fetch AWS sources, so the 2026 prices, the flat-rate tier figures and the timeline dates are internally consistent but unchecked against the live pages. |
Contrast of tinted chips and inactive steps, the DX plate in dark mode, label-in-name for the SVG buttons, a name for the bandwidth select, focusable scroll regions, and the lab status sign drawn as HTML.
|
Review of the Direct Connect deep dive (87 files). I read the README, the CI workflows, the timeline and pricing data, and the claims in Vifs, Security, Resiliency and Myths. I did not verify every price or section line by line. One finding, inline on The timeline dates and the EN/JA pairs I read were consistent. The 400G prices, the 2026 launch dates and the flat-rate figures in |
| params: { en: "Parameters you choose", ja: "作成時に決めるパラメータ" }, | ||
| limitsTitle: { en: "Per-connection limits", ja: "接続あたりの上限" }, | ||
| limits: { | ||
| en: "A dedicated connection or LAG takes up to 51 VIFs: 50 private/public plus up to 4 transit. A hosted connection takes exactly one. Routes you advertise on a private or transit VIF are capped at 100 per address family by default (up to 1,000 with inbound prefix controls since 2026-08); above the limit the BGP session goes Idle. Public VIFs accept 1,000.", |
There was a problem hiding this comment.
The numbers don't add up: "51 VIFs: 50 private/public plus up to 4 transit" is 54, not 51. The same sentence is copied from docs/direct-connect/02-connections.md:9 and 11-design-patterns.md:150. Check the AWS quotas page and state the real split, probably 50 private/public plus 1 transit in the 51 total, or a 54 total if the 4 transit VIFs sit outside the 50. Fix the EN and JA text (line 31) and the docs together. The ceiling and the transit count are what readers will use when they size a design.
There was a problem hiding this comment.
Fixed. The AWS quotas page says the 4 transit VIFs count against the 51, so the text now reads "up to 51 in total: at most 50 private or public and at most 4 transit". Same fix in EN, JA, docs/direct-connect/02-connections.md and 11-design-patterns.md.
…uiz cards from data
| <T | ||
| c={{ | ||
| en: "A connection is a road; VIFs are lanes painted on it. Each lane has its own number (a VLAN ID), its own conversation with AWS (a BGP session), and goes to one kind of place. Adding a lane costs nothing, but a road only has room for 51.", | ||
| ja: "接続は道路、VIF はその上に引いた車線。車線ごとに番号 (VLAN ID) があって、AWS との会話 (BGP セッション) も別々、行き先の種類も 1 つずつ。車線を増やすのは無料だけど、1 本の道路に引けるのは 51 本まで。", |
There was a problem hiding this comment.
Two issues. (1) Register: 「無料だけど」「51 本まで。」 are conversational. The brief asks for plain technical prose, and the same pattern recurs in Gateway.tsx:685 (じゃなくて / けど), WhyHard.tsx:50 (だよ), Overview.tsx:758 (来てね / 担当だよ) and Connections.tsx:35,374 (だよ / じゃないよ). Please rewrite these in 〜です・ます or 〜だ調 consistently. (2) Parity: the EN says "Adding a lane costs nothing", but a SiteLink-enabled VIF is billed $0.50 per VIF-hour (docs/direct-connect/10-pricing.md). Both languages should say that VIFs have no AWS charge of their own, or drop the claim.
There was a problem hiding this comment.
Fixed both. The asides were written for a mascot voice that this page no longer has, so every Japanese aside is now です・ます (Resiliency, LagMacsec, Connections x3, Vifs, Overview, Operations, Security, Gateway, WhyHard, Pricing, and the quiz prompt). The VIF line now says a VIF has no AWS charge of its own, with SiteLink as the exception, in EN and JA.
|
|
||
| export const DX_GEOS = ["us", "europe", "japan", "apac", "australia"] as const; | ||
| export type DxGeo = (typeof DX_GEOS)[number]; | ||
|
|
There was a problem hiding this comment.
The flat-rate comment states the 2026-09-15 launch date and the tier prices as fact, but nothing in the file cites a source URL. The same is true of the 400G dedicated $85/hr and the DTO matrix. The prose says "verified 2026-10-12", yet AS_OF is 2026-10-10, so the two pages disagree about when the shared numbers were last checked. Please link the exact AWS pricing and flat-rate page for each block, or confirm the 100G/400G rows against the Price List API. As written they read as recalled.
There was a problem hiding this comment.
Added the source URL for each block (pay-as-you-go pricing page, flat-rate page and Pricing Guide, the flat-rate What's New post, and the Price List API cross-check for the Japan columns). On the dates: DX prices are dated DX_AS_OF (2026-10-12); the map's AS_OF (2026-10-10) covers its non-DX prices. The Japan DX values were identical in both reads, which is why the cost lab could switch to this file without changing a number (cost.test.ts pins that).
|
Two findings, both inline.
I could not confirm the 2026-09-15 flat-rate launch, the tier prices or the 400G port price from the repo alone. I checked the VIF quota (50+4 within 51), the monthly price arithmetic and the flat-rate port-pair halves. They are consistent across the docs and the code. |
… claim, and price sources
|
|
||
| const C = { | ||
| kicker: { en: "Quick check", ja: "腕だめし" }, | ||
| title: { en: "Myth or fact?", ja: "ほんと? うそ?" }, |
There was a problem hiding this comment.
The Japanese here is colloquial: 「ほんと? うそ?」, 「ほんと」/「うそ」 on lines 14–15, and 「ほんと」か「うそ」を選んでください on line 20. The project asks for plain technical prose. The road map's own quiz in src/features/quiz/QuizSection.tsx:10-22 uses 誤解 / 事実 / 「誤解か、事実か」 for the same "Myth or fact?" idea. Use those terms so the two pages agree. The same wording is in README.ja.md:53.
|
Reviewed against the README, docs and freshness workflow. The workflow change is fine, with no permission or pinning issues. The Direct Connect quotas, MTUs, 7224 communities and prefix numbers match the AWS docs as I know them. I did not check the 2026 launches, prices or the 11-card quiz count against AWS, so those are unverified. One finding, posted inline: the Japanese for the deep-dive quiz is colloquial (ほんと/うそ) and does not match the existing quiz's 誤解/事実 wording. It appears in Myths.tsx and README.ja.md:53. Minor: docs/04-direct-connect.md still says it was verified on 2026-10-10, but the shared DX price list it now points to is dated 2026-10-12 (DX_AS_OF). |
Merges the 0-draft/cross-connect site (AWS Direct Connect deep dive) into this repo as a second page,
direct-connect/, so there is one site and one set of DX facts.What changes
direct-connect/index.html→src/direct-connect.tsx→src/app/DirectConnectApp.tsx. All 15 cross-connect sections, their labs (BGP path selection, resiliency failures, LAG/MACsec, allowed prefixes, pricing estimate, myth quiz, timeline, glossary with toggletips) and their unit tests move tosrc/features/direct-connect/. EN/JA parity is unchanged; both pages share the language and theme switches..dx-deepblock, so dark mode and route colours follow the site. The mascot is replaced by a status sign in the labs and a "In plain words" aside for the analogies.src/data/dxPricing.ts(port-hours, DTO matrix, flat-rate tiers). The road map's cost lab now derives every DX price from it (with a test that pins this), and the deep dive's estimator reads the same file. In the docs,docs/direct-connect/10-pricing.mdis the only DX price table;docs/04keeps a short summary anddocs/12links to it instead of repeating rows.0-draft.github.io/cross-connect/#…(DX exit, hubs, routing, cost, quiz, timeline, glossary, footer) now points at the deep dive on this site, keeping?lang=ja.docs/→docs/direct-connect/; cross-repo doc links became relative.AS_OFfor the map,DX_AS_OFfor the deep dive and the DX price list).direct-connect/; the axe WCAG 2.2 AA run now covers both pages in EN/JA × light/dark; a new test walks map → deep dive → map with the language kept.No visual baselines exist in either repo, so none were updated.
Verification (local)
npm run check: typecheck, ESLint, Prettier, markdownlint, 244 Vitest tests, build — all passactionlint— cleane2ejob for layout and axe.