You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: scripts/check-bundle-size.mjs
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ import { gzipSync } from 'node:zlib';
16
16
// This reads the real initial set from index.html rather than guessing by filename, so a new lazy or
17
17
// shared async chunk can't silently be mis-counted. Headroom catches a real regression; raise the
18
18
// budgets deliberately (with a note) if the app grows.
19
-
constJS_INITIAL_BUDGET_KB=121;// 120→121 for Phase 3 (chat + copilot) 2026-07-19: both features are LAZY chunks; the only initial delta is their dynamic-import stubs + a few refs of wiring (~0.3kB gzip, negligible FCP). NFR ceiling is far higher.
19
+
constJS_INITIAL_BUDGET_KB=122;// 120→121 for Phase 3 (chat + copilot) 2026-07-19: both features are LAZY chunks; the only initial delta is their dynamic-import stubs + a few refs of wiring (~0.3kB gzip, negligible FCP). 121→122 on 2026-07-25 for the Insights landing's grouping + "open this when" copy: those 11 dict keys are only READ on a lazy tab, but `dict` is one object literal, so Vite cannot tree-shake properties and every key costs first paint wherever it is used — an accepted, known property of this i18n design, paid here as ~0.6kB gzip. NFR ceiling is far higher.
20
20
constJS_TOTAL_BUDGET_KB=284;// raised 200→260 (Insights bilingualisation 2026-07-15); 260→268 for the Phase 3 Chat Advisor 2026-07-19 (adapter + hook + panel, all in a LAZY chunk — the FAB is lazy too, so the initial budget is untouched); 268→278 for the 2026-07-23 scenario-coverage expansion (cost/ops, risk catalog, sensitivity, migration, dimension/factor/QA lookups, app-usage FAQ — all pure data-driven text in the same lazy chunk; NFR cap is 300); 278→281 for the 2026-07-25 Chat Advisor capability browser + "How to use this" pane (bilingual help copy, same lazy chunk — initial JS unchanged at 120.8/121, so first paint is unaffected); 281→284 for the 2026-07-25 role-based "Start here" section in the Guide (six bilingual role paths — prose only, in the already-lazy ManualBook chunk that loads on demand; initial JS still 120.8/121, NFR cap 300)
21
21
constCSS_BUDGET_KB=29;// 25→27 (Fase 2g polish 2026-07-18); 27→29 for Phase 3 2026-07-19 (chat panel + copilot overlay/launcher/Dos-Don'ts cards); still under the ~30kB NFR ceiling
'Bagian analisis menambah radar trade-off, sensitivitas ("perubahan tunggal apa yang membalik pilihan?"), pembanding skenario pin-A/B, peringatan anti-pattern, jalur migrasi, daftar risiko, fitness function, indikator biaya/operasional, dan sketsa C4.',
387
387
)}
388
388
389
-
<strongclassName="aa-manual-subhead">{L('Insights — seven ways into the same knowledge','Insights — tujuh pintu ke pengetahuan yang sama')}</strong>
389
+
<strongclassName="aa-manual-subhead">{L('Insights — four lenses plus three ways to practise','Wawasan — empat lensa plus tiga cara berlatih')}</strong>
390
390
{p(
391
-
'Catalog (discover each of the 21 architectures), Playbook (step-by-step implementation), Review (structured evaluation with a verdict), Library (reference: concepts & terminology + evergreen articles), Roadmap (learning paths), Academy (quizzes with explanations), and Lab (experiments that load a prepared scenario into the real engine). Everything is bilingual and cross-linked.',
392
-
'Katalog (kenali 21 arsitektur), Playbook (implementasi langkah demi langkah), Review (evaluasi terstruktur dengan verdict), Pustaka (referensi: konsep & terminologi + artikel evergreen), Peta Belajar (jalur belajar), Akademi (kuis dengan penjelasan), dan Lab (eksperimen yang memuat skenario siap pakai ke mesin sungguhan). Semuanya dwibahasa dan saling bertaut.',
391
+
'The seven cards on this tab are not seven separate bodies of material, and reading them that way is what makes the tab look enormous. Four of them — Catalog, Playbook, Review and Library — are the SAME 21 architectures read from four angles: every architecture appears in all four, and each page has a switcher to jump between them. The other three are things you do rather than read.',
392
+
'Tujuh kartu di tab ini bukan tujuh kumpulan materi yang terpisah, dan membacanya seperti itulah yang membuat tab ini terasa raksasa. Empat di antaranya — Katalog, Playbook, Review, dan Pustaka — adalah 21 arsitektur YANG SAMA dibaca dari empat sudut: tiap arsitektur muncul di keempatnya, dan tiap halaman punya pengalih untuk melompat antar sudut. Tiga sisanya adalah hal yang Anda kerjakan, bukan dibaca.',
393
+
)}
394
+
{p(
395
+
'The four lenses, by the question they answer: Catalog — what is this and where is it used, when you do not yet recognise the name. Playbook — how do I actually build it, once the decision is made: prerequisites, ordered steps, best practices and the pitfalls people hit. Review — how do these two compare, when you are weighing options: pros and cons, performance, scalability, developer experience, and a verdict. Library — what does this term mean, for definitions, concepts and standards.',
396
+
'Empat lensa itu, menurut pertanyaan yang dijawabnya: Katalog — ini apa dan dipakai di mana, ketika Anda belum mengenali namanya. Playbook — bagaimana membangunnya, setelah keputusan diambil: prasyarat, langkah berurutan, praktik terbaik, dan jebakan yang sering ditemui. Review — bagaimana kedua opsi ini dibandingkan, ketika Anda sedang menimbang: pro dan kontra, performa, skalabilitas, pengalaman pengembang, dan sebuah verdik. Pustaka — istilah ini artinya apa, untuk definisi, konsep, dan standar.',
397
+
)}
398
+
{p(
399
+
'The three practice sections: Roadmap gives you an ordered route through the lenses, for when choosing a starting point is itself the obstacle. Academy asks questions and marks them on your device, so you find out what you actually retained rather than what felt familiar; a wrong answer links back to the page that teaches it. Lab is the one to open if you learn by doing — each experiment loads a prepared scenario into the real scoring engine, so you change one factor and watch the ranking move, which teaches a trade-off far better than a paragraph about it.',
400
+
'Tiga seksi latihan: Peta Belajar memberi rute berurutan menyusuri lensa-lensanya, untuk saat memilih titik mulai justru jadi hambatannya. Akademi mengajukan soal dan menilainya di perangkat Anda, sehingga Anda tahu apa yang benar-benar tersimpan, bukan apa yang sekadar terasa familier; jawaban salah bertaut balik ke halaman yang mengajarkannya. Lab adalah yang dibuka kalau Anda belajar dengan mempraktikkan — tiap eksperimen memuat skenario siap pakai ke mesin skor sungguhan, jadi Anda ubah satu faktor lalu melihat peringkatnya bergerak, dan itu mengajarkan sebuah pertukaran jauh lebih baik daripada satu paragraf tentangnya.',
401
+
)}
402
+
{p(
403
+
'Two things worth knowing before you start. The Guided / Expert switch in the header changes the reading depth everywhere on this tab: newcomers get plain language, experts get mechanism, evidence and cited sources. And the articles themselves are in English — a deliberate product decision, since the primary literature is — while all the navigation around them follows your chosen language.',
404
+
'Dua hal yang perlu diketahui sebelum mulai. Sakelar Terpandu / Ahli di header mengubah kedalaman bacaan di seluruh tab ini: pemula mendapat bahasa sederhana, ahli mendapat mekanisme, bukti, dan sumber terkutip. Dan artikel-artikelnya sendiri berbahasa Inggris — keputusan produk yang disengaja, karena literatur primernya memang begitu — sementara seluruh navigasi di sekelilingnya mengikuti bahasa pilihan Anda.',
0 commit comments