Mga Kilalang Sorpresa
Sinusubaybayan ng file na ito ang mga punto ng pagkalitong tiyak sa repositoryong ito at nagdulot ng mga pagkakamali ng ahente.
Pamantayan sa Pagpasok
Magdagdag lamang ng entry kung totoo ang lahat ng sumusunod:
- Tiyak ito sa repositoryong ito (hindi pangkalahatang payo).
- Malamang na maulit ito para sa mga susunod na ahente.
- May konkretong mitigasyon itong kayang sundin.
Kung hindi ka sigurado, tanungin muna ang developer bago magdagdag ng entry.
Template ng Entry
### [Short title]
- **Date:** YYYY-MM-DD
- **Observed by:** agent name or contributor
- **Context:** where/when it happened
- **What was surprising:** concrete unexpected behavior
- **Impact:** what went wrong or could go wrong
- **Mitigation:** exact step future agents should take
- **Status:** confirmed | superseded
Mga Entry
Maaaring bumalik ang mga production domain ng Vercel app sa mga deployment ng Git master
- Petsa: 2026-04-28
- Naobserbahan ni: Tommaso + Codex
- Konteksto: Pag-verify ng mga app mirror ng Seedit at 5chan sa app directory ng Bitsocial Web.
- Ano ang nakakagulat: May
gitProviderOptions.createDeployments = "enabled"ang mga proyektongseeditat5chansa Vercel, kaya isinusulong sa mga production domain ang mga push sa GitHubmasterkahit inaasahan ng patakaran ng repo na maghain lamang ng mga release artifact ang mga production app mirror. - Epekto: Maaaring maging mali ang mga verified mirror badge sa app directory dahil naghahain ang mga production domain ng pinakabagong development commit sa halip na ng GitHub release ZIP na ang hash ng
index.htmlay nakatala saabout/src/lib/apps-data.ts. - Mitigasyon: Bago magdagdag o mag-refresh ng metadata ng pag-verify ng mirror, suriin ang proyekto sa Vercel gamit ang
vercel api /v9/projects/<project-id>at kumpirmahin anggitProviderOptions.createDeployments = "disabled". I-deploy ang nilalaman ng release ZIP gamit angvercel deploy --prebuilt --prodat gamitin angseedit-omega.vercel.appo5chan-omega.vercel.apppara sa mga development deployment. - Katayuan: nakumpirma
Muling ginagamit ng Portless 0.11 ang lumang estado ng proxy maliban kung pipilitin ng launcher ang HTTPS
- Petsa: 2026-04-28
- Naobserbahan ni: Tommaso + Codex
- Konteksto: Pag-upgrade ng karaniwang daloy ng
yarn startmula sa lumang proxy URL nahttp://bitsocial.localhost:1355patungo sahttps://bitsocial.localhost. - Ano ang nakakagulat: Kahit naka-install na ang
portless@0.11.1, muling ginamit ng Portless ang umiiral na HTTP proxy na~/.portless/proxy.port = 1355at ipinakita nito ang lumang URL na:1355. - Epekto: Hindi sapat ang pag-update ng mga bersyon ng package at ng dokumentasyon; maaari pa ring ianunsyo at gamitin ng
yarn startang lumang URL kapag may tumatakbong lumang estado ng Portless sa makina ng isang kontribyutor. - Mitigasyon: Panatilihing tahasang sinisimulan ng mga start script ang Portless HTTPS proxy sa port
443bago irehistro ang mga app route, upang lumayo ang runtime flow sa nakaimbak na estadong1355sa halip na manahin ito. - Katayuan: nakumpirma
Binabago ng Portless ang canonical na URL ng lokal na app
- Petsa: 2026-03-18
- Naobserbahan ni: Codex
- Konteksto: Mga daloy ng pag-verify sa browser at ng smoke check
- Ano ang nakakagulat: Ang default na lokal na URL ay hindi ang karaniwang Vite port. Inaasahan ng repo ang
https://bitsocial.localhostsa pamamagitan ng Portless, kaya ang pagsuri salocalhost:3000olocalhost:5173ay maaaring tumama sa maling app o sa wala man lang. - Epekto: Maaaring mabigo ang mga pagsusuri sa browser o mapatunayan nila ang maling target kahit maayos ang dev server.
- Mitigasyon: Gamitin ang
https://bitsocial.localhostmuna. I-bypass lamang ito gamit angPORTLESS=0 corepack yarn startkapag tahasang kailangan mo ng direktang Vite port. - Katayuan: nakumpirma
Hinaharangan ng mga Commitizen hook ang mga non-interactive na commit
- Petsa: 2026-03-18
- Naobserbahan ni: Codex
- Konteksto: Mga daloy ng commit na pinapatakbo ng ahente
- Ano ang nakakagulat: Pinapagana ng
git commitang Commitizen sa pamamagitan ng Husky at naghihintay ito ng interactive na TTY input, kaya nagha-hang ang mga non-interactive na shell ng ahente. - Epekto: Maaaring tumigil nang walang katapusan ang mga ahente sa gitna ng dapat sana ay karaniwang commit.
- Mitigasyon: Gamitin ang
git commit --no-verify -m "message"para sa mga commit na gawa ng ahente. Magagamit pa rin ng mga tao angcorepack yarn commitocorepack yarn exec cz. - Katayuan: nakumpirma
Kailangan ang Corepack upang maiwasan ang Yarn classic
- Petsa: 2026-03-19
- Naobserbahan ni: Codex
- Konteksto: Paglipat ng package manager patungong Yarn 4
- Ano ang nakakagulat: May global na pag-install pa rin ng Yarn classic ang makina sa
PATH, kaya ang pagpapatakbo ng payak nayarnay maaaring tumukoy sa v1 sa halip na sa naka-pin na bersyon ng Yarn 4. - Epekto: Maaaring hindi sinasadyang malampasan ng mga developer ang package-manager pinning ng repo at makakuha ng ibang gawi sa pag-install o ibang output ng lockfile.
- Mitigasyon: Gamitin ang
corepack yarn ...para sa mga shell command, o patakbuhin muna angcorepack enableupang tumukoy ang payak nayarnsa naka-pin na bersyon ng Yarn 4. - Katayuan: nakumpirma
Nagbabanggaan ang mga nakapirming pangalan ng Portless app sa mga worktree ng Bitsocial Web
- Petsa: 2026-03-30
- Naobserbahan ni: Codex
- Konteksto: Pagpapatakbo ng
yarn startsa isang worktree ng Bitsocial Web habang may isa pang worktree na naghahain na sa pamamagitan ng Portless - Ano ang nakakagulat: Ang paggamit ng literal na pangalan ng Portless app na
bitsocialsa bawat worktree ay nagpapabanggaan mismo sa route, kahit magkaiba ang mga port sa likod nito, kaya nabibigo ang pangalawang proseso dahil nakarehistro na angbitsocial.localhost. - Epekto: Maaaring harangan ng magkakatabing sangay ng Bitsocial Web ang isa't isa kahit layunin ng Portless na payagan silang magsabay nang ligtas.
- Mitigasyon: Panatilihin ang pagsisimula ng Portless sa likod ng
scripts/start-dev.mjs, na ngayon ay gumagamit ng branch-scoped na route na*.bitsocial.localhostsa labas ng canonical na kaso at bumabagsak sa isang branch-scoped na route kapag okupado na ang payak na pangalangbitsocial.localhost. - Katayuan: nakumpirma
Dating naka-hard-code sa port 3001 ang preview ng docs
- Petsa: 2026-03-30
- Naobserbahan ni: Codex
- Konteksto: Pagpapatakbo ng
yarn startkasabay ng ibang lokal na repo at ahente - Ano ang nakakagulat: Pinatatakbo ng root dev command ang docs workspace gamit ang
docusaurus start --port 3001, kaya nabibigo ang buong dev session tuwing may ibang prosesong nagmamay-ari na ng3001, kahit gumagamit na ng Portless ang pangunahing app. - Epekto: Maaaring patayin ng
yarn startang web process kaagad matapos itong mag-boot, na nakaaabala sa walang kaugnayang lokal na trabaho dahil lamang sa banggaan ng port ng docs. - Mitigasyon: Panatilihin ang pagsisimula ng docs sa likod ng
yarn start:docs, na ngayon ay gumagamit ng Portless kasama angscripts/start-docs.mjsupang igalang ang isang na-inject na libreng port o bumagsak sa susunod na available na port kapag direktang pinatakbo. - Katayuan: nakumpirma
Naka-hard-code ang nakapirming Portless hostname ng docs
- Petsa: 2026-04-03
- Naobserbahan ni: Codex
- Konteksto: Pagpapatakbo ng
yarn startsa isang pangalawang worktree ng Bitsocial Web habang may isa pang worktree na naghahain na ng docs sa pamamagitan ng Portless - Ano ang nakakagulat: Nirerehistro pa rin ng
start:docsang literal na hostname nadocs.bitsocial.localhost, kaya maaaring mabigo angyarn startkahit alam na ng about app kung paano iwasan ang banggaan ng Portless route para sa sarili nitong hostname. - Epekto: Hindi maaasahang magamit ng magkakatabing worktree ang root dev command dahil unang lumalabas ang docs process at pagkatapos ay pinapatay ng
concurrentlyang natitirang bahagi ng session. - Mitigasyon: Panatilihin ang pagsisimula ng docs sa likod ng
scripts/start-docs.mjs, na ngayon ay kumukuha ng parehong branch-scoped na Portless hostname gaya ng about app at nag-iinject ng nakabahaging pampublikong URL na iyon sa dev proxy target na/docs. - Katayuan: nakumpirma
Maaaring hindi makuha ng mga shell sa worktree ang naka-pin na bersyon ng Node ng repo
- Petsa: 2026-04-03
- Naobserbahan ni: Codex
- Konteksto: Pagpapatakbo ng
yarn startsa mga Git worktree gaya ng.claude/worktrees/*o ng mga katabing worktree checkout - Ano ang nakakagulat: May ilang shell sa worktree na tumukoy sa
nodeatyarn nodebilang Homebrew Node25.2.1kahit naka-pin ang repo sa22.12.0sa.nvmrc, kaya maaaring tahimik na patakbuhin ngyarn startang mga dev launcher sa maling runtime. - Epekto: Maaaring maglihis ang gawi ng dev server sa pagitan ng pangunahing checkout at ng mga worktree, kaya nagiging mahirap ulitin ang mga bug at nalalabag ang inaasahang Node 22 toolchain ng repo.
- Mitigasyon: Panatilihin ang mga dev launcher sa likod ng
scripts/start-dev.mjsatscripts/start-docs.mjs, na ngayon ay muling nag-e-exec sa ilalim ng Node binary mula sa.nvmrckapag nasa maling bersyon ang kasalukuyang shell. Dapat pa ring unahin ng shell setup angnvm use. - Katayuan: nakumpirma
Maaaring itago ng mga natirang docs-site/ ang nawawalang docs source pagkatapos ng refactor
- Petsa: 2026-04-01
- Naobserbahan ni: Codex
- Konteksto: Paglilinis ng monorepo pagkatapos ng merge nang ilipat ang proyektong Docusaurus mula sa
docs-site/patungongdocs/ - Ano ang nakakagulat: Maaaring manatili sa disk ang lumang folder na
docs-site/kasama ang mga luma ngunit mahahalagang file gaya ngi18n/, kahit lumipat na sadocs/ang sinusubaybayang repo. Dahil dito, mukhang doble ang refactor sa lokal na makina at maitatago nito ang katotohanang hindi talaga nailipat sadocs/ang mga sinusubaybayang salin ng docs. - Epekto: Maaaring burahin ng mga ahente ang lumang folder bilang “basura” at hindi sinasadyang mawala ang tanging lokal na kopya ng mga salin ng docs, o patuloy nilang i-edit ang mga script na nakaturo pa rin sa patay na landas na
docs-site/. - Mitigasyon: Ituring ang
docs/bilang tanging canonical na proyekto ng docs. Bago burahin ang anumang natirang lokal nadocs-site/, ibalik muna ang sinusubaybayang source gaya ngdocs/i18n/at i-update ang mga script at hook upang tumigil sa pagtukoy sadocs-site. - Katayuan: nakumpirma
Maaaring pumalo ang paggamit ng RAM ng multilocale docs preview habang nagve-verify
- Petsa: 2026-04-01
- Naobserbahan ni: Codex
- Konteksto: Pag-aayos ng docs i18n, locale routing, at gawi ng Pagefind gamit ang
yarn start:docskasama ang Playwright - Ano ang nakakagulat: Gumagawa na ngayon ang default na mode ng docs preview ng buong multilocale docs build kasama ang Pagefind indexing bago ito maghain, at ang pagpapanatiling buhay sa prosesong iyon kasabay ng maraming session ng Playwright o Chrome ay maaaring kumonsumo ng mas maraming RAM kaysa sa karaniwang Vite o single-locale na Docusaurus dev loop.
- Epekto: Maaaring maubusan ng memorya ang makina, maaaring mag-crash ang mga session ng browser, at maaaring mag-iwan ang mga naantalang pagpapatakbo ng lumang docs server o headless browser na patuloy na kumakain ng memorya.
- Mitigasyon: Para sa gawaing docs na hindi nangangailangan ng pag-verify ng locale route o Pagefind, mas piliin ang
DOCS_START_MODE=live yarn start:docs. Gamitin lamang ang default na multilocale preview kapag kailangan mong patunayan ang mga isinaling route o ang Pagefind. Panatilihing iisa ang session ng Playwright, isara ang mga lumang session ng browser bago magbukas ng bago, at ihinto ang docs server pagkatapos mag-verify kung hindi mo na ito kailangan. - Katayuan: nakumpirma
Maaaring mag-iwan ang translate-docs.py ng kalahating naisaling docs locale o ng mga sirang link target
- Petsa: 2026-04-06
- Naobserbahan ni: Codex
- Konteksto: Pag-aayos ng mga na-localize na docs route at nilalaman matapos maghain ang
yarn start:docsng mga detail page sa Ingles o mabigo itong bumuo ng output para sa locale - Ano ang nakakagulat: May dalawang magkasabay na paraan ng pagkabigo na tiyak sa repong ito ang docs translation pipeline: kumukuha lamang ang
scripts/translate-docs.pyng maliit na bahagi ng mga mensahe ngDocsHomekapag gumamit ang mga tawag natr(...)ng mga anyong hindi nito nauunawaan, at maaaring maglaman ang isinaling markdown sa ilalim ngdocs/i18n/**ng mga slug na isinalin ng makina o ng mga artifact naZXQPLACEHOLDERsa loob ng mga link target. - Epekto: Maaaring tahimik na bumalik sa Ingles ang mga na-localize na homepage, maaaring magmukhang hindi naisalin ang mga na-localize na detail page, at maaaring mabigo ang buong
yarn docs:builddahil sa mga sirang link ng locale kahit balido ang source docs. - Mitigasyon: Pagkatapos baguhin ang mga salin ng docs o muling buuin ang mga file ng locale, palaging patakbuhin ang
yarn docs:buildmula sa root ng repo, i-scan ang markdown sadocs/i18n/**para saZXQPLACEHOLDER, at tiyaking nakaturo pa rin ang mga isinaling link sa mga canonical na doc slug gaya ng/apps/5chan/sa halip na sa mga isinaling landas ng URL. Kung nagbago ang teksto ngDocsHome, kumpirmahing kinukuha pa rin ngscripts/translate-docs.pyang lahat ng mensahengdocs.home.*. - Katayuan: nakumpirma
Dapat gamitin ng mga no-JS na pagsusuri sa about site ang Portless route, hindi ang hiwalay na SSR preview
- Petsa: 2026-04-12
- Naobserbahan ni: Codex
- Konteksto: Pag-verify ng suporta sa no-JS para sa site na
about/mula sa isang worktree ng sangay - Ano ang nakakagulat: Maaaring mukhang maayos ang isang hiwalay na SSR preview samantalang ang tunay na branch-scoped na Portless route ay naghahain pa rin ng maling app shell o ng isang lumang proseso. Sa repong ito, ang tunay na lokal na kasunduan ay ang Portless hostname mula sa
yarn start, hindi ang isang pansamantalang preview server. - Epekto: Maaaring maling ideklara ng mga ahente na gumagana ang suporta sa no-JS, o hindi nila mapansin ang mga regression na lumalabas lamang sa
*.bitsocial.localhost. - Mitigasyon: Para sa pag-verify sa browser ng
about/, palaging simulan ang tunay na lokal na server gamit angyarn startoyarn start:aboutat subukan muna ang branch-scoped na Portless URL. Kung mukhang luma ang isang Portless hostname, suriin at ihinto ang lumang proseso bago muling sumubok. - Katayuan: nakumpirma
Hindi nakikita ang chain/ ng yarn build:verify at ng yarn doctor
- Petsa: 2026-07-05
- Naobserbahan ni: Codex
- Konteksto: Pag-verify ng isang diff na para lamang sa chain/ matapos idagdag sa monorepo ang workspace na
chain/(hiwalay na Vite app para sachain.bitsocial.net). - Ano ang nakakagulat: Kinikilala lamang ng
scripts/verify-build.mjsang mga path prefix naabout/,docs/, atstats/, kaya ang diff na para lamang sa chain/ ay nagpi-print ng "No targeted build checks matched the current diff" at hindi nagpapatakbo ng anumang build, kahit umiiral na angbuild:chainsa root napackage.json. Bukod pa riyan, naka-hard-code angyarn doctorsareact-doctor about -y, kaya walang anumang saklaw ng React Doctor ang mga pagbabago sa React sa ilalim ngchain/src. - Epekto: Kailangang alam ng mga ahenteng nagve-verify ng mga pagbabago sa chain na tawagin nang direkta ang
yarn build:chainsa halip na magtiwala sayarn build:verify, at hindi natutukoy ngyarn doctorang mga isyu sa React sachain/src(mga effect, hook, patay na code). - Mitigasyon: May sangay na para sa
chain/ngayon angscripts/verify-build.mjsna katulad ng saabout/, at pinapatakbo na ngdoctor/doctor:verboseangreact-doctor --project about,chain -ysa iisang tawag. Nananatiling para lamang saaboutangdoctor:scoredahil tahimik na walang ipi-print ang--scorekapag isinama ito sa--projectpara sa mahigit isang proyekto; gamitin angyarn react-doctor --project about,chain --verbose -y(o--json) kung kailangan ang score para sa chain. - Katayuan: nakumpirma
Tumatakbo ang browser P2P sa secure na WebSockets; tinatanggihan ng pkc-js ang WebRTC at WebTransport bilang default
- Petsa: 2026-08-02
- Naobserbahan ni: Claude
- Konteksto: Pagsulat ng teksto para sa landing page at docs tungkol sa kung paano gumagana ang Bitsocial browser P2P
- Ano ang nakakagulat: Naghahatid ang
@pkcprotocol/pkc-jsng default na connection gater na tumatanggi sa mga dial ng WebRTC at WebTransport sa browser — ini-export ngdist/browser/helia/dial-transport-filter.jsangDENIED_DIAL_TRANSPORTS_BY_DEFAULT = ["webrtc", "webrtc-direct", "webtransport"]. Ibinibigay ng komento sa source nito ang dahilan: sa browser, nagdaragdag ang mga transport na iyon ng mahaba at madalas nabibigong landas ng pagbuo ng koneksyon (STUN/ICE, certhash rotation) na nagpapabagal sa pag-load, samantalang direkta at maaasahan ang WebSocket. Bawat buhay na peer sa P2P status panel ng blog ay nagpapakita ng "Secure WebSocket". Nasanode_modulesang gater, kaya walang anuman sa repo ang nagpapahiwatig nito. - Epekto: Napakadaling makasulat ng pampublikong tekstong mukhang makatwiran sa teknikal na paraan ngunit mali — halimbawa, ang pagbibigay ng kredito sa pag-abot ng WebTransport sa browser Baseline noong Marso 2026 para sa pagiging posible ng Bitsocial browser P2P. Nakarating ang pahayag na iyon sa landing page, sa comparison table, at sa dalawang pahina ng docs bago ito nahuli ng developer. Ang mga maling pahayag tungkol sa arkitektura sa mga pampublikong pahina ay sinusuri mismo ng mga developer na siyang target na audience ng site.
- Mitigasyon: Huwag kailanman hulaan kung aling mga transport ang ginagamit ng Bitsocial batay lamang sa kung ano ang sinusuportahan ng libp2p o ng browser platform sa prinsipyo. Suriin ang
node_modules/@pkcprotocol/pkc-js/dist/browser/helia/dial-transport-filter.jspara sa kasalukuyang deny list, kumpirmahing walang override naconnectionGatersa ilalim ngabout/src/, at basahin ang mga live na label ng transport sa "P2P status" panel ng blog bago gumawa ng anumang pampublikong pahayag. Ang upstream na pagbabagong talagang nagbukas ng daan para sa pag-publish mula sa browser ay ang pag-aayos ng monotonic seqno ng gossipsub sa@libp2p/gossipsub15.0.21 (Mayo 2026); kasalukuyang naghahatid ang pkc-js ng 16.0.4. - Katayuan: nakumpirma
Sinisira ng mga relatibong link na ./page.md mula sa isang hindi naisaling docs page ang bawat localized na build
- Petsa: 2026-08-02
- Naobserbahan ni: Claude
- Konteksto: Pagdaragdag ng bagong pahinang Ingles lamang,
docs/browser-p2p.md, na nag-link sa mga umiiral na docs gamit ang./peer-to-peer-protocol.mdat./apps/5chan.md - Ano ang nakakagulat: Sinasalamin ng bawat locale sa ilalim ng
docs/i18n/<lang>/docusaurus-plugin-content-docs/current/ang puno ng docs. Ang bagong pahinang wala sa mga salaming iyon ay nire-render pa rin sa bawat locale sa pamamagitan ng English fallback, ngunit hindi na tumutugma ang mga relatibong markdown link nito — naglalabas ang Docusaurus ng/ar/browser-p2p/peer-to-peer-protocol.md/at nabibigo ang build na may "Docusaurus found broken links!". Ang mahalaga, binubuo lamang ngyarn build:verifyat ngyarn docs:build:verifyangenat malinis silang nakakapasa; tanging ang buongyarn docs:buildang naglalabas nito, at humihinto ito sa unang locale ayon sa alpabeto (ar). - Epekto: Maaaring makapasa ang isang pagbabago sa docs sa lahat ng mabilisang lokal na pagsusuri at masira pa rin nito ang production multilocale build. Mukhang walang kaugnayan din ang pagkabigo sa pagbabago, dahil pinapangalanan ng error ang isang landas ng locale na hindi kailanman hinawakan ng may-akda.
- Mitigasyon: Sa anumang docs page na hindi sinasalamin sa
docs/i18n/**, gumamit ng root-relative na link (/peer-to-peer-protocol/,/apps/5chan/) sa halip na relatibong link na.md; awtomatikong nilalagyan ng Docusaurus ang mga ito ng prefix ng locale. Ang umiiral na halimbawa ay angdocs/build-your-own-client.md. Patakbuhin ang buongyarn docs:build— hindi lamang angbuild:verify— bago iabot ang anumang pagbabagong nagdaragdag o nag-link ng isang docs page. - Katayuan: nakumpirma
Dapat patakbuhin ang update-translations.js mula sa about/, at tahimik na nawawalan ng mga key ang sabayang pagpapatakbo
- Petsa: 2026-08-02
- Naobserbahan ni: Claude
- Konteksto: Paglalapat ng 26 na isinaling i18next key sa lahat ng 36 na locale sa pamamagitan ng
translateskill - Ano ang nakakagulat: Dalawang magkahiwalay na bitag sa iisang script. Una, tinutukoy ng
scripts/update-translations.jsang target nito bilangpath.join(process.cwd(), "public", "translations"), ngunit itinatago ng repong ito ang mga salin saabout/public/translations. Ang pagpapatakbo ng nakadokumentong command mula sa root ng repo ay nabibigo sa bawat tawag nang may "Translations directory not found" — ipinapakita ngdocs/agent-playbooks/translations.mdangnode scripts/update-translations.js ..., na nababasa bilang command mula sa root ng repo. Pangalawa, ang bawat tawag ay isang read-modify-write sa lahat ng 36 na file ng locale, kaya nagpapatungan ang dalawang tawag na sabay tumatakbo at nawawala ang isang key nang walang error. Tahasang nag-uutos angtranslateskill na maglunsad ng hanggang 4 na subagent nang sabay, at bawat isa sa kanila ay tatawag sa script. - Epekto: Maingay na nabibigo ang anyong mula sa root ng repo at nasasayang nito ang isang buong pass. Tahimik namang nabibigo ang isyu sa concurrency: nawawala ang mga key mula sa mga di-tiyak na locale, at mukhang makatwiran pa rin ang diff.
- Mitigasyon: Patakbuhin ito bilang
cd about && node ../scripts/update-translations.js --key <key> --map <abs-path> --write. Huwag kailanman hayaang sabay na magsulat ng mga file ng locale ang mga subagent na tagasalin — hayaan silang maglabas lamang ng mga JSON file ng diksyunaryo, at saka ilapat ang bawat key nang sunod-sunod mula sa magulang na ahente. Pagkatapos ilapat, patunayan sa pamamagitan ng programa na umiiral ang bawat key sa lahat ng 35 na locale na hindi Ingles at walang halagang byte-identical sa source na Ingles. - Katayuan: nakumpirma