Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

create_question

Register a frozen question version in the durable journal.

Contract

Requires a resolvable contract with ordered timestamps. Structural validation does not prove the prose predicate is complete. Existing question/version keys cannot be overwritten.

Fields

FieldTypeRequired
op"create_question"Yes
questionQuestionYes

This operation needs no existing question or forecast. Use --memory for a calculation-only session.

Request

Send this object on one line. It is expanded below for readability.

{
  "version": 1,
  "id": "example",
  "command": {
    "op": "create_question",
    "question": {
      "id": "doc-launch",
      "version": 1,
      "proposition": "Release before timestamp 100",
      "opens_at": 0,
      "deadline": 100,
      "resolve_after": 110,
      "yes_rule": "Archive confirms release strictly before 100",
      "no_rule": "Complete archive confirms no qualifying release",
      "void_rule": "Archive permanently unavailable",
      "resolution_sources": [
        "official archive"
      ]
    }
  }
}

Response

This response is generated by executing the example against the current binary. Commit timestamps, when present, are shown as <runtime UTC seconds>; the actual protocol returns integer UTC seconds.

{
  "version": 1,
  "id": "example",
  "result": {
    "event": {
      "kind": "question",
      "question": {
        "deadline": 100,
        "id": "doc-launch",
        "no_rule": "Complete archive confirms no qualifying release",
        "opens_at": 0,
        "proposition": "Release before timestamp 100",
        "resolution_sources": [
          "official archive"
        ],
        "resolve_after": 110,
        "version": 1,
        "void_rule": "Archive permanently unavailable",
        "yes_rule": "Archive confirms release strictly before 100"
      }
    },
    "key": {
      "question_id": "doc-launch",
      "version": 1
    },
    "recorded_at": "<runtime UTC seconds>",
    "sequence": 1
  }
}

Verification

The documentation gate executes the setup and request, then checks the following result fields against independently specified expectations:

JSON pointer within resultExpected
/sequence1
/event/kind"question"

Float comparisons use a 1e-12 tolerance. Request schema validation and cross-record validation still apply. See errors and recovery for failure handling.