@supersuit/hyperspec 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +93 -0
- package/README.md +76 -9
- package/SPEC.md +2 -2
- package/WRITING.md +463 -18
- package/bin/hyperspec.mjs +137 -6
- package/examples/writing/course/claims.jsonl +0 -0
- package/examples/writing/course/goldens/lesson.md +1 -0
- package/examples/writing/course/materials/brief.md +9 -0
- package/examples/writing/course/materials/brief.md.segments.jsonl +6 -0
- package/examples/writing/course/outline.md +11 -0
- package/examples/writing/course/part-1.md +64 -0
- package/examples/writing/course/part-2.md +57 -0
- package/examples/writing/course/runs.jsonl +0 -0
- package/examples/writing/course.hyperspec.md +206 -0
- package/examples/writing/essay/judge/panel-buyer.packet.json +118 -0
- package/examples/writing/essay/judge/panel-expert.packet.json +114 -0
- package/examples/writing/essay/judge/panel-novice.packet.json +114 -0
- package/examples/writing/essay/judge/panel-skeptic.packet.json +114 -0
- package/examples/writing/essay/sample-verdicts/panel-buyer.verdict.json +11 -0
- package/examples/writing/essay/sample-verdicts/panel-expert.verdict.json +13 -0
- package/examples/writing/essay/sample-verdicts/panel-novice.verdict.json +11 -0
- package/examples/writing/essay/sample-verdicts/panel-skeptic.verdict.json +13 -0
- package/examples/writing/story/judge/panel-buyer.packet.json +118 -0
- package/examples/writing/story/judge/panel-expert.packet.json +114 -0
- package/examples/writing/story/judge/panel-novice.packet.json +114 -0
- package/examples/writing/story/judge/panel-skeptic.packet.json +114 -0
- package/examples/writing/story/sample-verdicts/panel-buyer.verdict.json +13 -0
- package/examples/writing/story/sample-verdicts/panel-expert.verdict.json +11 -0
- package/examples/writing/story/sample-verdicts/panel-novice.verdict.json +11 -0
- package/examples/writing/story/sample-verdicts/panel-skeptic.verdict.json +11 -0
- package/package.json +1 -1
- package/src/check.mjs +25 -7
- package/src/evidence.mjs +74 -0
- package/src/judge.mjs +50 -66
- package/src/judges/index.mjs +7 -1
- package/src/judges/panel.mjs +135 -0
- package/src/sequence-draft.mjs +75 -0
- package/src/stations/index.mjs +5 -1
- package/src/stations/links.mjs +11 -3
- package/src/stations/quotes.mjs +26 -2
- package/src/stations/sequence.mjs +388 -0
- package/src/stations/triage.mjs +20 -0
- package/src/triage.mjs +401 -0
- package/src/writing-fields.mjs +81 -0
- package/src/writing.mjs +5 -1
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hyperspec_judge": "0.1",
|
|
3
|
+
"station": "panel",
|
|
4
|
+
"spec": "essay.hyperspec.md",
|
|
5
|
+
"spec_sha256": "e03dfac6b445ae779000f7fc109a9d713df2e5cf8967faf8e808fe87d63e40e9",
|
|
6
|
+
"draft": "essay/draft.md",
|
|
7
|
+
"draft_sha256": "aa4a1d99604f7b2b398b67305b368abbb72651356c38bfffad1452db6be62f65",
|
|
8
|
+
"rubric": "simulated reader reports where it got lost and where it stopped reading",
|
|
9
|
+
"instructions": "Read inputs.draft as inputs.reader: the person inputs.reader.who describes, knowing only what inputs.reader.knows lists and what anyone would, reading for inputs.reader.lens. List what works for this reader under good, what should change under improve, what this reader needs that the draft does not give under missing, and what should go under remove. Every item is { evidence, note }. evidence is a passage copied verbatim from inputs.draft, at least three whole words; for a missing item, quote the passage nearest to where the missing thing belongs. note says what and why, in a sentence, in this reader's terms. A list may be empty. Report what this reader would say, not what another reader would. Answer only in the verdict shape given in verdict_schema.",
|
|
10
|
+
"inputs": {
|
|
11
|
+
"reader": {
|
|
12
|
+
"id": "buyer",
|
|
13
|
+
"who": "someone in their first three months of managing, who was promoted from the team they now lead",
|
|
14
|
+
"knows": [
|
|
15
|
+
"one-on-one",
|
|
16
|
+
"report",
|
|
17
|
+
"tracker"
|
|
18
|
+
],
|
|
19
|
+
"lens": "what they want from this piece: a plan for the first meeting that will not waste either person's half hour"
|
|
20
|
+
},
|
|
21
|
+
"draft": "# Hand your first one-on-one to the person you manage\n\n## Who sets the agenda\n\nYour first one-on-one with a new report is the only meeting on your calendar where they should\nset the agenda. Everything else you run. This one you hand over.\n\nIf you walk in with a list, you have told your report what the meeting is for, and it is for\nyou. They will answer your list politely and leave. You will know nothing you did not know when\nyou sat down, and so will they.\n\nMy team ran a [survey](materials/team-survey.md) this spring. 29 of 41 people said their most useful one-on-one in the last\nquarter was one where they brought the first topic. The meeting that worked for them was the one\nthey started.\n\nSo give them the start. The simplest way to do it is a running agenda: one shared document per\nperson, kept for as long as you manage them. Your report adds items before each meeting, and you\nadd yours last, at the bottom. That is how an engineering manager I interviewed, eight years into\nthe job, runs hers. Her rule is short: the report owns the agenda.\n\n## My first one-on-one\n\nMy first one-on-one as a manager was a disaster, and the reason was simple: I ran it. I had a\nlist, and I went down the list. Project status, blockers, the thing from Tuesday. Thirty minutes\nlater my report said thanks and left, and I had learned nothing I could not have read in the\ntracker.\n\nWhat I ran was a status meeting, which is a meeting spent reading out loud what the tracker\nalready says. Your report wrote those updates. Asking them to recite the updates to you teaches\nyou nothing new, and it spends the one half hour a week that belongs to them.\n\nThe survey shows the cost from their side. 11 of 41 said at least one of their one-on-ones in the\nlast quarter was mostly project status. Read the tracker before you walk in, and leave status\nthere.\n\n## The three questions\n\nHere is what I ask now, in this order, and then I let the report take over:\n\n1. What is taking more of your energy than it should?\n2. What do you want to be doing more of in six months?\n3. What should I stop doing, or start doing, that would make your week easier?\n\nThree is enough to hand the meeting over. The first asks about this week. The second asks about\nthe next six months. The third asks about you, and it is the one your report will not raise\nwithout being asked. A fourth question starts to look like your list again, and the list is what\nyou came to give up.\n\nAsk them in the same words every time. Your report will learn them, and after a few weeks they\nwill walk in with answers already half formed. That is the point of fixing the words: the meeting\nstarts on their topic before you have said anything at all.\n\nThe second question is the one my own team asked for. The most common free-text request in the\nsurvey, in 9 responses, was to be asked what they want to work on next.\n\nAfter the third question, stop talking.\n\n## What to do with the answers\n\nWait after each question, longer than you want to. Dana, the engineering manager I interviewed,\nputs it in three short sentences: \"Wait. Count to five. The real answer is the second one.\" The first\nanswer your report gives is the tidy one, the version they could give anyone. The second is what\nthey came in with, and you only hear it if you let the silence run.\n\nWrite down what they say, in their words, at the top of the running agenda. That list is where\nyour next one-on-one starts, so the meeting stays theirs the week after too.\n\nDo not try to fix everything in the room. Pick one thing you can act on this week, say what you\nwill do, and do it before you meet again. The rest stays on the running agenda until it is done\nor your report takes it off.\n\nAnd keep your own urgent items out of it. She told me: \"If I have something urgent, it is not a\none-on-one topic. I send it the day it happens.\" Your report should never have to wait a week to\nhear something you needed them to know on Monday.\n\n## Before the meeting\n\nOpen the invite and delete your list from it. Ask your report to add the first item to the\nrunning agenda instead.\n\nSo write the three questions on a card. Ask the first one. Then wait, longer than feels polite,\nbecause the first answer is the one they rehearsed and the second one is the one you came for.\n"
|
|
22
|
+
},
|
|
23
|
+
"verdict_schema": {
|
|
24
|
+
"type": "object",
|
|
25
|
+
"required": [
|
|
26
|
+
"good",
|
|
27
|
+
"improve",
|
|
28
|
+
"missing",
|
|
29
|
+
"remove"
|
|
30
|
+
],
|
|
31
|
+
"properties": {
|
|
32
|
+
"good": {
|
|
33
|
+
"type": "array",
|
|
34
|
+
"description": "what works for this reader; empty when nothing does",
|
|
35
|
+
"items": {
|
|
36
|
+
"type": "object",
|
|
37
|
+
"required": [
|
|
38
|
+
"evidence",
|
|
39
|
+
"note"
|
|
40
|
+
],
|
|
41
|
+
"properties": {
|
|
42
|
+
"evidence": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
45
|
+
},
|
|
46
|
+
"note": {
|
|
47
|
+
"type": "string",
|
|
48
|
+
"description": "what and why, in a sentence"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"improve": {
|
|
54
|
+
"type": "array",
|
|
55
|
+
"description": "what should change",
|
|
56
|
+
"items": {
|
|
57
|
+
"type": "object",
|
|
58
|
+
"required": [
|
|
59
|
+
"evidence",
|
|
60
|
+
"note"
|
|
61
|
+
],
|
|
62
|
+
"properties": {
|
|
63
|
+
"evidence": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
66
|
+
},
|
|
67
|
+
"note": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"description": "what and why, in a sentence"
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"missing": {
|
|
75
|
+
"type": "array",
|
|
76
|
+
"description": "what this reader needs that the draft does not give",
|
|
77
|
+
"items": {
|
|
78
|
+
"type": "object",
|
|
79
|
+
"required": [
|
|
80
|
+
"evidence",
|
|
81
|
+
"note"
|
|
82
|
+
],
|
|
83
|
+
"properties": {
|
|
84
|
+
"evidence": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
87
|
+
},
|
|
88
|
+
"note": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"description": "what and why, in a sentence"
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
"remove": {
|
|
96
|
+
"type": "array",
|
|
97
|
+
"description": "what should go",
|
|
98
|
+
"items": {
|
|
99
|
+
"type": "object",
|
|
100
|
+
"required": [
|
|
101
|
+
"evidence",
|
|
102
|
+
"note"
|
|
103
|
+
],
|
|
104
|
+
"properties": {
|
|
105
|
+
"evidence": {
|
|
106
|
+
"type": "string",
|
|
107
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
108
|
+
},
|
|
109
|
+
"note": {
|
|
110
|
+
"type": "string",
|
|
111
|
+
"description": "what and why, in a sentence"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hyperspec_judge": "0.1",
|
|
3
|
+
"station": "panel",
|
|
4
|
+
"spec": "essay.hyperspec.md",
|
|
5
|
+
"spec_sha256": "e03dfac6b445ae779000f7fc109a9d713df2e5cf8967faf8e808fe87d63e40e9",
|
|
6
|
+
"draft": "essay/draft.md",
|
|
7
|
+
"draft_sha256": "aa4a1d99604f7b2b398b67305b368abbb72651356c38bfffad1452db6be62f65",
|
|
8
|
+
"rubric": "simulated reader reports where it got lost and where it stopped reading",
|
|
9
|
+
"instructions": "Read inputs.draft as inputs.reader: the person inputs.reader.who describes, knowing only what inputs.reader.knows lists and what anyone would, reading for inputs.reader.lens. List what works for this reader under good, what should change under improve, what this reader needs that the draft does not give under missing, and what should go under remove. Every item is { evidence, note }. evidence is a passage copied verbatim from inputs.draft, at least three whole words; for a missing item, quote the passage nearest to where the missing thing belongs. note says what and why, in a sentence, in this reader's terms. A list may be empty. Report what this reader would say, not what another reader would. Answer only in the verdict shape given in verdict_schema.",
|
|
10
|
+
"inputs": {
|
|
11
|
+
"reader": {
|
|
12
|
+
"id": "expert",
|
|
13
|
+
"who": "an expert in the piece's subject",
|
|
14
|
+
"knows": [],
|
|
15
|
+
"lens": "what is wrong, out of date, oversimplified or missing for someone who knows the field"
|
|
16
|
+
},
|
|
17
|
+
"draft": "# Hand your first one-on-one to the person you manage\n\n## Who sets the agenda\n\nYour first one-on-one with a new report is the only meeting on your calendar where they should\nset the agenda. Everything else you run. This one you hand over.\n\nIf you walk in with a list, you have told your report what the meeting is for, and it is for\nyou. They will answer your list politely and leave. You will know nothing you did not know when\nyou sat down, and so will they.\n\nMy team ran a [survey](materials/team-survey.md) this spring. 29 of 41 people said their most useful one-on-one in the last\nquarter was one where they brought the first topic. The meeting that worked for them was the one\nthey started.\n\nSo give them the start. The simplest way to do it is a running agenda: one shared document per\nperson, kept for as long as you manage them. Your report adds items before each meeting, and you\nadd yours last, at the bottom. That is how an engineering manager I interviewed, eight years into\nthe job, runs hers. Her rule is short: the report owns the agenda.\n\n## My first one-on-one\n\nMy first one-on-one as a manager was a disaster, and the reason was simple: I ran it. I had a\nlist, and I went down the list. Project status, blockers, the thing from Tuesday. Thirty minutes\nlater my report said thanks and left, and I had learned nothing I could not have read in the\ntracker.\n\nWhat I ran was a status meeting, which is a meeting spent reading out loud what the tracker\nalready says. Your report wrote those updates. Asking them to recite the updates to you teaches\nyou nothing new, and it spends the one half hour a week that belongs to them.\n\nThe survey shows the cost from their side. 11 of 41 said at least one of their one-on-ones in the\nlast quarter was mostly project status. Read the tracker before you walk in, and leave status\nthere.\n\n## The three questions\n\nHere is what I ask now, in this order, and then I let the report take over:\n\n1. What is taking more of your energy than it should?\n2. What do you want to be doing more of in six months?\n3. What should I stop doing, or start doing, that would make your week easier?\n\nThree is enough to hand the meeting over. The first asks about this week. The second asks about\nthe next six months. The third asks about you, and it is the one your report will not raise\nwithout being asked. A fourth question starts to look like your list again, and the list is what\nyou came to give up.\n\nAsk them in the same words every time. Your report will learn them, and after a few weeks they\nwill walk in with answers already half formed. That is the point of fixing the words: the meeting\nstarts on their topic before you have said anything at all.\n\nThe second question is the one my own team asked for. The most common free-text request in the\nsurvey, in 9 responses, was to be asked what they want to work on next.\n\nAfter the third question, stop talking.\n\n## What to do with the answers\n\nWait after each question, longer than you want to. Dana, the engineering manager I interviewed,\nputs it in three short sentences: \"Wait. Count to five. The real answer is the second one.\" The first\nanswer your report gives is the tidy one, the version they could give anyone. The second is what\nthey came in with, and you only hear it if you let the silence run.\n\nWrite down what they say, in their words, at the top of the running agenda. That list is where\nyour next one-on-one starts, so the meeting stays theirs the week after too.\n\nDo not try to fix everything in the room. Pick one thing you can act on this week, say what you\nwill do, and do it before you meet again. The rest stays on the running agenda until it is done\nor your report takes it off.\n\nAnd keep your own urgent items out of it. She told me: \"If I have something urgent, it is not a\none-on-one topic. I send it the day it happens.\" Your report should never have to wait a week to\nhear something you needed them to know on Monday.\n\n## Before the meeting\n\nOpen the invite and delete your list from it. Ask your report to add the first item to the\nrunning agenda instead.\n\nSo write the three questions on a card. Ask the first one. Then wait, longer than feels polite,\nbecause the first answer is the one they rehearsed and the second one is the one you came for.\n"
|
|
18
|
+
},
|
|
19
|
+
"verdict_schema": {
|
|
20
|
+
"type": "object",
|
|
21
|
+
"required": [
|
|
22
|
+
"good",
|
|
23
|
+
"improve",
|
|
24
|
+
"missing",
|
|
25
|
+
"remove"
|
|
26
|
+
],
|
|
27
|
+
"properties": {
|
|
28
|
+
"good": {
|
|
29
|
+
"type": "array",
|
|
30
|
+
"description": "what works for this reader; empty when nothing does",
|
|
31
|
+
"items": {
|
|
32
|
+
"type": "object",
|
|
33
|
+
"required": [
|
|
34
|
+
"evidence",
|
|
35
|
+
"note"
|
|
36
|
+
],
|
|
37
|
+
"properties": {
|
|
38
|
+
"evidence": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
41
|
+
},
|
|
42
|
+
"note": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"description": "what and why, in a sentence"
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"improve": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"description": "what should change",
|
|
52
|
+
"items": {
|
|
53
|
+
"type": "object",
|
|
54
|
+
"required": [
|
|
55
|
+
"evidence",
|
|
56
|
+
"note"
|
|
57
|
+
],
|
|
58
|
+
"properties": {
|
|
59
|
+
"evidence": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
62
|
+
},
|
|
63
|
+
"note": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"description": "what and why, in a sentence"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"missing": {
|
|
71
|
+
"type": "array",
|
|
72
|
+
"description": "what this reader needs that the draft does not give",
|
|
73
|
+
"items": {
|
|
74
|
+
"type": "object",
|
|
75
|
+
"required": [
|
|
76
|
+
"evidence",
|
|
77
|
+
"note"
|
|
78
|
+
],
|
|
79
|
+
"properties": {
|
|
80
|
+
"evidence": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
83
|
+
},
|
|
84
|
+
"note": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "what and why, in a sentence"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
"remove": {
|
|
92
|
+
"type": "array",
|
|
93
|
+
"description": "what should go",
|
|
94
|
+
"items": {
|
|
95
|
+
"type": "object",
|
|
96
|
+
"required": [
|
|
97
|
+
"evidence",
|
|
98
|
+
"note"
|
|
99
|
+
],
|
|
100
|
+
"properties": {
|
|
101
|
+
"evidence": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
104
|
+
},
|
|
105
|
+
"note": {
|
|
106
|
+
"type": "string",
|
|
107
|
+
"description": "what and why, in a sentence"
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hyperspec_judge": "0.1",
|
|
3
|
+
"station": "panel",
|
|
4
|
+
"spec": "essay.hyperspec.md",
|
|
5
|
+
"spec_sha256": "e03dfac6b445ae779000f7fc109a9d713df2e5cf8967faf8e808fe87d63e40e9",
|
|
6
|
+
"draft": "essay/draft.md",
|
|
7
|
+
"draft_sha256": "aa4a1d99604f7b2b398b67305b368abbb72651356c38bfffad1452db6be62f65",
|
|
8
|
+
"rubric": "simulated reader reports where it got lost and where it stopped reading",
|
|
9
|
+
"instructions": "Read inputs.draft as inputs.reader: the person inputs.reader.who describes, knowing only what inputs.reader.knows lists and what anyone would, reading for inputs.reader.lens. List what works for this reader under good, what should change under improve, what this reader needs that the draft does not give under missing, and what should go under remove. Every item is { evidence, note }. evidence is a passage copied verbatim from inputs.draft, at least three whole words; for a missing item, quote the passage nearest to where the missing thing belongs. note says what and why, in a sentence, in this reader's terms. A list may be empty. Report what this reader would say, not what another reader would. Answer only in the verdict shape given in verdict_schema.",
|
|
10
|
+
"inputs": {
|
|
11
|
+
"reader": {
|
|
12
|
+
"id": "novice",
|
|
13
|
+
"who": "a newcomer to the subject, meeting its ideas for the first time",
|
|
14
|
+
"knows": [],
|
|
15
|
+
"lens": "every term, step or assumption the piece does not explain"
|
|
16
|
+
},
|
|
17
|
+
"draft": "# Hand your first one-on-one to the person you manage\n\n## Who sets the agenda\n\nYour first one-on-one with a new report is the only meeting on your calendar where they should\nset the agenda. Everything else you run. This one you hand over.\n\nIf you walk in with a list, you have told your report what the meeting is for, and it is for\nyou. They will answer your list politely and leave. You will know nothing you did not know when\nyou sat down, and so will they.\n\nMy team ran a [survey](materials/team-survey.md) this spring. 29 of 41 people said their most useful one-on-one in the last\nquarter was one where they brought the first topic. The meeting that worked for them was the one\nthey started.\n\nSo give them the start. The simplest way to do it is a running agenda: one shared document per\nperson, kept for as long as you manage them. Your report adds items before each meeting, and you\nadd yours last, at the bottom. That is how an engineering manager I interviewed, eight years into\nthe job, runs hers. Her rule is short: the report owns the agenda.\n\n## My first one-on-one\n\nMy first one-on-one as a manager was a disaster, and the reason was simple: I ran it. I had a\nlist, and I went down the list. Project status, blockers, the thing from Tuesday. Thirty minutes\nlater my report said thanks and left, and I had learned nothing I could not have read in the\ntracker.\n\nWhat I ran was a status meeting, which is a meeting spent reading out loud what the tracker\nalready says. Your report wrote those updates. Asking them to recite the updates to you teaches\nyou nothing new, and it spends the one half hour a week that belongs to them.\n\nThe survey shows the cost from their side. 11 of 41 said at least one of their one-on-ones in the\nlast quarter was mostly project status. Read the tracker before you walk in, and leave status\nthere.\n\n## The three questions\n\nHere is what I ask now, in this order, and then I let the report take over:\n\n1. What is taking more of your energy than it should?\n2. What do you want to be doing more of in six months?\n3. What should I stop doing, or start doing, that would make your week easier?\n\nThree is enough to hand the meeting over. The first asks about this week. The second asks about\nthe next six months. The third asks about you, and it is the one your report will not raise\nwithout being asked. A fourth question starts to look like your list again, and the list is what\nyou came to give up.\n\nAsk them in the same words every time. Your report will learn them, and after a few weeks they\nwill walk in with answers already half formed. That is the point of fixing the words: the meeting\nstarts on their topic before you have said anything at all.\n\nThe second question is the one my own team asked for. The most common free-text request in the\nsurvey, in 9 responses, was to be asked what they want to work on next.\n\nAfter the third question, stop talking.\n\n## What to do with the answers\n\nWait after each question, longer than you want to. Dana, the engineering manager I interviewed,\nputs it in three short sentences: \"Wait. Count to five. The real answer is the second one.\" The first\nanswer your report gives is the tidy one, the version they could give anyone. The second is what\nthey came in with, and you only hear it if you let the silence run.\n\nWrite down what they say, in their words, at the top of the running agenda. That list is where\nyour next one-on-one starts, so the meeting stays theirs the week after too.\n\nDo not try to fix everything in the room. Pick one thing you can act on this week, say what you\nwill do, and do it before you meet again. The rest stays on the running agenda until it is done\nor your report takes it off.\n\nAnd keep your own urgent items out of it. She told me: \"If I have something urgent, it is not a\none-on-one topic. I send it the day it happens.\" Your report should never have to wait a week to\nhear something you needed them to know on Monday.\n\n## Before the meeting\n\nOpen the invite and delete your list from it. Ask your report to add the first item to the\nrunning agenda instead.\n\nSo write the three questions on a card. Ask the first one. Then wait, longer than feels polite,\nbecause the first answer is the one they rehearsed and the second one is the one you came for.\n"
|
|
18
|
+
},
|
|
19
|
+
"verdict_schema": {
|
|
20
|
+
"type": "object",
|
|
21
|
+
"required": [
|
|
22
|
+
"good",
|
|
23
|
+
"improve",
|
|
24
|
+
"missing",
|
|
25
|
+
"remove"
|
|
26
|
+
],
|
|
27
|
+
"properties": {
|
|
28
|
+
"good": {
|
|
29
|
+
"type": "array",
|
|
30
|
+
"description": "what works for this reader; empty when nothing does",
|
|
31
|
+
"items": {
|
|
32
|
+
"type": "object",
|
|
33
|
+
"required": [
|
|
34
|
+
"evidence",
|
|
35
|
+
"note"
|
|
36
|
+
],
|
|
37
|
+
"properties": {
|
|
38
|
+
"evidence": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
41
|
+
},
|
|
42
|
+
"note": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"description": "what and why, in a sentence"
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"improve": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"description": "what should change",
|
|
52
|
+
"items": {
|
|
53
|
+
"type": "object",
|
|
54
|
+
"required": [
|
|
55
|
+
"evidence",
|
|
56
|
+
"note"
|
|
57
|
+
],
|
|
58
|
+
"properties": {
|
|
59
|
+
"evidence": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
62
|
+
},
|
|
63
|
+
"note": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"description": "what and why, in a sentence"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"missing": {
|
|
71
|
+
"type": "array",
|
|
72
|
+
"description": "what this reader needs that the draft does not give",
|
|
73
|
+
"items": {
|
|
74
|
+
"type": "object",
|
|
75
|
+
"required": [
|
|
76
|
+
"evidence",
|
|
77
|
+
"note"
|
|
78
|
+
],
|
|
79
|
+
"properties": {
|
|
80
|
+
"evidence": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
83
|
+
},
|
|
84
|
+
"note": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "what and why, in a sentence"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
"remove": {
|
|
92
|
+
"type": "array",
|
|
93
|
+
"description": "what should go",
|
|
94
|
+
"items": {
|
|
95
|
+
"type": "object",
|
|
96
|
+
"required": [
|
|
97
|
+
"evidence",
|
|
98
|
+
"note"
|
|
99
|
+
],
|
|
100
|
+
"properties": {
|
|
101
|
+
"evidence": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
104
|
+
},
|
|
105
|
+
"note": {
|
|
106
|
+
"type": "string",
|
|
107
|
+
"description": "what and why, in a sentence"
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hyperspec_judge": "0.1",
|
|
3
|
+
"station": "panel",
|
|
4
|
+
"spec": "essay.hyperspec.md",
|
|
5
|
+
"spec_sha256": "e03dfac6b445ae779000f7fc109a9d713df2e5cf8967faf8e808fe87d63e40e9",
|
|
6
|
+
"draft": "essay/draft.md",
|
|
7
|
+
"draft_sha256": "aa4a1d99604f7b2b398b67305b368abbb72651356c38bfffad1452db6be62f65",
|
|
8
|
+
"rubric": "simulated reader reports where it got lost and where it stopped reading",
|
|
9
|
+
"instructions": "Read inputs.draft as inputs.reader: the person inputs.reader.who describes, knowing only what inputs.reader.knows lists and what anyone would, reading for inputs.reader.lens. List what works for this reader under good, what should change under improve, what this reader needs that the draft does not give under missing, and what should go under remove. Every item is { evidence, note }. evidence is a passage copied verbatim from inputs.draft, at least three whole words; for a missing item, quote the passage nearest to where the missing thing belongs. note says what and why, in a sentence, in this reader's terms. A list may be empty. Report what this reader would say, not what another reader would. Answer only in the verdict shape given in verdict_schema.",
|
|
10
|
+
"inputs": {
|
|
11
|
+
"reader": {
|
|
12
|
+
"id": "skeptic",
|
|
13
|
+
"who": "a skeptic who doubts the piece's central claim and wants it earned",
|
|
14
|
+
"knows": [],
|
|
15
|
+
"lens": "what is asserted without support, overstated, or does not follow"
|
|
16
|
+
},
|
|
17
|
+
"draft": "# Hand your first one-on-one to the person you manage\n\n## Who sets the agenda\n\nYour first one-on-one with a new report is the only meeting on your calendar where they should\nset the agenda. Everything else you run. This one you hand over.\n\nIf you walk in with a list, you have told your report what the meeting is for, and it is for\nyou. They will answer your list politely and leave. You will know nothing you did not know when\nyou sat down, and so will they.\n\nMy team ran a [survey](materials/team-survey.md) this spring. 29 of 41 people said their most useful one-on-one in the last\nquarter was one where they brought the first topic. The meeting that worked for them was the one\nthey started.\n\nSo give them the start. The simplest way to do it is a running agenda: one shared document per\nperson, kept for as long as you manage them. Your report adds items before each meeting, and you\nadd yours last, at the bottom. That is how an engineering manager I interviewed, eight years into\nthe job, runs hers. Her rule is short: the report owns the agenda.\n\n## My first one-on-one\n\nMy first one-on-one as a manager was a disaster, and the reason was simple: I ran it. I had a\nlist, and I went down the list. Project status, blockers, the thing from Tuesday. Thirty minutes\nlater my report said thanks and left, and I had learned nothing I could not have read in the\ntracker.\n\nWhat I ran was a status meeting, which is a meeting spent reading out loud what the tracker\nalready says. Your report wrote those updates. Asking them to recite the updates to you teaches\nyou nothing new, and it spends the one half hour a week that belongs to them.\n\nThe survey shows the cost from their side. 11 of 41 said at least one of their one-on-ones in the\nlast quarter was mostly project status. Read the tracker before you walk in, and leave status\nthere.\n\n## The three questions\n\nHere is what I ask now, in this order, and then I let the report take over:\n\n1. What is taking more of your energy than it should?\n2. What do you want to be doing more of in six months?\n3. What should I stop doing, or start doing, that would make your week easier?\n\nThree is enough to hand the meeting over. The first asks about this week. The second asks about\nthe next six months. The third asks about you, and it is the one your report will not raise\nwithout being asked. A fourth question starts to look like your list again, and the list is what\nyou came to give up.\n\nAsk them in the same words every time. Your report will learn them, and after a few weeks they\nwill walk in with answers already half formed. That is the point of fixing the words: the meeting\nstarts on their topic before you have said anything at all.\n\nThe second question is the one my own team asked for. The most common free-text request in the\nsurvey, in 9 responses, was to be asked what they want to work on next.\n\nAfter the third question, stop talking.\n\n## What to do with the answers\n\nWait after each question, longer than you want to. Dana, the engineering manager I interviewed,\nputs it in three short sentences: \"Wait. Count to five. The real answer is the second one.\" The first\nanswer your report gives is the tidy one, the version they could give anyone. The second is what\nthey came in with, and you only hear it if you let the silence run.\n\nWrite down what they say, in their words, at the top of the running agenda. That list is where\nyour next one-on-one starts, so the meeting stays theirs the week after too.\n\nDo not try to fix everything in the room. Pick one thing you can act on this week, say what you\nwill do, and do it before you meet again. The rest stays on the running agenda until it is done\nor your report takes it off.\n\nAnd keep your own urgent items out of it. She told me: \"If I have something urgent, it is not a\none-on-one topic. I send it the day it happens.\" Your report should never have to wait a week to\nhear something you needed them to know on Monday.\n\n## Before the meeting\n\nOpen the invite and delete your list from it. Ask your report to add the first item to the\nrunning agenda instead.\n\nSo write the three questions on a card. Ask the first one. Then wait, longer than feels polite,\nbecause the first answer is the one they rehearsed and the second one is the one you came for.\n"
|
|
18
|
+
},
|
|
19
|
+
"verdict_schema": {
|
|
20
|
+
"type": "object",
|
|
21
|
+
"required": [
|
|
22
|
+
"good",
|
|
23
|
+
"improve",
|
|
24
|
+
"missing",
|
|
25
|
+
"remove"
|
|
26
|
+
],
|
|
27
|
+
"properties": {
|
|
28
|
+
"good": {
|
|
29
|
+
"type": "array",
|
|
30
|
+
"description": "what works for this reader; empty when nothing does",
|
|
31
|
+
"items": {
|
|
32
|
+
"type": "object",
|
|
33
|
+
"required": [
|
|
34
|
+
"evidence",
|
|
35
|
+
"note"
|
|
36
|
+
],
|
|
37
|
+
"properties": {
|
|
38
|
+
"evidence": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
41
|
+
},
|
|
42
|
+
"note": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"description": "what and why, in a sentence"
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"improve": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"description": "what should change",
|
|
52
|
+
"items": {
|
|
53
|
+
"type": "object",
|
|
54
|
+
"required": [
|
|
55
|
+
"evidence",
|
|
56
|
+
"note"
|
|
57
|
+
],
|
|
58
|
+
"properties": {
|
|
59
|
+
"evidence": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
62
|
+
},
|
|
63
|
+
"note": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"description": "what and why, in a sentence"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"missing": {
|
|
71
|
+
"type": "array",
|
|
72
|
+
"description": "what this reader needs that the draft does not give",
|
|
73
|
+
"items": {
|
|
74
|
+
"type": "object",
|
|
75
|
+
"required": [
|
|
76
|
+
"evidence",
|
|
77
|
+
"note"
|
|
78
|
+
],
|
|
79
|
+
"properties": {
|
|
80
|
+
"evidence": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
83
|
+
},
|
|
84
|
+
"note": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "what and why, in a sentence"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
"remove": {
|
|
92
|
+
"type": "array",
|
|
93
|
+
"description": "what should go",
|
|
94
|
+
"items": {
|
|
95
|
+
"type": "object",
|
|
96
|
+
"required": [
|
|
97
|
+
"evidence",
|
|
98
|
+
"note"
|
|
99
|
+
],
|
|
100
|
+
"properties": {
|
|
101
|
+
"evidence": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"description": "a passage copied verbatim from the draft, at least three words; for a missing item, the passage nearest where it belongs"
|
|
104
|
+
},
|
|
105
|
+
"note": {
|
|
106
|
+
"type": "string",
|
|
107
|
+
"description": "what and why, in a sentence"
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"sample": "A sample judgment for the worked example, filled in by hand to show what a verdict looks like and what judge record does with it. It is one reading of the packet, not a model run, and another judge may answer differently. hyperspec ignores this field.",
|
|
3
|
+
"good": [
|
|
4
|
+
{ "evidence": "So write the three questions on a card.", "note": "It ends on the one thing to do before the meeting, which is what this reader came for." }
|
|
5
|
+
],
|
|
6
|
+
"improve": [],
|
|
7
|
+
"missing": [
|
|
8
|
+
{ "evidence": "After the third question, stop talking.", "note": "What to do if the report has nothing to say: the silence that does not end is what a first-time manager is most afraid of." }
|
|
9
|
+
],
|
|
10
|
+
"remove": []
|
|
11
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"sample": "A sample judgment for the worked example, filled in by hand to show what a verdict looks like and what judge record does with it. It is one reading of the packet, not a model run, and another judge may answer differently. hyperspec ignores this field.",
|
|
3
|
+
"good": [
|
|
4
|
+
{ "evidence": "Pick one thing you can act on this week, say what you will do, and do it before you meet again.", "note": "The follow-through is what experienced managers say makes the meeting worth having, and it is concrete." }
|
|
5
|
+
],
|
|
6
|
+
"improve": [
|
|
7
|
+
{ "evidence": "After the third question, stop talking.", "note": "Right for most reports, but a new or quiet report may say nothing at all; say what to do when the silence runs on." }
|
|
8
|
+
],
|
|
9
|
+
"missing": [],
|
|
10
|
+
"remove": [
|
|
11
|
+
{ "evidence": "My first one-on-one as a manager was a disaster", "note": "An experienced reader has heard this story many times, and the survey already makes the case it makes." }
|
|
12
|
+
]
|
|
13
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"sample": "A sample judgment for the worked example, filled in by hand to show what a verdict looks like and what judge record does with it. It is one reading of the packet, not a model run, and another judge may answer differently. hyperspec ignores this field.",
|
|
3
|
+
"good": [
|
|
4
|
+
{ "evidence": "a status meeting, which is a meeting spent reading out loud what the tracker already says", "note": "The one term a newcomer would not know is defined in the sentence that names it." }
|
|
5
|
+
],
|
|
6
|
+
"improve": [
|
|
7
|
+
{ "evidence": "The simplest way to do it is a running agenda", "note": "It says what a running agenda is, but not who creates the document or where it lives, which is the first thing a new manager would have to do." }
|
|
8
|
+
],
|
|
9
|
+
"missing": [],
|
|
10
|
+
"remove": []
|
|
11
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"sample": "A sample judgment for the worked example, filled in by hand to show what a verdict looks like and what judge record does with it. It is one reading of the packet, not a model run, and another judge may answer differently. hyperspec ignores this field.",
|
|
3
|
+
"good": [
|
|
4
|
+
{ "evidence": "29 of 41 people said their most useful one-on-one in the last quarter was one where they brought the first topic.", "note": "The central claim rests on a count from the author's own team, not on an adjective." }
|
|
5
|
+
],
|
|
6
|
+
"improve": [
|
|
7
|
+
{ "evidence": "Three is enough to hand the meeting over.", "note": "Asserted rather than shown: nothing says why three works better than two, beyond a fourth starting to look like the manager's list." }
|
|
8
|
+
],
|
|
9
|
+
"missing": [
|
|
10
|
+
{ "evidence": "My team ran a", "note": "Who answered the survey and how it was asked is never said, so a reader cannot tell how far 41 people on one team carry." }
|
|
11
|
+
],
|
|
12
|
+
"remove": []
|
|
13
|
+
}
|