-
Notifications
You must be signed in to change notification settings - Fork 36
Expand file tree
/
Copy pathquiz.json
More file actions
90 lines (90 loc) · 3.4 KB
/
Copy pathquiz.json
File metadata and controls
90 lines (90 loc) · 3.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{
"lesson": "36-scope-contracts",
"title": "范围契约与任务边界",
"questions": [
{
"stage": "pre",
"question": "为什么范围蔓延(scope creep)被称为最缺乏监控的失败模式?",
"options": [
"它会让 agent 大声崩溃",
"每一次改动当下都有看似合理的理由;合在一起却构成了一个与审查过的不同的改动",
"它太罕见,不值得监控",
"测试会自动抓住它"
],
"correct": 1,
"explanation": "agent 善意地为每一步做叙述;那个无声的总和就是蔓延。"
},
{
"stage": "pre",
"question": "本课把哪个契约字段称为「契约的一半」?",
"options": [
"goal",
"forbidden_files(负空间)",
"task_id",
"approvals_required"
],
"correct": 1,
"explanation": "没有 forbidden_files 的契约是不完整的;负空间是契约的一半。"
},
{
"stage": "check",
"question": "为什么把 allowed/forbidden 固定为 glob 而非原始路径?",
"options": [
"glob 更快",
"真实 repo 会移动文件;glob 能在跨会话的重构中存活",
"glob 加密更好",
"原始路径不可 JSON 序列化"
],
"correct": 1,
"explanation": "glob(app/**/*.py)让契约在重构中保持有效。"
},
{
"stage": "check",
"question": "「违规预算」(violation budget)模式做什么?",
"options": [
"为 agent 设置一个月度预算",
"在一个预算内允许轻微的范围滑动作为警告;只有超出才触发合并拒绝——这是一个能上线的门和一个会被禁用的门之间的差别",
"对模型调用限流",
"按违规收费"
],
"correct": 1,
"explanation": "agent-guardrails 使用 violationBudget,使这个门在日常流程中可用。"
},
{
"stage": "check",
"question": "那位 specsmaxxing 实践者报告了什么?",
"options": [
"延迟下降 90%",
"在不改动 agent 的情况下,三周内「钻牛角尖率」从 52% 降到 21%;起作用的是契约,不是模型",
"成本上升 5 倍",
"测试变慢"
],
"correct": 1,
"explanation": "在调用 agent 前用 YAML 写好范围契约,在不改模型的情况下把钻牛角尖率减半。"
},
{
"stage": "post",
"question": "多契约合并的语义(最小权限)是什么?",
"options": [
"最后一个契约胜出",
"对 allowed_files 取交集;对 forbidden_files 取并集;time_budget 取最小;累积审批;deny-all 黏住;与 None 合并时让位给另一方",
"第一个契约胜出",
"随机决胜"
],
"correct": 1,
"explanation": "最小权限合并:允许取交集,禁止取并集,时间取最严格,审批累积。"
},
{
"stage": "post",
"question": "为什么时间和网络预算也属于契约?",
"options": [
"墙上时钟和外部主机访问是范围维度;仅文件 glob 是必要但不充分的",
"提供商要求它们",
"它们让 JSON 更小",
"Apache 2.0 要求它们"
],
"correct": 0,
"explanation": "time_budget_minutes 和 network_egress 允许列表是文件 glob 之上的范围维度。"
}
]
}