Skip to main content
JGJenks Guo

Dokumentaro / explanation

Sekureco kaj privateco

Kion la publikaj kaj administraj interfacoj povas kaj ne povas fari, kiel la administra ĵetono kaj GitHub-aliro estas protektitaj, kaj kio okazas al datumoj de vizitantoj.

Du specoj de aliro

Publika — por ĉiuj, sen akreditaĵoj. The REST API (/api/v1/*), la publika MCP-servilo (/mcp), la publikaj komandoj de la CLI kaj la statikaj dosieroj estas nurlegeblaj. Ili montras nur la publikigitan korpuson, kiu estas publika laŭdezajne. ask_jenks kaj la reteja babilejo vokas lingvomodelon, do ili estas rapideclimigitaj laŭ IP-adreso por malhelpi misuzon.

Admin — nur Jenks. /api/admin/*, /mcp/admin, jenks admin … kaj la konzolo ĉe /admin postulas la personan administraĵetonon de Jenks en kaplinio Authorization: Bearer. Per ĝi, alvokanto povas validigi, verki kaj forigi enhavajn dosierojn kaj promocii dev al main. Tio estas vera povo, do la ĵetono estas traktata kiel pasvorto.

La administra ĵetono

  • Ĝi loĝas en la macOS Keychain kiel agent-env:JENKSGUO_ADMIN_TOKEN kaj estas ŝargata en ŝelon nur kiam bezonate. Ĝi neniam estas skribata en enhavon, commit-ojn, agorddosierojn kiuj estas dividataj, aŭ babilojn.
  • The Worker konservas ĝin kiel ĉifritan sekreton kaj komparas ĝin je konstanta tempo.
  • La konzolo ĉe /admin neniam konservas la ĵetonon. Ensaluto ĝin sendas unufoje al /api/admin/login, kiu metas HttpOnly, Secure, SameSite=Strict seancan kuketon (12 horoj, aŭ 14 tagoj kun "remember"). Paĝoskriptoj ne povas legi tiun kuketon, kaj per-kukete aŭtentikigitaj skriboj ankaŭ devas sendi kaplinion x-jenks-admin, kiun transreteja formularo ne povas agordi.
  • Rotaciu ĝin se ĝi eble likis: generu novan ĵetonon, konservu ĝin en la Keychain, ĝisdatigu la Worker-sekreton, kaj la malnova ĉesas funkcii tuj — kune kun ĉiu konzolseanco, ĉar seancoj estas subskribitaj per ŝlosilo derivita el la ĵetono.

Kion la administra API povas tuŝi

Skriboj estas limigitaj al permeslisto de enhavaj vojoj — la enskriboj de la korpuso, lensoj, kapabloj, kernaj dokumentoj, la tradukglosaro kaj ĉi tiuj dokumentoj. Ĝi ne povas ŝanĝi kodon, laborfluojn, sekretojn aŭ ion ajn ekster content/. Ĉiu skribo estas unue validigita kontraŭ la enhava skemo.

GitHub-aliro

Administraj skriboj iĝas commit-oj per la GitHub API uzante detale limigitan personan alirĵetonon, skopitan al la sola deponejo, kun nur la permesoj kiujn publikigado bezonas. Ĝi estas konservata kiel ĉifrita Worker-sekreto. Ĉar ĉiu ŝanĝo estas commit:

  • git-historio estas la revizia protokolo — kiu ŝanĝis kion, kiam, kaj kial (la commit-mesaĝo),
  • malfaro ĉiam eblas — ajna pli frua versio de ajna dosiero povas esti restaŭrita.

Riskaĵaj ŝanĝoj povas esti enscenigitaj en la branĉo dev kaj kontrolitaj ĉe https://dev.jenksguo.xyz antaŭ ol io ajn atingas la aktivan retejon.

Privateco de vizitantoj

  • Neniuj reklam-spuriloj kaj neniuj merkataj kuketoj.
  • La babila transskribo estas konservata nur en la retumilo de la vizitanto (sessionStorage) kaj forviŝata kiam la langeto fermiĝas. La retejo ne konservas babilajn transskribojn.
  • Babilaj mesaĝoj estas sendataj tra la Cloudflare Worker al OpenRouter, kiu plusendas ilin al triaparata lingvomodelo. Vizitantoj estas petitaj ne kundividi sentemajn personajn informojn.
  • Voĉa enigo uzas la propran parolrekonon de la retumilo kie disponeble; alie sono estas sendata al OpenRouter por transskribo. Parolitaj respondoj uzas la parolsintezon de la aparato.
  • Cloudflare konservas normajn peto-protokolojn por sekureco kaj rapideclimigo.

Privateco de enhavo

Ĉio sub content/ estas publika. La vivresumoj de Jenks enhavis telefonnumerojn, hejmadreson kaj kontaktulojn por referencoj; neniu el tiuj estas en la korpuso, kaj ili neniam devas esti aldonitaj. Faktoj pri aliaj homoj estas limigitaj al tio, kio necesas por priskribi la rolojn de Jenks.

Raporti problemon

Retpoŝtu al jenksguo@gmail.com kun detaloj. Bonvolu ne testi la administran interfacon sen permeso.

.mdĈi tiu paĝo estas tradukita kun helpo de AI; oficialaj titoloj restas en la angla.