(payload)
| 313 | } |
| 314 | |
| 315 | function renderWorkflowGuidePayload(payload) { |
| 316 | const guide = ensureWorkflowPayload(payload); |
| 317 | |
| 318 | return [ |
| 319 | `# Plugin Eval Start Here: ${guide.target.name}`, |
| 320 | "", |
| 321 | section("At a Glance", [ |
| 322 | `- Recommended path: ${guide.startHere.label}`, |
| 323 | `- Benchmark config present: ${guide.workflowStatus.hasBenchmarkConfig ? "yes" : "no"}`, |
| 324 | `- Usage log present: ${guide.workflowStatus.hasUsageLog ? "yes" : "no"}`, |
| 325 | `- Quick local entrypoint: \`${guide.startHere.startCommand}\``, |
| 326 | `- First local command: \`${guide.startHere.firstCommand}\``, |
| 327 | ]), |
| 328 | "", |
| 329 | section("Why It Matters", [ |
| 330 | `- ${guide.beginnerSummary}`, |
| 331 | `- ${guide.startHere.routingExplanation}`, |
| 332 | ]), |
| 333 | "", |
| 334 | section("Fix First", ["- Start with the recommended path before branching into secondary workflows."]), |
| 335 | "", |
| 336 | section("Recommended Next Step", renderNextAction(guide.nextAction)), |
| 337 | "", |
| 338 | section("Details", [ |
| 339 | detailsBlock( |
| 340 | "Full local sequence", |
| 341 | guide.startHere.commands.map((command) => `- ${command}`).join("\n"), |
| 342 | ), |
| 343 | detailsBlock( |
| 344 | "Other chat requests", |
| 345 | guide.entrypoints |
| 346 | .map((entry) => `- ${entry.label}: "${entry.chatPrompt}" -> ${entry.firstCommand}`) |
| 347 | .join("\n"), |
| 348 | ), |
| 349 | ]), |
| 350 | ].join("\n"); |
| 351 | } |
| 352 | |
| 353 | function renderBudgetExplanation(payload) { |
| 354 | const budgetPayload = ensureBudgetPayload(payload); |
no test coverage detected