HomeTrang chủ GlossaryThuật ngữ
The shared languageNgôn ngữ chung

GlossaryThuật ngữ

29 terms

One settled word replaces a paragraph of re-explanation. Agents read docs/GLOSSARY.md before naming a variable, file, hook, or sentence, so the tree stays consistent. Each term below carries its definition, the wording it forbids, and the decision that backs it — copied straight from the canonical file.Một từ đã chốt thay cho cả đoạn giải thích lại. Agent đọc docs/GLOSSARY.md trước khi đặt tên biến, file, hook hay câu chữ, để cả cây giữ nhất quán. Mỗi thuật ngữ dưới đây kèm định nghĩa, cách nói bị cấm, và quyết định làm chỗ dựa — lấy thẳng từ file chuẩn.

📖
The Forbidden wording column is the human-readable side of bans that harness/tests/test_bug_class_invariants.py enforces across harness/. Naming drift fails CI — the glossary is not a style suggestion.Cột Cách nói bị cấm là mặt người-đọc-được của các lệnh cấm mà harness/tests/test_bug_class_invariants.py ép trên toàn harness/. Lệch tên là rớt CI — glossary không phải gợi ý phong cách.

Enforcement modelMô hình cưỡng chế

How a hook decides to block or stay silent, and how stores stay collision-free.Cách một hook quyết định chặn hay im lặng, và cách store không bao giờ đụng nhau.

TermThuật ngữDefinitionĐịnh nghĩaForbidden wordingCách nói bị cấmBackingChỗ dựa
fs_guardScript-path containment helper: disciplines where harness scripts may write. It cannot stop a raw LLM Write.Trợ giúp khoanh đường-ghi của script harness. Không chặn được lệnh Write thô của LLM."write-fence" — promises a barrier it can't deliver— hứa rào chắn nó không làm đượcDEC-38
HOOK_CLASSConstant compiled into each hook file (not config) declaring the hook's class.Hằng số biên dịch vào từng file hook (không phải config) khai báo lớp của hook.declaring a hook's class in configkhai lớp hook trong configDEC-4
fail-closedCompliance-hook default: on violation, exit 2 with an actionable reason and block.Mặc định của hook compliance: vi phạm thì exit 2 kèm lý do hành động được và chặn.DEC-4
fail-openTelemetry / nudge default: never block — stay silent and always continue, even on internal error.Mặc định của telemetry / nudge: không bao giờ chặn — im lặng và luôn tiếp tục, kể cả khi lỗi nội bộ.DEC-4
presence gate (W1)Proves a step ran — its artifact exists and matches schema. It does not verify which AI ran it.Chứng minh một bước đã chạy — artifact tồn tại và khớp schema. Không xác minh AI nào chạy.calling it identity / runner authgọi nó là định danh / xác thực runner§W1
append-onlyEvery machine-written store appends one JSON line; no read-modify-write of a whole file, so concurrent writers never collide.Mọi store máy-ghi nối thêm một dòng JSON; không đọc-sửa-ghi cả file, nên ghi đồng thời không bao giờ đụng."read-modify-write" the storetrên storeDEC-5

Identity & ownershipDanh tính & sở hữu

Who is recorded as acting, and which files a declared owner may touch — attribution, never authentication.Ai được ghi là người làm, và owner đã khai được đụng file nào — quy trách nhiệm, không phải xác thực.

TermThuật ngữDefinitionĐịnh nghĩaForbidden wordingCách nói bị cấmBackingChỗ dựa
actorAttribution record (who did it), resolved by resolve_actor(). Env-spoofable, used only to trace — never an authorization signal.Bản ghi quy trách nhiệm (ai làm), do resolve_actor() phân giải. Giả mạo được qua env, chỉ để truy vết — không phải tín hiệu phân quyền."authentication" / "authorization"khung "authentication" / "authorization"DEC-1
poachingA commit that touches a file in another declared owner's lane; the per-actor ownership_guard blocks it. Actors owning no lane stay ungoverned.Một commit đụng file trong làn của owner khác đã khai; ownership_guard theo-actor chặn nó. Actor không sở hữu làn nào thì không bị quản.calling actor lanes "permissions"gọi làn actor là "permissions"DEC-62

Guard policy & merge gatesGuard policy & merge gate

The OFF / WARN / BLOCK posture for every guard, and the protections around a shared branch.Thế OFF / WARN / BLOCK cho từng guard, và các bảo vệ quanh một nhánh chung.

TermThuật ngữDefinitionĐịnh nghĩaForbidden wordingCách nói bị cấmBackingChỗ dựa
guard policyThe unified OFF / WARN / BLOCK posture for every registered guard, resolved from a preset + per-guard overrides in guard-policy.yaml.Thế OFF / WARN / BLOCK thống nhất cho mọi guard đã đăng ký, phân giải từ preset + overrides theo-guard trong guard-policy.yaml.a per-guard "feature flag"config theo-guard là "feature flag"DEC-61
presetBaseline posture (strict / balanced / lenient / solo) mapping each guard category to a mode; balanced is the default, solo keeps safety+enforcement block while silencing advisory+nudge.Thế nền (strict / balanced / lenient / solo) ánh xạ mỗi nhóm guard sang một mode; balanced là mặc định, solo giữ safety+enforcement block còn advisory+nudge tắt.DEC-61 · DEC-99
safety floor (FLOOR)A guard category clamped to block that a preset cannot lower — only an explicit, logged break-glass override can.Một nhóm guard ghim ở block mà preset không hạ được — chỉ một override break-glass rõ ràng, có log mới hạ được.a preset downgrading a floorpreset hạ một floorDEC-61
break-glassAn overrides: entry that lowers a floor guard; the write is flagged break_glass:true and recorded in the change-log.Một mục overrides: hạ một floor guard; lần ghi bị gắn cờ break_glass:true và ghi vào change-log.DEC-61
merge gateTransport-only stage: a push to a protected branch must clear the same merge-grade artifacts a reviewed PR would; a FLOOR guard.Stage chỉ-vận-chuyển: push lên nhánh được bảo vệ phải qua đúng bộ artifact cấp-merge như một PR đã review; là một FLOOR guard.a protected push as a plain pushpush nhánh-bảo-vệ là push thườngDEC-63
protected refA ref matched by protected-branches.yaml (fnmatch); force-push, delete, and non-fast-forward to it are refused.Một ref khớp protected-branches.yaml (fnmatch); force-push, xóa, và non-fast-forward lên nó bị từ chối.DEC-63
non-fast-forward (non-ff)A push whose remote tip is NOT an ancestor of the local tip (a history rewrite). When ancestry is unverifiable (shallow clone), the gate fetches then blocks rather than fails open.Một push mà tip remote KHÔNG phải tổ tiên của tip local (viết lại lịch sử). Khi không xác minh được tổ tiên (shallow clone), gate fetch rồi chặn thay vì fail-open.indeterminate ancestry as "safe"tổ tiên bất định là "an toàn"DEC-64

Provenance & releaseXuất xứ & phát hành

How an artifact records which harness version made it, and how the tree is fingerprinted.Cách một artifact ghi lại phiên bản harness đã tạo nó, và cách lấy vân tay cả cây.

TermThuật ngữDefinitionĐịnh nghĩaForbidden wordingCách nói bị cấmBackingChỗ dựa
provenance stampThe deterministic harness_* YAML frontmatter (artifact_stamp) recording which harness version / kit_digest produced an artifact; idempotent, no wall-clock.Frontmatter YAML harness_* tất định (artifact_stamp) ghi phiên bản harness / kit_digest đã tạo artifact; idempotent, không dùng đồng hồ.a wall-clock field in the stamptrường đồng-hồ trong stampDEC-59
kit_digestsha256(manifest.json) pinned in release.json — the harness tree fingerprint, kept OUT of the integrity manifest to avoid self-reference.sha256(manifest.json) ghim trong release.json — vân tay cây harness, để NGOÀI manifest toàn vẹn để tránh tự-tham-chiếu.hashing the manifest into itselfbăm manifest vào chính nóDEC-58

Terminal voiceGiọng terminal

The conversational register knobs — and the fence that keeps them away from code, artifacts, and gates.Các núm chỉnh giọng hội thoại — và hàng rào giữ chúng tránh xa code, artifact, và gate.

TermThuật ngữDefinitionĐịnh nghĩaForbidden wordingCách nói bị cấmBackingChỗ dựa
terminal voiceThe harness's conversational register in the terminal — the surface prose only. Resolved by voice_prefs.py, injected at session start.Giọng hội thoại của harness trong terminal — chỉ phần prose bề mặt. Do voice_prefs.py phân giải, tiêm lúc mở phiên.it touching code / artifacts / gatesnó chạm code / artifact / gateDEC-65
voice levelvoice_level 1–9 (default 5) — terminal bluntness; 5 = blunt, no profanity; 6–9 escalate the register aimed at the WORK.voice_level 1–9 (mặc định 5) — độ thẳng của terminal; 5 = thẳng, không tục; 6–9 tăng giọng nhắm vào CÔNG VIỆC.DEC-65
universal-harm floorThe non-removable boundary on voice_level: venom at the WORK is IN up to 9; anything aimed at WHO the user is (slurs / threats / sexual / self-harm / family / identity) is OUT at every level.Ranh giới không-gỡ-được của voice_level: gắt với CÔNG VIỆC thì được tới 9; bất cứ gì nhắm vào CON NGƯỜI người dùng (lăng mạ / đe dọa / tình dục / tự hại / gia đình / danh tính) bị loại ở mọi mức.the floor as a lowerable brakefloor là phanh hạ đượcDEC-65
scope-fenceThe invariant that voice knobs change ONLY conversational prose — never code, generated docs/reports, commits, evidence (file:line / IDs / SHAs / quotes), or any gate decision.Bất biến rằng núm giọng CHỈ đổi prose hội thoại — không đổi code, docs/báo cáo sinh ra, commit, bằng chứng (file:line / ID / SHA / trích dẫn), hay bất kỳ quyết định gate nào.a voice knob altering an artifactmột núm giọng đổi artifactDEC-65
artifact voiceThe candor of an artifact TYPE, fixed once in its own spec (journal-writer "brutal honesty" / hs:critique neutral tone). Independent of voice_level.Độ thẳng thắn của một LOẠI artifact, cố định trong spec riêng (journal-writer "brutal honesty" / hs:critique giọng trung tính). Độc lập với voice_level.voice_level changing an artifact's tonevoice_level đổi giọng artifactDEC-65
personapersona — the surface FORM of terminal prose (none + 13 catalog ids, work / fun groups). Sets form; voice_level sets harshness inside it.persona — DẠNG bề mặt của prose terminal (none + 13 id trong catalog, nhóm work / fun). Đặt dạng; voice_level đặt độ gắt bên trong.a persona changing content / correctnesspersona đổi nội dung / tính đúngDEC-66
explanation depthterminal_voice_level 0–5 (default 5) — explanation depth / format of terminal answers, and interview/turn verbosity; changes depth only, never which files are touched.terminal_voice_level 0–5 (mặc định 5) — độ sâu / dạng giải thích của câu trả lời terminal, và độ dài hội thoại/lượt; chỉ đổi độ sâu, không đổi file bị đụng.DEC-65
interview rigorinterview_rigor (light / standard / deep) — depth of challenge / gap-probing in hs:plan / hs:discover / hs:brainstorm; SEPARATE from verbosity.interview_rigor (light / standard / deep) — độ thách thức / dò khe-hở trong hs:plan / hs:discover / hs:brainstorm; TÁCH BIỆT với độ dài.conflating it with lengthtrộn nó với độ dàiDEC-65

Process vocabularyTừ vựng quy trình

The words the build process and decision trail use about themselves.Những từ mà quy trình build và vết quyết định dùng để nói về chính mình.

TermThuật ngữDefinitionĐịnh nghĩaForbidden wordingCách nói bị cấmBackingChỗ dựa
DECA recorded architectural decision (id: DEC-N, status active / superseded) in docs/decisions.md.Một quyết định kiến trúc đã ghi (id: DEC-N, trạng thái active / superseded) trong docs/decisions.md.decision_register.py
PORT / ADAPTCopying verbatim (PORT) or rewriting-for-context (ADAPT) a pattern from an allowed MIT source into harness/, logged in STANDARDIZE.md.Sao chép nguyên văn (PORT) hoặc viết-lại-theo-bối-cảnh (ADAPT) một mẫu từ nguồn MIT được phép vào harness/, ghi trong STANDARDIZE.md.DEC-38
W0–W3Wave decomposition of the build: W0 foundation, through W3 later capability.Phân rã build theo đợt: W0 nền móng, đến W3 năng lực về sau.codebase-summary.md
thin-coreA skill's SKILL.md kept to a minimal slice; detail lives in references/.SKILL.md của một skill giữ ở lát tối thiểu; chi tiết nằm trong references/.check_skill_structure.py
⚖️ Why a forbidden-wording column at allVì sao có cột cách-nói-bị-cấm
  • Each banned phrase once described a mechanism as stronger than it is — fs_guard as a "write-fence", actor as "authentication". The wrong word invites the wrong trust.Mỗi cụm bị cấm từng mô tả một cơ chế mạnh hơn thực tế — fs_guard là "write-fence", actor là "authentication". Từ sai mời gọi niềm tin sai.
  • So the bans are tested, not trusted: test_bug_class_invariants.py greps harness/ and fails CI on the forbidden strings.Nên các lệnh cấm được kiểm thử, không phải tin suông: test_bug_class_invariants.py grep harness/ và rớt CI nếu gặp chuỗi bị cấm.
  • Evidence (DEC-N, file names) is never translated — it points at the same line of source in any language.Bằng chứng (DEC-N, tên file) không bao giờ được dịch — nó trỏ về cùng một dòng nguồn ở mọi ngôn ngữ.

FAQHỏi đáp

Who reads this glossary, and when?Ai đọc glossary này, và khi nào?
hs:plan and hs:discover read docs/GLOSSARY.md before naming anything; the consistency sweep writes new load-bearing terms back to it. It is read-before-name, not a lookup-when-stuck reference.hs:planhs:discover đọc docs/GLOSSARY.md trước khi đặt bất kỳ tên nào; consistency sweep ghi thuật ngữ trọng yếu mới trở lại file. Nó là đọc-trước-khi-đặt-tên, không phải tra-khi-bí.
What if I coin a new term during planning?Nếu tôi đặt thuật ngữ mới khi lập kế hoạch?
Append a row to docs/GLOSSARY.md with its definition, any forbidden wording, and the backing decision. The next agent inherits your vocabulary instead of re-deriving it.Thêm một dòng vào docs/GLOSSARY.md kèm định nghĩa, cách nói bị cấm (nếu có), và quyết định làm chỗ dựa. Agent kế tiếp thừa hưởng từ vựng của bạn thay vì suy lại.
Why is the glossary in English when reports default to Vietnamese?Vì sao glossary tiếng Anh khi báo cáo mặc định tiếng Việt?
The instruction surface — skills, rules, agents, CLAUDE.md, and this glossary — is English by convention (harness/data/output.yaml). Generated reports follow the configured language; the names agents code against do not move between languages.Bề mặt chỉ-dẫn — skill, rule, agent, CLAUDE.md, và glossary này — theo quy ước là tiếng Anh (harness/data/output.yaml). Báo cáo sinh ra theo ngôn ngữ đã cấu hình; còn tên mà agent code dựa vào thì không đổi giữa các ngôn ngữ.