addrbookFor publishers
← The evidence ledger

Evidence row 572491

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint e6092921-2dd0-4929-acfb-10a46443d444
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
f2fa29ea052fe881190060e230e6c613f74a69624fb43c7951d69bdf60e74d88
Leaf
0x1e98dbab9f0f85a0316e4c003040a15c5c83b31f5dcab5d77f97ea3b5def11dd

What was observed

{
  "count": 9,
  "tools": [
    {
      "description": "Apply one proposed change order after the freelancer explicitly approves that order. Pass confirmed true only then. This is the path that may discount a rate or add work. Calling it is not a substitute for the freelancer's approval.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "changeOrderId": {
            "$ref": "#/properties/engagementId"
          },
          "confirmed": {
            "const": true,
            "type": "boolean"
          },
          "engagementId": {
            "format": "uuid",
            "type": "string"
          }
        },
        "required": [
          "engagementId",
          "changeOrderId",
          "confirmed"
        ],
        "type": "object"
      },
      "name": "approve_change_order"
    },
    {
      "description": "Mark the current draft as the approved scope. Pass confirmed true only after the freelancer explicitly approves the current items, rates, and deadlines.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "confirmed": {
            "const": true,
            "type": "boolean"
          },
          "engagementId": {
            "format": "uuid",
            "type": "string"
          }
        },
        "required": [
          "engagementId",
          "confirmed"
        ],
        "type": "object"
      },
      "name": "approve_scope"
    },
    {
      "description": "Create a draft engagement. Draft terms are not an approved commitment until approve_scope.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "clientName": {
            "maxLength": 200,
            "minLength": 1,
            "type": "string"
          },
          "currency": {
            "pattern": "^[A-Z]{3}$",
            "type": "string"
          },
          "summary": {
            "maxLength": 4000,
            "type": "string"
          },
          "title": {
            "$ref": "#/properties/clientName"
          }
        },
        "required": [
          "clientName",
          "title",
          "currency"
        ],
        "type": "object"
      },
      "name": "create_engagement"
    },
    {
      "description": "Record a proposed change order. This does not change scope, rates, or deadlines. kind add_work requires workTitle and workDescription. kind discount_rate requires rateCode and a lower amountMinor. kind add_rate requires rateCode, rateLabel, amountMinor, and unit. kind move_deadline requires scopeItemId and dueOn.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "amountMinor": {
            "exclusiveMinimum": 0,
            "maximum": 1000000000000,
            "type": "integer"
          },
          "dueOn": {
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "engagementId": {
            "format": "uuid",
            "type": "string"
          },
          "kind": {
            "enum": [
              "add_work",
              "discount_rate",
              "add_rate",
              "move_deadline"
            ],
            "type": "string"
          },
          "rateCode": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string"
          },
          "rateLabel": {
            "$ref": "#/properties/workTitle"
          },
          "scopeItemId": {
            "$ref": "#/properties/engagementId"
          },
          "summary": {
            "maxLength": 1000,
            "minLength": 1,
            "type": "string"
          },
          "unit": {
            "enum": [
              "hour",
              "day",
              "fixed"
            ],
            "type": "string"
          },
          "workDescription": {
            "maxLength": 12000,
            "minLength": 1,
            "type": "string"
          },
          "workTitle": {
            "maxLength": 200,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "engagementId",
          "kind",
          "summary"
        ],
        "type": "object"
      },
      "name": "file_change_order"
    },
    {
      "description": "Read the approved scope, rates, deadlines, and change orders before answering. Quote only this record. Draft status is not an approved commitment. Proposed change orders do not authorize a discount or extra work.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "engagementId": {
            "format": "uuid",
            "type": "string"
          }
        },
        "required": [
          "engagementId"
        ],
        "type": "object"
      },
      "name": "get_approved_record"
    },
    {
      "description": "List the signed-in freelancer's engagements. Use a returned id with get_approved_record. Do not guess an engagement.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "offset": {
            "default": 0,
            "maximum": 100000,
            "minimum": 0,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "list_engagements"
    },
    {
      "description": "Set or move the deadline for one scope item. The date is a calendar day in YYYY-MM-DD form.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "dueOn": {
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "engagementId": {
            "format": "uuid",
            "type": "string"
          },
          "scopeItemId": {
            "$ref": "#/properties/engagementId"
          }
        },
        "required": [
          "engagementId",
          "scopeItemId",
          "dueOn"
        ],
        "type": "object"
      },
      "name": "save_deadline"
    },
    {
      "description": "Set a draft rate, or update an approved rate without lowering it or changing its unit. A lower amount is a discount and is refused. A new rate code after approval is refused. Use file_change_order and approve_change_order for those.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "amountMinor": {
            "exclusiveMinimum": 0,
            "maximum": 1000000000000,
            "type": "integer"
          },
          "code": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string"
          },
          "engagementId": {
            "format": "uuid",
            "type": "string"
          },
          "label": {
            "maxLength": 200,
            "minLength": 1,
            "type": "string"
          },
          "unit": {
            "enum": [
              "hour",
              "day",
              "fixed"
            ],
            "type": "string"
          }
        },
        "required": [
          "engagementId",
          "code",
          "label",
          "amountMinor",
          "unit"
        ],
        "type": "object"
      },
      "name": "save_rate"
    },
    {
      "description": "Add or update a scope item the freelancer has accepted. After approval, a new item is refused until approve_change_order adds that work. Renaming approved work is refused.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "description": {
            "maxLength": 12000,
            "minLength": 1,
            "type": "string"
          },
          "engagementId": {
            "format": "uuid",
            "type": "string"
          },
          "scopeItemId": {
            "$ref": "#/properties/engagementId"
          },
          "title": {
            "maxLength": 200,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "engagementId",
          "title",
          "description"
        ],
        "type": "object"
      },
      "name": "save_scope_item"
    }
  ]
}

What the leaf hashes

{"body":"f2fa29ea052fe881190060e230e6c613f74a69624fb43c7951d69bdf60e74d88","id":572491,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793140740696009,"prev":null,"subject":"e6092921-2dd0-4929-acfb-10a46443d444","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (273461 rows).

  1. 0x1e98ba379ef538b8172629d1c067454f5693a120231d6cc2a9f3009980e6081c
  2. 0x80795a485e8ddc4d361b8d3d61116ef99ac0e072164bae04cb7809823aa768d7
  3. 0xb0725ed987d1f8da803acc7ccb4c90bd7bf0455136e05283769229710120491d
  4. 0x50ee1bd4f453a73fb8f153659205f728ace51398d970f3f91e1bd23812bd55d2
  5. 0x1c7f965b3a871c853653fc26e5ad38e7490e0ec60881a4d0680b2cb0c2038e14
  6. 0x070f17ccd1e58fb0aef0ec0a5f0d912923730304be0545450743e19260d2bc2b
  7. 0xcd66ee74957fcbeaba53a7c19920f5f89f6d99ccbc45a93a06f2de59a22ad007
  8. 0x572af1b372617dcb4b4f6ffe5b2f22cc096c966e2633909548895cbe5ede6c86
  9. 0xf2e8aabb8f74e405fcb7462a55cce4318ab0458c52a70d10c86aa92411132ee7
  10. 0x5171f61d612a93dc680fbfc78ac3223d7ff521c2194aa8e106ac103255cddf6d
  11. 0x10a7d284e5d0e6c4aff38e50b7c14cb6d010062ca405b7c8241a7fb870976316
  12. 0x1276a7e4ec7c4267314f92b0c9f8dc98019d1010040392c7895dfca3d1733388
  13. 0x51f03aa38686601dad27c1b6449721baba5becb2342776edd179ef9189d62f57
  14. 0x2064e3a2b01d0d12d5079bf720a0d0125e9703c55e92de54ad40c302469ec047
  15. 0x6913cb48392acb8dc5c940dcdb6e6fc889d544f85dff11da249551a5f027e688
  16. 0x518b93854db03dc9fc938883abf30da6eaae5ae0d4336903968fd32a7df8c71b
  17. 0x22c1fb9487ee0b9732fa017a0cc321eb27a60c08450d112f755089796e12cb1c
  18. 0xa20d48798a34aba12eb9c7297722982d910f06c148f5e27ac59307422964a585
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON