[rig-tasks] Daily rig evaluation — 2026-09-01 — 10/10 passed
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 74/100
- Issue-Typ
- Dokumentation
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- typescript
- Bereich
- developer-experience, documentation
Rechercherichtung
Beginne mit der Tabelle der häufigsten Entscheidungen und dem Abschnitt zur Schnellreferenz in SKILL.md und vergleiche sie anschließend mit den Workflow-Metadatenanforderungen und den Ergebnissen zu den Prompt-Helfern in diesem Issue. Dokumentiere die Workflow-Metadatenanforderungen, das body({ call })-Muster, Agent-Prompts ohne undefined sowie p.readOptional mit einem Fallback. Als erledigt gilt die Aufgabe, wenn die aufgeführten Lücken mit prägnanten Beispielen abgedeckt sind und die bestehende Referenz konsistent bleibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
| Task | Description | Kind | Typecheck | Key finding |
|---|---|---|---|---|
| 1 (reused) | Dockerfile ENV inspector | agent | ✅ pass | Clean use of async defineTool + node:fs/promises readFile with dual regex for KEY=VALUE and KEY VALUE forms |
| 2 (reused) | NPM script prefix analyzer | agent | ✅ pass | as const on return values correctly preserves literal types for s.enum comparison |
| 3 (reused) | INI config file parser | agent | ✅ pass | p.readInput correctly used with caller-supplied s.object input; tool parses sections/key-value cleanly |
| 4 (reused) | Git reflog inspector | agent | ✅ pass | steering() addon appropriate for classification task; fallback ` |
| 5 (reused) | Source line length auditor | agent | ✅ pass | Good use of find with p.bash + async defineTool; s.optional(s.string) for mostVerboseFile is correct |
| 6 (reused) | NPM script dep workflow | workflow | ✅ pass | Initial errors: call incorrectly imported from "rig" (not exported), meta missing description, call(agent, undefined) not valid — all fixed |
| 7 (new) | HTML form field extractor | agent | ✅ pass | Initial error: exactOptionalPropertyTypes requires explicit conditional assignment for optional fields rather than assigning undefined; fixed with guarded push pattern |
| 8 (new) | Dotenv template validator | agent | ✅ pass | p.readOptional with empty string fallback is idiomatic; steering() appropriate for comparison/decision tasks |
| 9 (new) | TypeScript namespace usage reporter | agent | ✅ pass | p.glob + per-file async defineTool is the correct fan-out pattern; augmentation detection via declare module/namespace regex is precise |
| 10 (new) | Multi-stage artifact pipeline | workflow | ✅ pass | Initial errors: same call import issue + missing meta.description as task 6; fixed using body: async ({ call }) => destructuring and TypeScript-owned result assembly |
Problems encountered
Task 6 — NPM script dep workflow (initial failures)
What the code tried to do: A workflow() with two sequential agent calls passing structured output from scriptGraphBuilder to cycleDetector.
Errors:
error TS2305: Module '"rig"' has no exported member 'call'.
error TS2769: Property 'description' is missing in type '{ name: string; }' but required in type 'WorkflowMeta'.
error TS2345: Argument of type 'undefined' is not assignable to parameter of type 'string | PromptIntent | PromptBuilder'.
Root cause: Three distinct mistakes:
callis not exported from"rig"— it is destructured from thebody({ call })parameter or imported from"rig/globals".workflow({ meta: { name } })requires adescriptionfield inWorkflowMeta.call(agent, undefined)is not valid — agents always receive a string prompt or typed input.
Fix: Used body: async ({ call }) => destructuring, added description to meta, passed a string prompt to agents.
Task 7 — HTML form field extractor (initial failure)
What the code tried to do: Push objects with optional name/id fields by assigning undefined values.
Errors:
error TS2379: exactOptionalPropertyTypes: 'string | undefined' is not assignable to type 'string'.
Root cause: With exactOptionalPropertyTypes: true, assigning undefined to an optional field that expects only string is rejected. The fix is to conditionally include the property only when the value is defined.
Fix: Build the entry object without optional fields, then conditionally assign them.
Task 10 — Multi-stage artifact pipeline (initial failures)
Same call import and meta.description errors as task 6. Fixed identically.
Improvement opportunities
Missing or undiscoverable schema helpers (s.*)
No missing helpers this run. The existing set (s.object, s.record, s.array, s.enum, s.optional, s.path, s.int, s.number, s.boolean, s.string) covered all needs.
Missing or undiscoverable prompt helpers (p.*)
p.readOptional with an empty-string fallback (task 8) is not clearly documented in SKILL.md's quick reference table. Consider adding it as a distinct row: p.readOptional(path, fallback?) — currently documented only in the focused reference.
Error message quality
The exactOptionalPropertyTypes error (TS2379) is confusing because it mentions a parameter type mismatch rather than naming the root cause directly. The fix (conditional assignment) is non-obvious from the error text alone.
The call import error (TS2305: Module '"rig"' has no exported member 'call') is clear, but nothing in the error guides toward the correct body({ call }) destructuring pattern. A short comment in SKILL.md would prevent this.
API ergonomics
calldiscoverability: The most common workflow mistake isimport { call } from "rig". SKILL.md's composition rule could add a note: "callis available viabody({ call })destructuring — do not import it from"rig"."workflowmeta requirement:descriptionbeing required inWorkflowMetais not called out in the high-frequency decisions table. A brief reminder alongside theworkflow()row would prevent the error.call(agent, undefined)vscall(agent, string): It is unclear from the table that agents always require a non-null prompt. Noting "pass a string prompt or typed input; neverundefined" would help.
Candidate lint rules
Rule: no-rig-call-import
- Invalid:
import { agent, call } from "rig"; - Valid:
body: async ({ call }) => { ... }orimport { call } from "rig/globals"; - Why model-confusing:
calllooks like a plain function export given howagentandworkfloware imported. The destructuring pattern is non-obvious without reading the full reference. - Safe autofix: possible — remove
callfrom the"rig"import and addimport { call } from "rig/globals"as a fallback (with a comment to prefer destructuring insidebody).
Documentation gaps
- SKILL.md high-frequency decisions table should add:
workflow meta→ must include bothnameanddescription. - SKILL.md should note that
callinsideworkflow.bodyis always obtained via destructuring, not via import. p.readOptionaldeserves a row in the quick-reference table with an example fallback value.
Tasks run today
- (reused) Dockerfile ENV instruction parser
- (reused) NPM script command prefix analyzer
- (reused) INI config file parser
- (reused) Git reflog inspector
- (reused) Source file line length auditor
- (reused) NPM script dependency workflow
- (new) HTML form field extractor
- (new) Dotenv template validator
- (new) TypeScript namespace usage reporter
- (new) Multi-stage build artifact pipeline
Generated by Daily Rig Task Generator · sonnet46 164.3 AIC · ⌖ 9.36 AIC · ⊞ 6.8K · ◷
- Vorherrschende Sprache
- TypeScript
- Sterne
- 13
- Forks
- 0
- Ø Merge
- 1 T. 5 Std.
- Gemergte PRs (30 T.)
- 25
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus githubnext/rig
-
[aw] Upgrade available Offenagentic-workflows
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 70/100
githubnext/rig#533 ·
-
[aw] Upgrade available Offenagentic-workflows
githubnext/rig#534 ·
-
[aw] Detection Runs Offenagentic-workflows
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 1/100
githubnext/rig#500 · 4 Kommentare ·
-
[aw] No-Op Runs Offenagentic-workflows
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 1/100
githubnext/rig#333 · 31 Kommentare ·
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
-
calcite-components needs triage refactor
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Esri/calcite-design-system#15203 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 90/100
danielmiessler/LifeOS#2218 ·