@bendyline/gilde 0.1.57 → 0.1.58
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/data/craftbook-templates/ch/character-turnaround/versions/1.0.3/test.json +7 -10
- package/data/craftbook-templates/do/doc-rewrite/versions/1.0.3/test.json +3 -6
- package/data/craftbook-templates/ed/edit-notes/versions/1.0.3/test.json +5 -8
- package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.3/test.json +5 -8
- package/data/craftbook-templates/in/insurance-inventory/versions/1.0.3/test.json +6 -9
- package/data/craftbook-templates/it/item-intake/versions/1.0.3/test.json +7 -10
- package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.3/test.json +9 -11
- package/data/craftbook-templates/mo/morning-report/versions/1.0.3/test.json +14 -17
- package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.3/test.json +12 -15
- package/data/craftbook-templates/pl/playtest-report/versions/1.0.3/test.json +9 -12
- package/data/craftbook-templates/pr/practice-exam/versions/1.0.3/test.json +3 -6
- package/data/craftbook-templates/pr/practice-session/versions/1.0.3/test.json +6 -9
- package/data/craftbook-templates/re/receipt-intake/versions/1.0.3/test.json +8 -11
- package/data/craftbook-templates/re/recipe-capture/versions/1.0.3/test.json +8 -11
- package/data/craftbook-templates/re/record-a-relative/versions/1.0.3/test.json +9 -11
- package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.4/test.json +9 -12
- package/data/craftbook-templates/so/source-quality-audit/versions/1.0.3/test.json +15 -18
- package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.3/test.json +5 -8
- package/data/craftbook-templates/ti/tileset-batch/versions/1.0.3/test.json +5 -8
- package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.3/test.json +5 -8
- package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.3/test.json +13 -16
- package/data/toolsets/do/docblocks/versions/2.6.0/manifest.json +95 -0
- package/data/toolsets/index.json +1 -1
- package/package.json +1 -1
|
@@ -19,30 +19,27 @@
|
|
|
19
19
|
"worker": {
|
|
20
20
|
"name": "Roos",
|
|
21
21
|
"role": "Reviewer"
|
|
22
|
-
},
|
|
23
|
-
"craftbookParams": {
|
|
24
|
-
"workPath": "tasks/eval"
|
|
25
22
|
}
|
|
26
23
|
},
|
|
27
24
|
"mocks": [],
|
|
28
25
|
"success": {
|
|
29
|
-
"summary": "
|
|
26
|
+
"summary": "report.md in this task's own artifacts working folder is a ranked, repro-backed playtest report that catches the restart flaws — the score carrying over between rounds and the stacking input handler.",
|
|
30
27
|
"deliverables": [
|
|
31
28
|
{
|
|
32
|
-
"path": "
|
|
29
|
+
"path": "{{task.dir}}/report.md",
|
|
33
30
|
"kind": "markdown-report",
|
|
34
31
|
"minBytes": 1200,
|
|
35
32
|
"checks": [
|
|
36
33
|
{
|
|
37
34
|
"kind": "contains",
|
|
38
|
-
"file": "
|
|
35
|
+
"file": "{{task.dir}}/report.md",
|
|
39
36
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
40
37
|
"flags": "i",
|
|
41
38
|
"artifact": true
|
|
42
39
|
},
|
|
43
40
|
{
|
|
44
41
|
"kind": "tableShape",
|
|
45
|
-
"file": "
|
|
42
|
+
"file": "{{task.dir}}/report.md",
|
|
46
43
|
"requiredColumns": [
|
|
47
44
|
"Issue",
|
|
48
45
|
"Severity"
|
|
@@ -52,7 +49,7 @@
|
|
|
52
49
|
},
|
|
53
50
|
{
|
|
54
51
|
"kind": "contains",
|
|
55
|
-
"file": "
|
|
52
|
+
"file": "{{task.dir}}/report.md",
|
|
56
53
|
"pattern": "repro|steps",
|
|
57
54
|
"flags": "i",
|
|
58
55
|
"label": "repros attached",
|
|
@@ -60,7 +57,7 @@
|
|
|
60
57
|
},
|
|
61
58
|
{
|
|
62
59
|
"kind": "contains",
|
|
63
|
-
"file": "
|
|
60
|
+
"file": "{{task.dir}}/report.md",
|
|
64
61
|
"pattern": "score",
|
|
65
62
|
"flags": "i",
|
|
66
63
|
"label": "score loop covered",
|
|
@@ -68,7 +65,7 @@
|
|
|
68
65
|
},
|
|
69
66
|
{
|
|
70
67
|
"kind": "contains",
|
|
71
|
-
"file": "
|
|
68
|
+
"file": "{{task.dir}}/report.md",
|
|
72
69
|
"pattern": "restart|play again|enter",
|
|
73
70
|
"flags": "i",
|
|
74
71
|
"label": "the restart path was exercised",
|
|
@@ -76,7 +73,7 @@
|
|
|
76
73
|
},
|
|
77
74
|
{
|
|
78
75
|
"kind": "judge",
|
|
79
|
-
"file": "
|
|
76
|
+
"file": "{{task.dir}}/report.md",
|
|
80
77
|
"rubric": "Findings are specific and reproducible — concrete steps a stranger could follow — and ranked by player impact; the report catches that restarting does not reset the score and that input handling degrades across restarts.",
|
|
81
78
|
"sourceFiles": [
|
|
82
79
|
"index.html"
|
|
@@ -91,7 +88,7 @@
|
|
|
91
88
|
},
|
|
92
89
|
"rubric": {
|
|
93
90
|
"artifact": {
|
|
94
|
-
"path": "
|
|
91
|
+
"path": "{{task.dir}}/report.md",
|
|
95
92
|
"kind": "markdown"
|
|
96
93
|
},
|
|
97
94
|
"axes": [
|
|
@@ -19,14 +19,11 @@
|
|
|
19
19
|
"worker": {
|
|
20
20
|
"name": "Milan",
|
|
21
21
|
"role": "Developer"
|
|
22
|
-
},
|
|
23
|
-
"craftbookParams": {
|
|
24
|
-
"workPath": "tasks/eval"
|
|
25
22
|
}
|
|
26
23
|
},
|
|
27
24
|
"mocks": [],
|
|
28
25
|
"success": {
|
|
29
|
-
"summary": "exam.html is a timed, self-scoring exam built from the deck with the record's weak topics weighted up;
|
|
26
|
+
"summary": "exam.html is a timed, self-scoring exam built from the deck with the record's weak topics weighted up; answer-key.md in this task's own artifacts working folder explains every answer.",
|
|
30
27
|
"deliverables": [
|
|
31
28
|
{
|
|
32
29
|
"path": "exam.html",
|
|
@@ -73,13 +70,13 @@
|
|
|
73
70
|
]
|
|
74
71
|
},
|
|
75
72
|
{
|
|
76
|
-
"path": "
|
|
73
|
+
"path": "{{task.dir}}/answer-key.md",
|
|
77
74
|
"kind": "markdown-notes",
|
|
78
75
|
"minBytes": 800,
|
|
79
76
|
"checks": [
|
|
80
77
|
{
|
|
81
78
|
"kind": "contains",
|
|
82
|
-
"file": "
|
|
79
|
+
"file": "{{task.dir}}/answer-key.md",
|
|
83
80
|
"pattern": "card|deck",
|
|
84
81
|
"flags": "i",
|
|
85
82
|
"label": "key points back to the deck",
|
|
@@ -23,30 +23,27 @@
|
|
|
23
23
|
"worker": {
|
|
24
24
|
"name": "Ruben",
|
|
25
25
|
"role": "Coach"
|
|
26
|
-
},
|
|
27
|
-
"craftbookParams": {
|
|
28
|
-
"workPath": "tasks/eval"
|
|
29
26
|
}
|
|
30
27
|
},
|
|
31
28
|
"mocks": [],
|
|
32
29
|
"success": {
|
|
33
|
-
"summary": "Today's session is appended to practice.json as a well-formed entry, and
|
|
30
|
+
"summary": "Today's session is appended to practice.json as a well-formed entry, and report.md in this task's own artifacts working folder closes the day with the streak state and a concrete, targeted plan for tomorrow.",
|
|
34
31
|
"deliverables": [
|
|
35
32
|
{
|
|
36
|
-
"path": "
|
|
33
|
+
"path": "{{task.dir}}/report.md",
|
|
37
34
|
"kind": "markdown-report",
|
|
38
35
|
"minBytes": 800,
|
|
39
36
|
"checks": [
|
|
40
37
|
{
|
|
41
38
|
"kind": "contains",
|
|
42
|
-
"file": "
|
|
39
|
+
"file": "{{task.dir}}/report.md",
|
|
43
40
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
44
41
|
"flags": "i",
|
|
45
42
|
"artifact": true
|
|
46
43
|
},
|
|
47
44
|
{
|
|
48
45
|
"kind": "contains",
|
|
49
|
-
"file": "
|
|
46
|
+
"file": "{{task.dir}}/report.md",
|
|
50
47
|
"pattern": "tomorrow|next session",
|
|
51
48
|
"flags": "i",
|
|
52
49
|
"label": "tomorrow's plan present",
|
|
@@ -54,7 +51,7 @@
|
|
|
54
51
|
},
|
|
55
52
|
{
|
|
56
53
|
"kind": "contains",
|
|
57
|
-
"file": "
|
|
54
|
+
"file": "{{task.dir}}/report.md",
|
|
58
55
|
"pattern": "bpm|bar\\s*\\d+",
|
|
59
56
|
"flags": "i",
|
|
60
57
|
"label": "concrete tempo or bar targets",
|
|
@@ -91,7 +88,7 @@
|
|
|
91
88
|
},
|
|
92
89
|
"rubric": {
|
|
93
90
|
"artifact": {
|
|
94
|
-
"path": "
|
|
91
|
+
"path": "{{task.dir}}/report.md",
|
|
95
92
|
"kind": "markdown"
|
|
96
93
|
},
|
|
97
94
|
"axes": [
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"prompt": "i dropped this months recipts into inbox/ — can you get them into the shoebox and flag anything that looks off?",
|
|
9
9
|
"setup": {
|
|
10
10
|
"projectName": "Tax Shoebox — Receipt Intake Eval",
|
|
11
|
-
"about": "Self-contained eval project for receipt-intake. The intake rail has already pre-extracted each snapped receipt photo into a plain-text note under inbox/ (vendor, date, total, and any handwriting). The ledger lives at ledger.json in the workspace; the run's write-up goes to
|
|
12
|
-
"missionObjectives": "Use the Receipt Intake craftbook/template, read the seeded local fixtures only, and finish with an updated ledger.json plus
|
|
11
|
+
"about": "Self-contained eval project for receipt-intake. The intake rail has already pre-extracted each snapped receipt photo into a plain-text note under inbox/ (vendor, date, total, and any handwriting). The ledger lives at ledger.json in the workspace; the run's write-up goes to report.md in this task's own artifacts working folder.",
|
|
12
|
+
"missionObjectives": "Use the Receipt Intake craftbook/template, read the seeded local fixtures only, and finish with an updated ledger.json plus report.md in this task's own artifacts working folder — no network calls, real credentials, or live services.",
|
|
13
13
|
"files": [
|
|
14
14
|
{
|
|
15
15
|
"path": "inbox/receipt-01.txt",
|
|
@@ -39,30 +39,27 @@
|
|
|
39
39
|
"worker": {
|
|
40
40
|
"name": "Nora",
|
|
41
41
|
"role": "Clerk"
|
|
42
|
-
},
|
|
43
|
-
"craftbookParams": {
|
|
44
|
-
"workPath": "tasks/eval"
|
|
45
42
|
}
|
|
46
43
|
},
|
|
47
44
|
"mocks": [],
|
|
48
45
|
"success": {
|
|
49
|
-
"summary": "The ledger gains schema-clean entries whose amounts match the receipts exactly, and
|
|
46
|
+
"summary": "The ledger gains schema-clean entries whose amounts match the receipts exactly, and report.md in this task's own artifacts working folder surfaces the duplicate and the owner question instead of guessing.",
|
|
50
47
|
"deliverables": [
|
|
51
48
|
{
|
|
52
|
-
"path": "
|
|
49
|
+
"path": "{{task.dir}}/report.md",
|
|
53
50
|
"kind": "markdown-report",
|
|
54
51
|
"minBytes": 600,
|
|
55
52
|
"checks": [
|
|
56
53
|
{
|
|
57
54
|
"kind": "contains",
|
|
58
|
-
"file": "
|
|
55
|
+
"file": "{{task.dir}}/report.md",
|
|
59
56
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
60
57
|
"flags": "i",
|
|
61
58
|
"artifact": true
|
|
62
59
|
},
|
|
63
60
|
{
|
|
64
61
|
"kind": "contains",
|
|
65
|
-
"file": "
|
|
62
|
+
"file": "{{task.dir}}/report.md",
|
|
66
63
|
"pattern": "question|unsure|unclear|flag",
|
|
67
64
|
"flags": "i",
|
|
68
65
|
"label": "ambiguous receipt surfaced as an owner question, not a guess",
|
|
@@ -70,7 +67,7 @@
|
|
|
70
67
|
},
|
|
71
68
|
{
|
|
72
69
|
"kind": "contains",
|
|
73
|
-
"file": "
|
|
70
|
+
"file": "{{task.dir}}/report.md",
|
|
74
71
|
"pattern": "duplicate|already (in|entered|logged)|double[- ]?count",
|
|
75
72
|
"flags": "i",
|
|
76
73
|
"label": "the repeat Office Depot receipt is flagged as a likely duplicate",
|
|
@@ -126,7 +123,7 @@
|
|
|
126
123
|
},
|
|
127
124
|
"rubric": {
|
|
128
125
|
"artifact": {
|
|
129
|
-
"path": "
|
|
126
|
+
"path": "{{task.dir}}/report.md",
|
|
130
127
|
"kind": "markdown"
|
|
131
128
|
},
|
|
132
129
|
"axes": [
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"prompt": "scanned two of omas cards — the transcriptions are in inbox/card-1.txt and inbox/card-2.txt. can you get them into the book propperly?",
|
|
9
9
|
"setup": {
|
|
10
10
|
"projectName": "Family Recipe Book — Card Capture Eval",
|
|
11
|
-
"about": "Self-contained eval project for recipe-capture. The card photos have already been pre-extracted into plain-text scan notes under inbox/ (the text as written, plus margin notes). Captured recipes go under recipes/ and are recorded in recipes.json; the capture log goes to
|
|
12
|
-
"missionObjectives": "Use the Capture a Recipe Card craftbook/template, work only from the seeded card notes, and finish with the recipe files, an updated recipes.json, and
|
|
11
|
+
"about": "Self-contained eval project for recipe-capture. The card photos have already been pre-extracted into plain-text scan notes under inbox/ (the text as written, plus margin notes). Captured recipes go under recipes/ and are recorded in recipes.json; the capture log goes to report.md in this task's own artifacts working folder.",
|
|
12
|
+
"missionObjectives": "Use the Capture a Recipe Card craftbook/template, work only from the seeded card notes, and finish with the recipe files, an updated recipes.json, and report.md in this task's own artifacts working folder — no network calls, real credentials, or live services.",
|
|
13
13
|
"files": [
|
|
14
14
|
{
|
|
15
15
|
"path": "inbox/card-1.txt",
|
|
@@ -27,9 +27,6 @@
|
|
|
27
27
|
"worker": {
|
|
28
28
|
"name": "Bep",
|
|
29
29
|
"role": "Archivist"
|
|
30
|
-
},
|
|
31
|
-
"craftbookParams": {
|
|
32
|
-
"workPath": "tasks/eval"
|
|
33
30
|
}
|
|
34
31
|
},
|
|
35
32
|
"mocks": [],
|
|
@@ -37,34 +34,34 @@
|
|
|
37
34
|
"summary": "Both cards become recipe files under recipes/ with provenance kept beside the food, the store records each capture, and the log flags what needs a test-cook.",
|
|
38
35
|
"deliverables": [
|
|
39
36
|
{
|
|
40
|
-
"path": "
|
|
37
|
+
"path": "{{task.dir}}/report.md",
|
|
41
38
|
"kind": "markdown-report",
|
|
42
39
|
"minBytes": 500,
|
|
43
40
|
"checks": [
|
|
44
41
|
{
|
|
45
42
|
"kind": "contains",
|
|
46
|
-
"file": "
|
|
43
|
+
"file": "{{task.dir}}/report.md",
|
|
47
44
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
48
45
|
"flags": "i",
|
|
49
46
|
"artifact": true
|
|
50
47
|
},
|
|
51
48
|
{
|
|
52
49
|
"kind": "contains",
|
|
53
|
-
"file": "
|
|
50
|
+
"file": "{{task.dir}}/report.md",
|
|
54
51
|
"pattern": "Oma|Riet",
|
|
55
52
|
"label": "provenance carried into the capture log",
|
|
56
53
|
"artifact": true
|
|
57
54
|
},
|
|
58
55
|
{
|
|
59
56
|
"kind": "contains",
|
|
60
|
-
"file": "
|
|
57
|
+
"file": "{{task.dir}}/report.md",
|
|
61
58
|
"pattern": "\\?",
|
|
62
59
|
"label": "questions for the family are actually asked",
|
|
63
60
|
"artifact": true
|
|
64
61
|
},
|
|
65
62
|
{
|
|
66
63
|
"kind": "contains",
|
|
67
|
-
"file": "
|
|
64
|
+
"file": "{{task.dir}}/report.md",
|
|
68
65
|
"pattern": "test[- ]?cook|try (it|the)|verify",
|
|
69
66
|
"flags": "i",
|
|
70
67
|
"label": "test-cook needs named",
|
|
@@ -106,7 +103,7 @@
|
|
|
106
103
|
},
|
|
107
104
|
"rubric": {
|
|
108
105
|
"artifact": {
|
|
109
|
-
"path": "
|
|
106
|
+
"path": "{{task.dir}}/report.md",
|
|
110
107
|
"kind": "markdown"
|
|
111
108
|
},
|
|
112
109
|
"axes": [
|
|
@@ -23,29 +23,26 @@
|
|
|
23
23
|
"worker": {
|
|
24
24
|
"name": "Teun",
|
|
25
25
|
"role": "Genealogist"
|
|
26
|
-
},
|
|
27
|
-
"craftbookParams": {
|
|
28
|
-
"workPath": "tasks/eval"
|
|
29
26
|
}
|
|
30
27
|
},
|
|
31
28
|
"mocks": [],
|
|
32
29
|
"success": {
|
|
33
|
-
"summary": "The transcript is filed under interviews/, and
|
|
30
|
+
"summary": "The transcript is filed under interviews/, and report.md in this task's own artifacts working folder extracts the facts with their quotes, surfaces the 1919-vs-1921 birth-year conflict as a conflict, keeps the uncertain brother story uncertain, and asks follow-up questions.",
|
|
34
31
|
"deliverables": [
|
|
35
32
|
{
|
|
36
|
-
"path": "
|
|
33
|
+
"path": "{{task.dir}}/report.md",
|
|
37
34
|
"kind": "markdown-report",
|
|
38
35
|
"minBytes": 1000,
|
|
39
36
|
"checks": [
|
|
40
37
|
{
|
|
41
38
|
"kind": "contains",
|
|
42
|
-
"file": "
|
|
39
|
+
"file": "{{task.dir}}/report.md",
|
|
43
40
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
44
41
|
"flags": "i"
|
|
45
42
|
},
|
|
46
43
|
{
|
|
47
44
|
"kind": "valuesSubsetOf",
|
|
48
|
-
"file": "
|
|
45
|
+
"file": "{{task.dir}}/report.md",
|
|
49
46
|
"sourceFiles": [
|
|
50
47
|
"recordings/oma-2026-07.txt",
|
|
51
48
|
"tree.json"
|
|
@@ -56,18 +53,19 @@
|
|
|
56
53
|
},
|
|
57
54
|
{
|
|
58
55
|
"kind": "contains",
|
|
59
|
-
"file": "
|
|
56
|
+
"file": "{{task.dir}}/report.md",
|
|
60
57
|
"pattern": "conflict|differs|doesn.t match|discrepan|disagree",
|
|
61
58
|
"flags": "i",
|
|
62
59
|
"label": "the tree conflict is surfaced"
|
|
63
60
|
},
|
|
64
61
|
{
|
|
65
62
|
"kind": "contains",
|
|
66
|
-
"file": "
|
|
63
|
+
"file": "{{task.dir}}/report.md",
|
|
67
64
|
"pattern": "\\?",
|
|
68
65
|
"label": "follow-up questions are real questions"
|
|
69
66
|
}
|
|
70
|
-
]
|
|
67
|
+
],
|
|
68
|
+
"artifact": true
|
|
71
69
|
}
|
|
72
70
|
],
|
|
73
71
|
"checks": [
|
|
@@ -83,7 +81,7 @@
|
|
|
83
81
|
},
|
|
84
82
|
"rubric": {
|
|
85
83
|
"artifact": {
|
|
86
|
-
"path": "
|
|
84
|
+
"path": "{{task.dir}}/report.md",
|
|
87
85
|
"kind": "markdown"
|
|
88
86
|
},
|
|
89
87
|
"axes": [
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"prompt": "cutlist is ready — can you asemble the rough cut with the fake pipeline thats wired up and check it came out right?",
|
|
9
9
|
"setup": {
|
|
10
10
|
"projectName": "Video Workshop — Rough Cut Eval",
|
|
11
|
-
"about": "Self-contained eval project for rough-cut-assembly. The cut list is cutlist.json and the clip index is media/index.json (durations in seconds). The fake media-assembly pipeline is the ready-made mock-probe project script: it validates the cutlist, writes the stub render to renders/rough-cut.mp4, and writes its run log to renders/assembly-log.json. The run report goes to
|
|
12
|
-
"missionObjectives": "Use the Rough Cut Assembly craftbook/template, pre-flight cutlist.json against media/index.json, run the assembly through the provided mock-probe script, and verify the log against the expected duration in
|
|
11
|
+
"about": "Self-contained eval project for rough-cut-assembly. The cut list is cutlist.json and the clip index is media/index.json (durations in seconds). The fake media-assembly pipeline is the ready-made mock-probe project script: it validates the cutlist, writes the stub render to renders/rough-cut.mp4, and writes its run log to renders/assembly-log.json. The run report goes to report.md in this task's own artifacts working folder.",
|
|
12
|
+
"missionObjectives": "Use the Rough Cut Assembly craftbook/template, pre-flight cutlist.json against media/index.json, run the assembly through the provided mock-probe script, and verify the log against the expected duration in report.md in this task's own artifacts working folder. No real media tools, services, or credentials — only the wired fake pipeline.",
|
|
13
13
|
"files": [
|
|
14
14
|
{
|
|
15
15
|
"path": "cutlist.json",
|
|
@@ -23,9 +23,6 @@
|
|
|
23
23
|
"worker": {
|
|
24
24
|
"name": "Daan",
|
|
25
25
|
"role": "Developer"
|
|
26
|
-
},
|
|
27
|
-
"craftbookParams": {
|
|
28
|
-
"workPath": "tasks/eval"
|
|
29
26
|
}
|
|
30
27
|
},
|
|
31
28
|
"mocks": [
|
|
@@ -40,7 +37,7 @@
|
|
|
40
37
|
}
|
|
41
38
|
],
|
|
42
39
|
"success": {
|
|
43
|
-
"summary": "The render and its status-ok log exist because the fake pipeline actually ran, the log's clips all come from the cutlist, and
|
|
40
|
+
"summary": "The render and its status-ok log exist because the fake pipeline actually ran, the log's clips all come from the cutlist, and report.md in this task's own artifacts working folder compares expected versus actual duration with real numbers.",
|
|
44
41
|
"deliverables": [
|
|
45
42
|
{
|
|
46
43
|
"path": "renders/rough-cut.mp4",
|
|
@@ -70,20 +67,20 @@
|
|
|
70
67
|
]
|
|
71
68
|
},
|
|
72
69
|
{
|
|
73
|
-
"path": "
|
|
70
|
+
"path": "{{task.dir}}/report.md",
|
|
74
71
|
"kind": "markdown-report",
|
|
75
72
|
"minBytes": 600,
|
|
76
73
|
"checks": [
|
|
77
74
|
{
|
|
78
75
|
"kind": "contains",
|
|
79
|
-
"file": "
|
|
76
|
+
"file": "{{task.dir}}/report.md",
|
|
80
77
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
81
78
|
"flags": "i",
|
|
82
79
|
"artifact": true
|
|
83
80
|
},
|
|
84
81
|
{
|
|
85
82
|
"kind": "contains",
|
|
86
|
-
"file": "
|
|
83
|
+
"file": "{{task.dir}}/report.md",
|
|
87
84
|
"pattern": "duration",
|
|
88
85
|
"flags": "i",
|
|
89
86
|
"label": "the report talks about duration",
|
|
@@ -91,7 +88,7 @@
|
|
|
91
88
|
},
|
|
92
89
|
{
|
|
93
90
|
"kind": "contains",
|
|
94
|
-
"file": "
|
|
91
|
+
"file": "{{task.dir}}/report.md",
|
|
95
92
|
"pattern": "expected|actual",
|
|
96
93
|
"flags": "i",
|
|
97
94
|
"label": "expected versus actual is stated",
|
|
@@ -99,7 +96,7 @@
|
|
|
99
96
|
},
|
|
100
97
|
{
|
|
101
98
|
"kind": "judge",
|
|
102
|
-
"file": "
|
|
99
|
+
"file": "{{task.dir}}/report.md",
|
|
103
100
|
"rubric": "The report's segment count and duration figures match renders/assembly-log.json, the expected duration was computed from the cutlist before the run, and any mismatch is stated plainly rather than smoothed over.",
|
|
104
101
|
"sourceFiles": [
|
|
105
102
|
"renders/assembly-log.json",
|
|
@@ -115,7 +112,7 @@
|
|
|
115
112
|
},
|
|
116
113
|
"rubric": {
|
|
117
114
|
"artifact": {
|
|
118
|
-
"path": "
|
|
115
|
+
"path": "{{task.dir}}/report.md",
|
|
119
116
|
"kind": "markdown"
|
|
120
117
|
},
|
|
121
118
|
"axes": [
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"prompt": "the brief has felt noisy latly — can you audit the sources this month and tell me what to drop?",
|
|
9
9
|
"setup": {
|
|
10
10
|
"projectName": "Topic Watch — Source Audit Eval",
|
|
11
|
-
"about": "Self-contained eval project for source-quality-audit. The source roster is seeded at sources.json and the month's briefs sit under briefs/ as the evidence base; the deliverable is
|
|
12
|
-
"missionObjectives": "Use the Source Quality Audit craftbook/template, score every roster source against the month's briefs only, and write
|
|
11
|
+
"about": "Self-contained eval project for source-quality-audit. The source roster is seeded at sources.json and the month's briefs sit under briefs/ as the evidence base; the deliverable is report.md in this task's own artifacts working folder with the verdict table.",
|
|
12
|
+
"missionObjectives": "Use the Source Quality Audit craftbook/template, score every roster source against the month's briefs only, and write report.md in this task's own artifacts working folder. No live feeds, services, or outside data — the seeded briefs are the whole record.",
|
|
13
13
|
"files": [
|
|
14
14
|
{
|
|
15
15
|
"path": "sources.json",
|
|
@@ -35,30 +35,27 @@
|
|
|
35
35
|
"worker": {
|
|
36
36
|
"name": "Isa",
|
|
37
37
|
"role": "Editor"
|
|
38
|
-
},
|
|
39
|
-
"craftbookParams": {
|
|
40
|
-
"workPath": "tasks/eval"
|
|
41
38
|
}
|
|
42
39
|
},
|
|
43
40
|
"mocks": [],
|
|
44
41
|
"success": {
|
|
45
|
-
"summary": "
|
|
42
|
+
"summary": "report.md in this task's own artifacts working folder carries a verdict table covering all five roster sources, verdicts from the fixed set with cited evidence: The Daily Splash's corrections and Materials Weekly's silence both show up in their rows.",
|
|
46
43
|
"deliverables": [
|
|
47
44
|
{
|
|
48
|
-
"path": "
|
|
45
|
+
"path": "{{task.dir}}/report.md",
|
|
49
46
|
"kind": "markdown-report",
|
|
50
47
|
"minBytes": 900,
|
|
51
48
|
"checks": [
|
|
52
49
|
{
|
|
53
50
|
"kind": "contains",
|
|
54
|
-
"file": "
|
|
51
|
+
"file": "{{task.dir}}/report.md",
|
|
55
52
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
56
53
|
"flags": "i",
|
|
57
54
|
"artifact": true
|
|
58
55
|
},
|
|
59
56
|
{
|
|
60
57
|
"kind": "tableShape",
|
|
61
|
-
"file": "
|
|
58
|
+
"file": "{{task.dir}}/report.md",
|
|
62
59
|
"requiredColumns": [
|
|
63
60
|
"Source",
|
|
64
61
|
"Verdict"
|
|
@@ -68,7 +65,7 @@
|
|
|
68
65
|
},
|
|
69
66
|
{
|
|
70
67
|
"kind": "contains",
|
|
71
|
-
"file": "
|
|
68
|
+
"file": "{{task.dir}}/report.md",
|
|
72
69
|
"pattern": "keep",
|
|
73
70
|
"flags": "i",
|
|
74
71
|
"label": "verdicts use the fixed set — keep",
|
|
@@ -76,7 +73,7 @@
|
|
|
76
73
|
},
|
|
77
74
|
{
|
|
78
75
|
"kind": "contains",
|
|
79
|
-
"file": "
|
|
76
|
+
"file": "{{task.dir}}/report.md",
|
|
80
77
|
"pattern": "drop",
|
|
81
78
|
"flags": "i",
|
|
82
79
|
"label": "verdicts use the fixed set — drop",
|
|
@@ -84,7 +81,7 @@
|
|
|
84
81
|
},
|
|
85
82
|
{
|
|
86
83
|
"kind": "contains",
|
|
87
|
-
"file": "
|
|
84
|
+
"file": "{{task.dir}}/report.md",
|
|
88
85
|
"pattern": "Newsline",
|
|
89
86
|
"flags": "i",
|
|
90
87
|
"label": "every roster source covered — Newsline",
|
|
@@ -92,7 +89,7 @@
|
|
|
92
89
|
},
|
|
93
90
|
{
|
|
94
91
|
"kind": "contains",
|
|
95
|
-
"file": "
|
|
92
|
+
"file": "{{task.dir}}/report.md",
|
|
96
93
|
"pattern": "Capitol Wire",
|
|
97
94
|
"flags": "i",
|
|
98
95
|
"label": "every roster source covered — Capitol Wire",
|
|
@@ -100,7 +97,7 @@
|
|
|
100
97
|
},
|
|
101
98
|
{
|
|
102
99
|
"kind": "contains",
|
|
103
|
-
"file": "
|
|
100
|
+
"file": "{{task.dir}}/report.md",
|
|
104
101
|
"pattern": "Harbor Bulletin",
|
|
105
102
|
"flags": "i",
|
|
106
103
|
"label": "every roster source covered — Harbor Bulletin",
|
|
@@ -108,7 +105,7 @@
|
|
|
108
105
|
},
|
|
109
106
|
{
|
|
110
107
|
"kind": "contains",
|
|
111
|
-
"file": "
|
|
108
|
+
"file": "{{task.dir}}/report.md",
|
|
112
109
|
"pattern": "Daily Splash",
|
|
113
110
|
"flags": "i",
|
|
114
111
|
"label": "every roster source covered — The Daily Splash",
|
|
@@ -116,7 +113,7 @@
|
|
|
116
113
|
},
|
|
117
114
|
{
|
|
118
115
|
"kind": "contains",
|
|
119
|
-
"file": "
|
|
116
|
+
"file": "{{task.dir}}/report.md",
|
|
120
117
|
"pattern": "Materials Weekly",
|
|
121
118
|
"flags": "i",
|
|
122
119
|
"label": "every roster source covered — Materials Weekly",
|
|
@@ -124,7 +121,7 @@
|
|
|
124
121
|
},
|
|
125
122
|
{
|
|
126
123
|
"kind": "judge",
|
|
127
|
-
"file": "
|
|
124
|
+
"file": "{{task.dir}}/report.md",
|
|
128
125
|
"rubric": "Every verdict cites at least one concrete example from the month's briefs or explicitly notes the source went unused. The Daily Splash's repeated corrections and Materials Weekly's total silence are both reflected in their verdicts.",
|
|
129
126
|
"sourceFiles": [
|
|
130
127
|
"briefs/2026-06-05.md",
|
|
@@ -142,7 +139,7 @@
|
|
|
142
139
|
},
|
|
143
140
|
"rubric": {
|
|
144
141
|
"artifact": {
|
|
145
|
-
"path": "
|
|
142
|
+
"path": "{{task.dir}}/report.md",
|
|
146
143
|
"kind": "markdown"
|
|
147
144
|
},
|
|
148
145
|
"axes": [
|
|
@@ -23,14 +23,11 @@
|
|
|
23
23
|
"worker": {
|
|
24
24
|
"name": "Coby",
|
|
25
25
|
"role": "Event assistant"
|
|
26
|
-
},
|
|
27
|
-
"craftbookParams": {
|
|
28
|
-
"workPath": "tasks/eval"
|
|
29
26
|
}
|
|
30
27
|
},
|
|
31
28
|
"mocks": [],
|
|
32
29
|
"success": {
|
|
33
|
-
"summary": "letters/thank-you.md covers all seven givers and both helpers with personal detail each;
|
|
30
|
+
"summary": "letters/thank-you.md covers all seven givers and both helpers with personal detail each; report.md in this task's own artifacts working folder states the coverage count with notes tracked.",
|
|
34
31
|
"deliverables": [
|
|
35
32
|
{
|
|
36
33
|
"path": "letters/thank-you.md",
|
|
@@ -86,19 +83,19 @@
|
|
|
86
83
|
]
|
|
87
84
|
},
|
|
88
85
|
{
|
|
89
|
-
"path": "
|
|
86
|
+
"path": "{{task.dir}}/report.md",
|
|
90
87
|
"kind": "markdown-report",
|
|
91
88
|
"minBytes": 600,
|
|
92
89
|
"checks": [
|
|
93
90
|
{
|
|
94
91
|
"kind": "contains",
|
|
95
|
-
"file": "
|
|
92
|
+
"file": "{{task.dir}}/report.md",
|
|
96
93
|
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
97
94
|
"artifact": true
|
|
98
95
|
},
|
|
99
96
|
{
|
|
100
97
|
"kind": "contains",
|
|
101
|
-
"file": "
|
|
98
|
+
"file": "{{task.dir}}/report.md",
|
|
102
99
|
"pattern": "sent|tracked",
|
|
103
100
|
"flags": "i",
|
|
104
101
|
"label": "tracking state recorded",
|
|
@@ -106,7 +103,7 @@
|
|
|
106
103
|
},
|
|
107
104
|
{
|
|
108
105
|
"kind": "contains",
|
|
109
|
-
"file": "
|
|
106
|
+
"file": "{{task.dir}}/report.md",
|
|
110
107
|
"pattern": "9|nine",
|
|
111
108
|
"flags": "i",
|
|
112
109
|
"label": "coverage count stated",
|