@bendyline/gilde 0.1.57 → 0.1.59
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/ba/backup-routine/versions/1.0.4/craftbook.json +0 -16
- package/data/craftbook-templates/bo/booking-automation/versions/1.0.3/craftbook.json +0 -16
- package/data/craftbook-templates/ch/character-turnaround/versions/1.0.3/test.json +7 -10
- package/data/craftbook-templates/co/content-deck/versions/1.2.4/craftbook.json +4 -4
- package/data/craftbook-templates/co/content-deck/versions/1.2.4/test.json +3 -0
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.4/craftbook.json +4 -4
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.4/test.json +3 -0
- package/data/craftbook-templates/da/data-export-migrate/versions/1.0.4/craftbook.json +0 -16
- package/data/craftbook-templates/db/db-index-tuning/versions/1.0.4/craftbook.json +0 -16
- package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.4/craftbook.json +0 -16
- package/data/craftbook-templates/do/doc-rewrite/versions/1.0.3/test.json +3 -6
- package/data/craftbook-templates/do/dockerize-app/versions/1.0.4/craftbook.json +0 -16
- package/data/craftbook-templates/ed/edit-notes/versions/1.0.3/test.json +5 -8
- package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.4/craftbook.json +0 -16
- 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/index.json +1 -1
- 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/monitor-and-alert/versions/1.0.3/craftbook.json +0 -16
- package/data/craftbook-templates/mo/morning-report/versions/1.0.3/test.json +14 -17
- package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.4/craftbook.json +314 -0
- package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.4/test.json +89 -0
- 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/po/powerpoint-deck/versions/1.7.10/craftbook.json +581 -0
- package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.10/test.json +240 -0
- 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/pr/price-tracker/versions/1.0.3/craftbook.json +0 -8
- 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/re/recurring-invoice-run/versions/1.0.4/craftbook.json +0 -16
- package/data/craftbook-templates/re/report-pdf/versions/1.1.4/craftbook.json +315 -0
- package/data/craftbook-templates/re/report-pdf/versions/1.1.4/test.json +101 -0
- package/data/craftbook-templates/re/research-to-document/versions/1.2.4/craftbook.json +386 -0
- package/data/craftbook-templates/re/research-to-document/versions/1.2.4/test.json +242 -0
- 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/sq/sql-analysis/versions/1.0.3/craftbook.json +0 -8
- 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
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "report-pdf",
|
|
3
|
+
"name": "Formatted PDF Report",
|
|
4
|
+
"description": "Produce a polished PDF report without turning the work into a web-development project. The workflow locks the audience, source facts, section order, and acceptance criteria; a copywriter writes the full source as ordinary Markdown in {{sourceOutputPath}}; then the same content specialist uses DocBlocks to convert the Markdown directly to PDF, preview the pages, repair the source if needed, and save {{workPath}}/report.pdf in the project's artifacts drawer.\n\nThe source of truth remains {{sourceOutputPath}}. HTML, CSS, browser print APIs, hand-built PDF syntax, and raw binary writes are explicitly out of scope. The DocBlocks toolset is pre-authorized for the active craftbook, so a Developer is not needed merely to format or export the report.\n\nWorking files under {{workPath}}/, reviews/, and reports/ live in the project artifacts drawer and must be read and written with the artifact tools. User-facing source files remain in the workspace.\n\nPreview review checks content and available rendered evidence. Reconstructed Office/PDF views do not prove native layout; a media thumbnail does not prove full playback. The final handoff states these review limits.",
|
|
5
|
+
"entryStepId": "outline",
|
|
6
|
+
"triggers": [
|
|
7
|
+
"formatted report",
|
|
8
|
+
"make a pdf report",
|
|
9
|
+
"create a pdf",
|
|
10
|
+
"export this report to pdf",
|
|
11
|
+
"quarterly report",
|
|
12
|
+
"printable document",
|
|
13
|
+
"report with cover page"
|
|
14
|
+
],
|
|
15
|
+
"toolsets": [
|
|
16
|
+
{
|
|
17
|
+
"toolsetId": "docblocks",
|
|
18
|
+
"sourceId": "bundled",
|
|
19
|
+
"autoAllow": true,
|
|
20
|
+
"reason": "convert {{sourceOutputPath}} directly to PDF, preview the rendered pages, and save the finished file without a prompt per call"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"paramSchema": {
|
|
24
|
+
"type": "object",
|
|
25
|
+
"properties": {
|
|
26
|
+
"workPath": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"title": "Working folder",
|
|
29
|
+
"description": "Per-task working folder in the artifacts drawer. Defaults to this task's own folder so runs never collide; override with a stable name when you deliberately want runs to share files.",
|
|
30
|
+
"default": "{{task.dir}}"
|
|
31
|
+
},
|
|
32
|
+
"sourceOutputPath": {
|
|
33
|
+
"type": "string",
|
|
34
|
+
"title": "Editable source path",
|
|
35
|
+
"description": "Workspace-relative Markdown source path. The default keeps each task separate; choose an existing path only when intentionally revising it.",
|
|
36
|
+
"default": "pdf/task-{{task.num}}/report.md"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"steps": [
|
|
41
|
+
{
|
|
42
|
+
"id": "outline",
|
|
43
|
+
"name": "Outline the report",
|
|
44
|
+
"description": "Lock the audience, source facts, section order, and acceptance criteria.",
|
|
45
|
+
"prompt": "Plan the report before writing it. 1. Identify the audience, the decision or takeaway the report must support, and every source file or user-provided fact the report may use. 2. Lock the section order: title block, executive summary, body sections, recommendations/conclusion, and appendix or references when needed. 3. For each body section, state its purpose and the facts, figures, or tables it must contain; never invent a missing metric. 4. Decide whether the user requested Letter or A4 pages. 5. Write a numbered acceptance checklist that includes source fidelity, complete section coverage, a stand-alone executive summary, captioned/referenced tables or figures, explicit recommendations, and a real saved PDF in the artifacts drawer. Write the outline and checklist to {{workPath}}/outline.md and call write_task_note with the audience, page size, and section count. Do not write HTML, CSS, or body prose.\n\nStore `{{workPath}}/outline.md` in the artifacts drawer with `write_artifact`, then verify it with `read_artifact`; do not write this working file to the workspace.\n\nRead an exact workspace DOCX, PPTX, PDF, or XLSX source with `read_doc_as_markdown`; use `read_file` for text or Markdown. Keep the original file path in citations. Never interpret binary bytes as text or substitute a similarly named file.",
|
|
46
|
+
"suggestedRole": "planner",
|
|
47
|
+
"advanceWhen": {
|
|
48
|
+
"file": "{{workPath}}/outline.md",
|
|
49
|
+
"minBytes": 1,
|
|
50
|
+
"sniff": "nonempty",
|
|
51
|
+
"artifact": true
|
|
52
|
+
},
|
|
53
|
+
"gate": {
|
|
54
|
+
"at": "completion",
|
|
55
|
+
"checks": [
|
|
56
|
+
{
|
|
57
|
+
"kind": "minBytes",
|
|
58
|
+
"file": "{{workPath}}/outline.md",
|
|
59
|
+
"bytes": 180,
|
|
60
|
+
"artifact": true
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"kind": "sniff",
|
|
64
|
+
"file": "{{workPath}}/outline.md",
|
|
65
|
+
"sniff": "nonempty",
|
|
66
|
+
"artifact": true
|
|
67
|
+
}
|
|
68
|
+
],
|
|
69
|
+
"onReject": "outline",
|
|
70
|
+
"maxAttempts": 3
|
|
71
|
+
},
|
|
72
|
+
"next": "write",
|
|
73
|
+
"toolPolicy": {
|
|
74
|
+
"disallowToolsets": [
|
|
75
|
+
"docblocks"
|
|
76
|
+
],
|
|
77
|
+
"disallowBuiltinToolsets": [
|
|
78
|
+
"ai-apps",
|
|
79
|
+
"archives",
|
|
80
|
+
"audio",
|
|
81
|
+
"browser-automation",
|
|
82
|
+
"code-execution",
|
|
83
|
+
"craftbooks",
|
|
84
|
+
"data-tables",
|
|
85
|
+
"entity-intel",
|
|
86
|
+
"git",
|
|
87
|
+
"image-intel",
|
|
88
|
+
"images",
|
|
89
|
+
"role-delegation",
|
|
90
|
+
"role-delegation-escalation",
|
|
91
|
+
"security-intel",
|
|
92
|
+
"team-management",
|
|
93
|
+
"videos",
|
|
94
|
+
"web",
|
|
95
|
+
"workspace-fs-write"
|
|
96
|
+
],
|
|
97
|
+
"outputMedium": "artifact",
|
|
98
|
+
"additionalOutputMedia": [
|
|
99
|
+
"task-note"
|
|
100
|
+
]
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"id": "write",
|
|
105
|
+
"name": "Write the Markdown report",
|
|
106
|
+
"description": "Write the complete {{sourceOutputPath}} source to the locked outline.",
|
|
107
|
+
"prompt": "Write the complete report to {{sourceOutputPath}} as ordinary Markdown. Follow {{workPath}}/outline.md exactly: 1. Start with one H1 title and a short metadata block for author/date when known. 2. Write a concise executive summary that stands alone. 3. Write every body section in order with clear H2/H3 headings and real prose grounded only in the supplied sources. 4. Use Markdown tables for structured comparisons and Markdown images only for existing, workspace-readable assets; give every table or figure a caption and refer to it in the prose. 5. End with the explicit recommendations/conclusion and any references or appendix from the outline. 6. Check every acceptance criterion and repair the Markdown before advancing. Do not create report.html, CSS, OOXML, or PDF bytes yourself. Call write_task_note with the {{sourceOutputPath}} path, word count, and section count.\n\nOpen `{{workPath}}/outline.md` from the artifacts drawer with `read_artifact` before working.",
|
|
108
|
+
"suggestedRole": "copywriter",
|
|
109
|
+
"consumes": [
|
|
110
|
+
{
|
|
111
|
+
"file": "{{workPath}}/outline.md",
|
|
112
|
+
"artifact": true
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
"advanceWhen": {
|
|
116
|
+
"file": "{{sourceOutputPath}}",
|
|
117
|
+
"minBytes": 1,
|
|
118
|
+
"sniff": "nonempty"
|
|
119
|
+
},
|
|
120
|
+
"gate": {
|
|
121
|
+
"at": "completion",
|
|
122
|
+
"checks": [
|
|
123
|
+
{
|
|
124
|
+
"kind": "minBytes",
|
|
125
|
+
"file": "{{sourceOutputPath}}",
|
|
126
|
+
"bytes": 1000
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"kind": "contains",
|
|
130
|
+
"file": "{{sourceOutputPath}}",
|
|
131
|
+
"pattern": "(?:^|\\n)#\\s+\\S",
|
|
132
|
+
"label": "an H1 report title"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"kind": "contains",
|
|
136
|
+
"file": "{{sourceOutputPath}}",
|
|
137
|
+
"pattern": "(?:^|\\n)##\\s+\\S",
|
|
138
|
+
"label": "at least one report section"
|
|
139
|
+
}
|
|
140
|
+
],
|
|
141
|
+
"onReject": "write",
|
|
142
|
+
"maxAttempts": 4
|
|
143
|
+
},
|
|
144
|
+
"next": "publish",
|
|
145
|
+
"toolPolicy": {
|
|
146
|
+
"disallowToolsets": [
|
|
147
|
+
"docblocks"
|
|
148
|
+
],
|
|
149
|
+
"disallowBuiltinToolsets": [
|
|
150
|
+
"ai-apps",
|
|
151
|
+
"archives",
|
|
152
|
+
"audio",
|
|
153
|
+
"browser-automation",
|
|
154
|
+
"code-execution",
|
|
155
|
+
"craftbooks",
|
|
156
|
+
"data-tables",
|
|
157
|
+
"entity-intel",
|
|
158
|
+
"git",
|
|
159
|
+
"image-intel",
|
|
160
|
+
"images",
|
|
161
|
+
"role-delegation",
|
|
162
|
+
"role-delegation-escalation",
|
|
163
|
+
"security-intel",
|
|
164
|
+
"team-management",
|
|
165
|
+
"videos",
|
|
166
|
+
"web"
|
|
167
|
+
],
|
|
168
|
+
"outputMedium": "workspace",
|
|
169
|
+
"additionalOutputMedia": [
|
|
170
|
+
"task-note"
|
|
171
|
+
]
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"id": "publish",
|
|
176
|
+
"name": "Publish the PDF",
|
|
177
|
+
"description": "Convert the approved source, inspect and preview it, and save the real binary deliverables with review evidence.",
|
|
178
|
+
"prompt": "Publish the approved Markdown as real binary files. 1. Call `list_roots` to identify the read-enabled workspace root and write-enabled artifacts root. If no write root exists, record the blocker. Read `{{workPath}}/outline.md` from the artifacts drawer with `read_artifact` and the approved `{{sourceOutputPath}}` from the workspace with `read_file`. 2. Call `convert_document` with source `{ \"kind\": \"file\", \"rootId\": <workspace root id>, \"path\": \"{{sourceOutputPath}}\" }` and `autoTemplates: true`. Use one PDF target with the Letter/A4 choice and title from the outline. Ordinary Markdown works with defaults; use discovery only to answer a specific style requirement. 3. Use each returned artifact URI with `inspect_document` and `preview_document`, passing source `{ \"kind\": \"artifact\", \"uri\": <returned URI> }`. Review content, tables, and any reported diagnostics; request at most four preview items at a time and paginate. Interpret `previewBasis` accurately. Office/PDF `reconstructed-import` previews show normalized content sections, not native pagination, fonts, clipping, or page breaks. Review all available sections with pagination and record this native-layout limit. Do not call these native page images or invent a native page count. An accurately disclosed preview limit alone does not fail content and saved-file checks. If content or source structure fails, write precise gaps to task notes and call `advance_task_step` with next `\"write\"`; do not edit the source during this publishing step. 4. Call `save_artifact` for `{{workPath}}/report.pdf` using the artifacts root and `ifExists: \"error\"`. For an existing output, inspect that saved file and use its `sourceSha256` as `expectedSha256` with `ifExists: \"replace\"`. Use only URIs returned by this session; reopen earlier saved binaries through file sources. Finally, write a task note with saved paths, hashes, available counts, diagnostics, preview basis, and review limits, then advance to evaluate. Never substitute HTML, renamed Markdown, or hand-written XML for the requested binary files.",
|
|
179
|
+
"suggestedRole": "copywriter",
|
|
180
|
+
"consumes": [
|
|
181
|
+
{
|
|
182
|
+
"file": "{{workPath}}/outline.md",
|
|
183
|
+
"artifact": true
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"file": "{{sourceOutputPath}}"
|
|
187
|
+
}
|
|
188
|
+
],
|
|
189
|
+
"advanceWhen": {
|
|
190
|
+
"file": "{{workPath}}/report.pdf",
|
|
191
|
+
"minBytes": 1,
|
|
192
|
+
"artifact": true
|
|
193
|
+
},
|
|
194
|
+
"gate": {
|
|
195
|
+
"at": "completion",
|
|
196
|
+
"checks": [
|
|
197
|
+
{
|
|
198
|
+
"kind": "minBytes",
|
|
199
|
+
"file": "{{workPath}}/report.pdf",
|
|
200
|
+
"bytes": 1000,
|
|
201
|
+
"artifact": true
|
|
202
|
+
}
|
|
203
|
+
],
|
|
204
|
+
"onReject": "publish",
|
|
205
|
+
"maxAttempts": 4
|
|
206
|
+
},
|
|
207
|
+
"next": "evaluate",
|
|
208
|
+
"toolPolicy": {
|
|
209
|
+
"disallowBuiltinToolsets": [
|
|
210
|
+
"ai-apps",
|
|
211
|
+
"archives",
|
|
212
|
+
"audio",
|
|
213
|
+
"browser-automation",
|
|
214
|
+
"code-execution",
|
|
215
|
+
"craftbooks",
|
|
216
|
+
"data-tables",
|
|
217
|
+
"entity-intel",
|
|
218
|
+
"git",
|
|
219
|
+
"image-intel",
|
|
220
|
+
"images",
|
|
221
|
+
"role-delegation",
|
|
222
|
+
"role-delegation-escalation",
|
|
223
|
+
"security-intel",
|
|
224
|
+
"team-management",
|
|
225
|
+
"videos",
|
|
226
|
+
"web",
|
|
227
|
+
"workspace-fs-write"
|
|
228
|
+
],
|
|
229
|
+
"outputMedium": "artifact",
|
|
230
|
+
"additionalOutputMedia": [
|
|
231
|
+
"task-note"
|
|
232
|
+
]
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
"id": "evaluate",
|
|
237
|
+
"name": "Evaluate",
|
|
238
|
+
"description": "Review saved-file integrity and content fidelity; document the limits of reconstructed or first-frame previews.",
|
|
239
|
+
"prompt": "Read `{{workPath}}/outline.md` from the artifacts drawer with `read_artifact` and the approved `{{sourceOutputPath}}` from the workspace with `read_file`. Read prior review/publishing evidence with `read_task_notes`. Call `list_roots` and reopen each saved binary in `{{workPath}}/report.pdf` with `inspect_document` and `preview_document`, using source `{ \"kind\": \"file\", \"rootId\": <artifacts root id>, \"path\": <saved path> }`. Artifact URIs from another session are not reusable. Confirm the binary opens, the supplied facts and requested content are preserved, section order and tables follow the approved source, and citations/next actions remain present. Interpret `previewBasis` accurately. Office/PDF `reconstructed-import` previews show normalized content sections, not native pagination, fonts, clipping, or page breaks. Review all available sections with pagination and record this native-layout limit. Do not call these native page images or invent a native page count. An accurately disclosed preview limit alone does not fail content and saved-file checks. Write PASS/FAIL per verifiable content and saved-file criterion, name exact gaps, and state any native-layout or playback property that remains unverified. If these checks pass, route to `finish`; for content/structure failures route to `write`; for conversion/save/copy failures with the source still approved route to `publish`. Never claim an unmet criterion passed. After three unproductive loops, record DONE_WITH_CONCERNS and the remaining gaps. On PASS, call `advance_task_step` with next: \"finish\". Use next: \"write\" only for an identified source-content failure, or next: \"publish\" for an identified conversion/save failure.",
|
|
240
|
+
"suggestedRole": "reviewer",
|
|
241
|
+
"consumes": [
|
|
242
|
+
{
|
|
243
|
+
"file": "{{workPath}}/outline.md",
|
|
244
|
+
"artifact": true
|
|
245
|
+
}
|
|
246
|
+
],
|
|
247
|
+
"next": "finish",
|
|
248
|
+
"toolPolicy": {
|
|
249
|
+
"disallowBuiltinToolsets": [
|
|
250
|
+
"ai-apps",
|
|
251
|
+
"archives",
|
|
252
|
+
"audio",
|
|
253
|
+
"browser-automation",
|
|
254
|
+
"code-execution",
|
|
255
|
+
"craftbooks",
|
|
256
|
+
"data-tables",
|
|
257
|
+
"entity-intel",
|
|
258
|
+
"git",
|
|
259
|
+
"image-intel",
|
|
260
|
+
"images",
|
|
261
|
+
"role-delegation",
|
|
262
|
+
"role-delegation-escalation",
|
|
263
|
+
"security-intel",
|
|
264
|
+
"team-management",
|
|
265
|
+
"videos",
|
|
266
|
+
"web",
|
|
267
|
+
"workspace-fs-write"
|
|
268
|
+
],
|
|
269
|
+
"outputMedium": "task-note"
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
"id": "finish",
|
|
274
|
+
"name": "Finish",
|
|
275
|
+
"description": "Deliver the saved files with the recorded review evidence and limits.",
|
|
276
|
+
"prompt": "Read the review evidence with `read_task_notes`. Write a concise DONE summary naming the editable Markdown source `{{sourceOutputPath}}` and the saved deliverables `{{workPath}}/report.pdf`. Include available native counts and the preview basis, and carry forward any native-layout or playback properties that remain unverified. Do not open binary files with `read_artifact` or claim an unavailable check passed.",
|
|
277
|
+
"suggestedRole": "copywriter",
|
|
278
|
+
"consumes": [
|
|
279
|
+
{
|
|
280
|
+
"file": "{{sourceOutputPath}}"
|
|
281
|
+
}
|
|
282
|
+
],
|
|
283
|
+
"terminal": true,
|
|
284
|
+
"toolPolicy": {
|
|
285
|
+
"disallowToolsets": [
|
|
286
|
+
"docblocks"
|
|
287
|
+
],
|
|
288
|
+
"disallowBuiltinToolsets": [
|
|
289
|
+
"ai-apps",
|
|
290
|
+
"archives",
|
|
291
|
+
"audio",
|
|
292
|
+
"browser-automation",
|
|
293
|
+
"code-execution",
|
|
294
|
+
"craftbooks",
|
|
295
|
+
"data-tables",
|
|
296
|
+
"entity-intel",
|
|
297
|
+
"git",
|
|
298
|
+
"image-intel",
|
|
299
|
+
"images",
|
|
300
|
+
"role-delegation",
|
|
301
|
+
"role-delegation-escalation",
|
|
302
|
+
"security-intel",
|
|
303
|
+
"team-management",
|
|
304
|
+
"videos",
|
|
305
|
+
"web",
|
|
306
|
+
"workspace-fs-write"
|
|
307
|
+
],
|
|
308
|
+
"outputMedium": "task-note"
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
],
|
|
312
|
+
"version": "1.1.4",
|
|
313
|
+
"releasedAt": "2026-09-07T01:00:00Z",
|
|
314
|
+
"minGezelVersion": "1.26233"
|
|
315
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"title": "Formatted PDF Report Markdown-source smoke eval",
|
|
4
|
+
"objective": "Verify that the report workflow produces a complete, source-grounded Markdown report before DocBlocks conversion; catalog contract tests cover the PDF toolset, artifact gate, and no-HTML routing.",
|
|
5
|
+
"tags": [
|
|
6
|
+
"corpus"
|
|
7
|
+
],
|
|
8
|
+
"prompt": "Read source/brief.md and write the complete report source to pdf/eval/report.md. Use Markdown headings and a compact metrics table. Include an executive summary and explicit recommendations. Do not create HTML.",
|
|
9
|
+
"setup": {
|
|
10
|
+
"projectName": "Formatted PDF Report Eval",
|
|
11
|
+
"about": "The report source is Markdown and will be converted to PDF by the DocBlocks production step.",
|
|
12
|
+
"missionObjectives": "Create a source-grounded pdf/eval/report.md that is ready for direct PDF conversion without HTML or CSS.",
|
|
13
|
+
"files": [
|
|
14
|
+
{
|
|
15
|
+
"path": "source/brief.md",
|
|
16
|
+
"content": "# Boreal Desk Returns Pilot\n\nAudience: operations leaders.\n\nFacts:\n- The pilot covered 18 SKUs.\n- Median first response improved from 18 hours to 6 hours.\n- Preventable refund leakage fell from 14.2% to 8.9%.\n- The top unresolved complaint is status silence after photo submission.\n- Required next actions: automated status emails, barcode-exception training, and a weekly Finance exception export.\n\nDo not invent other metrics."
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"worker": {
|
|
20
|
+
"name": "Jules",
|
|
21
|
+
"role": "Copywriter"
|
|
22
|
+
},
|
|
23
|
+
"craftbookParams": {
|
|
24
|
+
"sourceOutputPath": "pdf/eval/report.md"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"mocks": [],
|
|
28
|
+
"success": {
|
|
29
|
+
"summary": "pdf/eval/report.md is a complete Markdown source grounded in every supplied fact and ready for DocBlocks PDF conversion.",
|
|
30
|
+
"deliverables": [
|
|
31
|
+
{
|
|
32
|
+
"path": "pdf/eval/report.md",
|
|
33
|
+
"kind": "markdown-report",
|
|
34
|
+
"minBytes": 1000,
|
|
35
|
+
"checks": [
|
|
36
|
+
{
|
|
37
|
+
"kind": "contains",
|
|
38
|
+
"file": "pdf/eval/report.md",
|
|
39
|
+
"pattern": "(?:^|\\n)#\\s+.+",
|
|
40
|
+
"flags": "m"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"kind": "contains",
|
|
44
|
+
"file": "pdf/eval/report.md",
|
|
45
|
+
"pattern": "executive summary",
|
|
46
|
+
"flags": "i"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"kind": "contains",
|
|
50
|
+
"file": "pdf/eval/report.md",
|
|
51
|
+
"pattern": "18\\s+SKUs|18\\s+hours|6\\s+hours|14\\.2%|8\\.9%",
|
|
52
|
+
"flags": "i"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"kind": "contains",
|
|
56
|
+
"file": "pdf/eval/report.md",
|
|
57
|
+
"pattern": "automated status emails|barcode-exception training|weekly Finance exception export",
|
|
58
|
+
"flags": "i"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"kind": "contains",
|
|
62
|
+
"file": "pdf/eval/report.md",
|
|
63
|
+
"pattern": "recommend",
|
|
64
|
+
"flags": "i"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"kind": "notContains",
|
|
68
|
+
"file": "pdf/eval/report.md",
|
|
69
|
+
"pattern": "<html|<style|@page",
|
|
70
|
+
"flags": "i"
|
|
71
|
+
}
|
|
72
|
+
]
|
|
73
|
+
}
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
"rubric": {
|
|
77
|
+
"artifact": {
|
|
78
|
+
"path": "pdf/eval/report.md",
|
|
79
|
+
"kind": "markdown"
|
|
80
|
+
},
|
|
81
|
+
"axes": [
|
|
82
|
+
{
|
|
83
|
+
"name": "grounding",
|
|
84
|
+
"description": "Every metric and required action comes from the seeded brief."
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"name": "structure",
|
|
88
|
+
"description": "The Markdown has a clear title, executive summary, body sections, and recommendations."
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"name": "readiness",
|
|
92
|
+
"description": "The source is complete enough for direct DocBlocks conversion without an HTML intermediary."
|
|
93
|
+
}
|
|
94
|
+
]
|
|
95
|
+
},
|
|
96
|
+
"qualityFocus": [
|
|
97
|
+
"Markdown source quality",
|
|
98
|
+
"source grounding",
|
|
99
|
+
"no HTML intermediary"
|
|
100
|
+
]
|
|
101
|
+
}
|