Receber por email
← Voltar para o catálogo

verify-output

Pattern for verifying your output matches required schema before completing. Use before writing final output to ensure validity.

367estrelas
Atualizado há 4 meses

Ver no GitHub ↗

Como adicionar

/plugin marketplace add aiskillstore/marketplace

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/verify-output/svg)](https://www.skillteca.com.br/skills/verify-output)

Skills relacionadas

Ver todas de Segurança →

Alerta por categoria

Receba novas skills de Segurança toda segunda

1 email curto, só com as skills novas de Segurança. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Verify Output Skill

Pattern for ensuring outputs match required schemas using automated validation.

When to Use

  • Before writing final output file
  • After completing a task
  • When producing structured JSON output

Quick Reference

Validate before writing:

./scripts/validate.sh <schema_name> <file_path>

Available Schemas

| Schema | Used By | Output Path | |--------|---------|-------------| | demand | PM | memory/reports/demand.json | | design | Architect | memory/reports/designs/.json | | task-output | Implementer | memory/tasks//output.json | | verification | Verifier | memory/tasks//verification.json | | reflection | Reflector | memory/reflections/.json | | evolution-proposal | Evolver | memory/evolution/.json | | contract | Executor | memory/contracts/.json |

Validation Process

Step 1: Determine Your Schema

Based on your agent role:

PM agent          → demand.schema.json
Architect agent   → design.schema.json
Implementer agent → task-output.schema.json
Verifier agent    → verification.schema.json
Reflector agent   → reflection.schema.json
Evolver agent     → evolution-proposal.schema.json

Step 2: Write Output to Temp Location

Write(memory/tasks/{id}/output.json.tmp, content)

Step 3: Validate

./scripts/validate.sh task-output memory/tasks/{id}/output.json.tmp

Step 4: If Valid, Move to Final Location

mv memory/tasks/{id}/output.json.tmp memory/tasks/{id}/output.json

Step 5: If Invalid, Fix and Retry

Common validation errors and fixes:

| Error | Fix | |-------|-----| | 'X' is a required property | Add the missing field | | 'Y' is not one of ['a', 'b'] | Use valid enum value | | 'Z' is not of type 'array' | Wrap value in array: [value] | | Additional properties not allowed | Remove extra fields |

Output Format: Compact JSON

All agent outputs MUST be compact JSON (single line, no extra whitespace):

{"task_id":"001","status":"pre_complete","knowledge_updates":[],"reflection":{"what_worked":[],"what_failed":[],"patterns_noticed":[]}}

Mandatory Fields (All Agents)

Every output MUST include:

{"knowledge_updates":[{"category":"codebase","content":"string","confidence":"certain"}],"reflection":{"what_worked":["string"],"what_failed":["string"],"patterns_noticed":["string"]}}

Or empty arrays if no updates:

{"knowledge_updates":[],"reflection":{"what_worked":[],"what_failed":[],"patterns_noticed":[]}}

Valid values:

  • category: "codebase" | "convention" | "decision" | "gotcha"
  • confidence: "certain" | "likely" | "uncertain"

Pre-Write Validation Pattern

Recommended pattern for agents:

1. Construct output object in memory
2. Write to {output_path}.tmp
3. Run: ./scripts/validate.sh {schema} {output_path}.tmp
4. IF validation passes:
     → mv {output_path}.tmp {output_path}
     → Log: "Output validated and written"
5. ELSE:
     → Read validation errors
     → Fix output object
     → Retry from step 2
     → Max 3 retries, then report validation failure

Common Mistakes

  • Forgetting knowledge_updates (even if empty array)
  • Forgetting reflection fields
  • Using invalid enum values (check schema for allowed values)
  • Missing required nested fields
  • Wrong type (string instead of array, etc.)
  • Using YAML instead of JSON
  • Pretty-printing JSON (use compact format)

Principles

  1. Validate before write - Never output invalid data
  2. Schema is law - Missing fields = rejection by executor
  3. Empty is valid - "knowledge_updates":[] is okay
  4. Fail fast - Catch errors before they propagate
  5. Compact JSON - Single line, no formatting
Compartilhar X LinkedIn