← Files note Workspace|ROGNALIAARCHIVED FILE

skills/note-writer/references/schemas/article-package-input.schema.json

4.74 KB · Oct 4, 2026 · 12:33 UTC

↓ Download file

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "urn:rognalia:note-workspace:schema:article-package-input:1",
  "title": "note Workspace article package input",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "schema_version",
    "request_id",
    "article_id",
    "direction_source",
    "weekly_plan_week",
    "weekly_plan_path",
    "weekly_plan_revision",
    "weekly_plan_sha256",
    "weekly_record_type",
    "weekly_confirmed_by_user",
    "weekly_candidate_id",
    "topic",
    "audience",
    "purpose",
    "context_pack_path",
    "research_status",
    "research_sources",
    "interview_question_count",
    "approved_outline",
    "outline_approved",
    "tone",
    "tone_approved",
    "title_options",
    "selected_title",
    "note_tags",
    "x_post",
    "quality_gate_completed"
  ],
  "allOf": [
    {
      "if": {"properties": {"direction_source": {"const": "weekly_plan"}}},
      "then": {
        "properties": {
          "weekly_plan_week": {"type": "string"},
          "weekly_plan_path": {"type": "string"},
          "weekly_plan_revision": {"type": "integer"},
          "weekly_plan_sha256": {"type": "string"},
          "weekly_record_type": {"type": "string"},
          "weekly_confirmed_by_user": {"type": "boolean"},
          "weekly_candidate_id": {"type": "string"}
        }
      },
      "else": {
        "properties": {
          "weekly_plan_week": {"type": "null"},
          "weekly_plan_path": {"type": "null"},
          "weekly_plan_revision": {"type": "null"},
          "weekly_plan_sha256": {"type": "null"},
          "weekly_record_type": {"type": "null"},
          "weekly_confirmed_by_user": {"type": "null"},
          "weekly_candidate_id": {"type": "null"}
        }
      }
    },
    {
      "if": {"properties": {"research_status": {"const": "completed"}}},
      "then": {"properties": {"research_sources": {"minItems": 1}}},
      "else": {"properties": {"research_sources": {"maxItems": 0}}}
    }
  ],
  "properties": {
    "schema_version": {"const": 1},
    "request_id": {"type": "string", "pattern": "^[a-z0-9][a-z0-9._:-]{7,127}$"},
    "article_id": {"type": "string", "pattern": "^article-[a-z0-9][a-z0-9-]{2,63}$"},
    "direction_source": {"enum": ["weekly_plan", "user_request", "existing_draft"]},
    "weekly_plan_week": {"type": ["string", "null"], "pattern": "^[0-9]{4}-W[0-9]{2}$"},
    "weekly_plan_path": {"type": ["string", "null"], "pattern": "^plans/weekly/[0-9]{4}-W[0-9]{2}\\.md$"},
    "weekly_plan_revision": {"type": ["integer", "null"], "minimum": 1},
    "weekly_plan_sha256": {"type": ["string", "null"], "pattern": "^[0-9a-f]{64}$"},
    "weekly_record_type": {"enum": ["strategy_recommendation", "user_selection", null]},
    "weekly_confirmed_by_user": {"type": ["boolean", "null"]},
    "weekly_candidate_id": {
      "oneOf": [
        {"type": "null"},
        {"type": "string", "pattern": "^idea-[a-z0-9][a-z0-9-]{2,63}$"}
      ]
    },
    "topic": {"type": "string", "minLength": 1, "maxLength": 300},
    "audience": {"type": "string", "minLength": 1, "maxLength": 1000},
    "purpose": {"type": "string", "minLength": 1, "maxLength": 1000},
    "context_pack_path": {"type": "string", "pattern": "^context-packs/article-[a-z0-9][a-z0-9-]{2,63}\\.md$"},
    "research_status": {"enum": ["completed", "not_needed", "unavailable"]},
    "research_sources": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["title", "url", "retrieved_at"],
        "properties": {
          "title": {"type": "string", "minLength": 1, "maxLength": 500},
          "url": {"type": "string", "pattern": "^https?://"},
          "retrieved_at": {"type": "string", "format": "date-time", "minLength": 1, "maxLength": 100}
        }
      }
    },
    "interview_question_count": {"type": "integer", "minimum": 0, "maximum": 3},
    "approved_outline": {
      "type": "array",
      "minItems": 1,
      "maxItems": 20,
      "items": {"type": "string", "minLength": 1, "maxLength": 1000}
    },
    "outline_approved": {"const": true},
    "tone": {"type": "string", "minLength": 1, "maxLength": 500},
    "tone_approved": {"const": true},
    "title_options": {
      "type": "array",
      "minItems": 3,
      "maxItems": 3,
      "uniqueItems": true,
      "items": {"type": "string", "minLength": 1, "maxLength": 200}
    },
    "selected_title": {"type": "string", "minLength": 1, "maxLength": 200},
    "note_tags": {
      "type": "array",
      "minItems": 5,
      "maxItems": 6,
      "uniqueItems": true,
      "items": {"type": "string", "pattern": "^[^#\\s]{1,50}$"}
    },
    "x_post": {"type": "string", "minLength": 1, "maxLength": 1000},
    "quality_gate_completed": {"const": true}
  }
}

SHA-256: f9178731d9affff504745238829427b0c3fba994427082295b21dfb1c2997ebe