harb/tools/push3-evolution/seeds/manifest.schema.json
openhands 2aad9e98f1 fix: manifest.jsonl schema has no canonical machine-readable definition (#720)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 03:57:31 +00:00

45 lines
2 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "tools/push3-evolution/seeds/manifest.schema.json",
"title": "Push3 seed pool manifest entry",
"description": "Each line of manifest.jsonl must conform to this schema. The file is newline-delimited JSON (JSONL); validate one parsed object per non-empty line.",
"type": "object",
"required": ["file", "origin", "date"],
"additionalProperties": false,
"properties": {
"file": {
"type": "string",
"description": "Filename of the Push3 seed relative to the seeds/ directory (e.g. optimizer_v3.push3)."
},
"fitness": {
"type": ["integer", "null"],
"description": "Raw fitness score returned by the evaluator (wei-scale integer). null when the seed has not yet been evaluated."
},
"fitness_flags": {
"type": ["string", "null"],
"description": "Space-separated flags that qualify or invalidate the fitness value (e.g. token_value_inflation). null when no flags apply."
},
"origin": {
"type": "string",
"enum": ["hand-written", "evolved", "llm"],
"description": "How this seed was produced: hand-written by a developer, evolved by the evolutionary loop, or generated by an LLM."
},
"run": {
"type": ["string", "null"],
"description": "Zero-padded run identifier from which this seed was admitted (e.g. '007'). null for hand-written and llm seeds."
},
"generation": {
"type": ["integer", "null"],
"description": "Generation index within the run at which this candidate was produced. null for hand-written and llm seeds."
},
"date": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"description": "ISO 8601 date (YYYY-MM-DD) on which this entry was added to the manifest."
},
"note": {
"type": ["string", "null"],
"description": "Human-readable description of the seed strategy or noteworthy behaviour. null when no annotation is needed."
}
}
}