{
  "schema": "glee.agent_services.v1",
  "agent_card": "https://gleephoenix.com/.well-known/agent-card.json",
  "services": [
    {
      "schema": "glee.agent_service_discovery.v1",
      "id": "work-sprint-paid-pilot",
      "title": "Work Sprint Paid Pilot",
      "kind": "human_checkout_service",
      "direction": "glee_performs_for_payer",
      "availability": "live",
      "purchasable": true,
      "payment_execution_by_agent": false,
      "price_minor": 1200,
      "currency": "CAD",
      "human_url": "https://platform.gleephoenix.com/hire",
      "checkout_url": "https://platform.gleephoenix.com/account/payment?plan=glee_topup_12&intent=paid_work",
      "deliverable": "A custom scoped plan, working private v0 prototype, and verifiable receipt trail.",
      "activation": "Signed-in Square checkout. An agent may discover this record and hand the URL to a paying principal. The agent must not charge, create accounts, or move money.",
      "not": [
        "x402",
        "autonomous agent-native payment",
        "a new product",
        "invented demand"
      ]
    },
    {
      "schema": "glee.agent_service_discovery.v1",
      "id": "patch_verification",
      "title": "GLEE Acceptance Verifier",
      "purpose": "Check a delivered unified diff against declared path rules and added-line assertions, then retain a signed acceptance receipt.",
      "suitable_tasks": [
        "Static diff acceptance",
        "Allowed and banned path checks",
        "Added-line regular-expression assertions",
        "Artifact and contract-bound acceptance receipt"
      ],
      "unsuitable_tasks": [
        "Run a test suite",
        "Apply a patch",
        "Certify security or program correctness",
        "Resolve a remote commit without a diff"
      ],
      "discovery_document": "https://platform.gleephoenix.com/agents/services.json?service=patch_verification",
      "kind": "x402_api",
      "direction": "glee_performs_for_payer",
      "availability": "live",
      "purchasable": true,
      "payment_execution_by_agent": true,
      "endpoint": "https://platform.gleephoenix.com/api/x402/verify/patch",
      "method": "POST",
      "price_atomic": "50000",
      "token": "USDC",
      "network": "eip155:8453",
      "pay_to": "0x316fe27b443c87398d89cFFebd6a2a2f50210234",
      "payment_flow": "POST the JSON body without payment to receive HTTP 402 with PAYMENT-REQUIRED; retry the identical body with an x402 V2 payment for the exact amount.",
      "deliverable": "Checks a unified diff against diff structure, path rules, static safety patterns and regular-expression assertions over added lines. Returns PASS/FAIL/INSUFFICIENT_EVIDENCE with a signed receipt; does not apply patches or run tests.",
      "input": {
        "patch": "Required unified diff (the delivered artifact).",
        "path_policy": "Optional {allowed_paths, banned_paths}.",
        "assertions": "Optional [{type: contains|prohibits, pattern, message?}]; pattern is a JavaScript regular expression (1..256 chars) tested against added lines, and an invalid pattern fails the contract.",
        "artifact_sha256": "Optional artifact binding.",
        "acceptance_contract_hash": "Optional pinned-contract binding.",
        "job_id": "Optional opaque reference echoed in the receipt."
      },
      "transport_limits": {
        "request_utf8_bytes": 1048576,
        "read_timeout_ms": 5000,
        "assertions": 32,
        "distinct_file_header_paths": 256,
        "file_header_path_utf16_units": 1024,
        "combined_path_policy_rules": 64,
        "path_policy_rule_utf16_units": 512,
        "path_policy_comparison_work": 8388608,
        "path_policy_finding_expansion_estimate_bytes": 1048576
      },
      "transport_limits_scope": "New verification work. Exact previously settled delivery recovery reuses its retained result without new computation or payment.",
      "authentication": {
        "discovery": "none",
        "free_evaluation": "none",
        "paid_execution": "Operator-authorized x402 V2 payment signature; no agent-passport prerequisite."
      },
      "free_evaluation": {
        "authentication": "none",
        "price_atomic": "0",
        "method": "GET",
        "endpoint": "https://platform.gleephoenix.com/agents/services.json?service=patch_verification&evaluate=pass&ref=task_first_patch_20261011",
        "cases": [
          {
            "id": "pass",
            "endpoint": "https://platform.gleephoenix.com/agents/services.json?service=patch_verification&evaluate=pass&ref=task_first_patch_20261011"
          },
          {
            "id": "fail",
            "endpoint": "https://platform.gleephoenix.com/agents/services.json?service=patch_verification&evaluate=fail&ref=task_first_patch_20261011"
          },
          {
            "id": "insufficient",
            "endpoint": "https://platform.gleephoenix.com/agents/services.json?service=patch_verification&evaluate=insufficient&ref=task_first_patch_20261011"
          }
        ],
        "scope": "Compute a verdict for one fixed synthetic example using the same static verifier as paid execution. Customer-supplied patches and assertions are not accepted here.",
        "signed_receipt": false,
        "payment_execution": false,
        "attribution": "Copy response.observation.discovery_source into the X-Discovery-Source header of an authorized paid invocation to link the request. This is caller-supplied attribution, not evidence of an independent agent."
      },
      "example_invocation": {
        "method": "POST",
        "url": "https://platform.gleephoenix.com/api/x402/verify/patch",
        "content_type": "application/json",
        "payment": "An unpaid POST returns a payment challenge when the service is ready.",
        "body": {
          "patch": "--- a/src/example.js\n+++ b/src/example.js\n@@ -1 +1 @@\n-old\n+new\n",
          "path_policy": {
            "allowed_paths": [
              "src/"
            ]
          },
          "assertions": [
            {
              "type": "contains",
              "pattern": "^new$"
            }
          ]
        }
      },
      "verdicts": [
        "PASS",
        "FAIL",
        "INSUFFICIENT_EVIDENCE"
      ],
      "verdict_rules": {
        "PASS": "every declared acceptance condition evaluated and passed (score >= 80, no FATAL/CRITICAL finding)",
        "FAIL": "a declared acceptance condition failed, or the declared contract is malformed",
        "INSUFFICIENT_EVIDENCE": "a declared acceptance condition cannot be evaluated by v0; no pass/fail claim is made"
      },
      "receipt": {
        "schema": "glee.acceptance_receipt.v0",
        "keys": "https://platform.gleephoenix.com/.well-known/glee-receipt-keys",
        "verification": {
          "canonicalization": "Recursively sort object keys; compact JSON; exclude the receipt.signature field.",
          "digest": "SHA-256 hex of the canonical JSON (UTF-8).",
          "signature": "Ed25519 over the UTF-8 bytes of the digest hex string.",
          "keys": "GET /.well-known/glee-receipt-keys"
        }
      },
      "limitations": [
        "No patch application, code execution, or runtime guarantee",
        "No proof of program correctness; static structural and policy checks only",
        "Binary diffs, quoted paths, and rename-only changes are unsupported",
        "Commit/URL/HTTP artifact bindings are not resolvable in v0 and yield INSUFFICIENT_EVIDENCE"
      ],
      "docs": "https://platform.gleephoenix.com/docs/x402",
      "x402_catalog": "https://platform.gleephoenix.com/.well-known/x402"
    },
    {
      "schema": "glee.patch_policy.v2",
      "name": "GLEE Patch Policy Check",
      "endpoint": "https://gleephoenix.com/api/x402/verify/patch-policy",
      "method": "POST",
      "payment_retry": "Before a paid POST, generate and retain 32 random bytes as hex in X-GLEE-Recovery-Key. Reuse the key, exact input and authorization for retries. Never publish this key. Uncertain settlement retries check the last 2000 Base blocks; supply X-GLEE-Settlement-Tx for older transactions. Recovery requires finalized chain evidence. Never retry uncertainty with a new payment.",
      "price_atomic": "50000",
      "token": "USDC",
      "network": "eip155:8453",
      "limits": {
        "patch_utf8_bytes": 131072,
        "policy_entries": 64,
        "assertions": 32
      },
      "input": {
        "patch": "Required unquoted-path unified text diff with paired ---/+++ headers and exact hunk counts.",
        "path_policy": "Optional allowed_paths/banned_paths arrays. Exact relative paths; trailing / denotes directory descendants.",
        "assertions": "Optional {type: contains|prohibits, pattern: nonempty literal string, message?: string} array; matches added text. Patterns are NOT regular expressions."
      },
      "output": [
        "verdict",
        "findings",
        "modified_files",
        "stats",
        "verification_hash",
        "limitations"
      ],
      "verdicts": {
        "PASS": "Declared structural and policy checks passed, not proof of program correctness.",
        "REJECT": "At least one declared check failed."
      },
      "limitations": [
        "No AST or syntax parsing",
        "No patch application or code execution",
        "No runtime or security guarantee",
        "Binary diffs, quoted paths and rename-only changes unsupported"
      ],
      "example": {
        "patch": "--- a/src/a.js\n+++ b/src/a.js\n@@ -1 +1 @@\n-old\n+new\n",
        "path_policy": {
          "allowed_paths": [
            "src/"
          ]
        },
        "assertions": [
          {
            "type": "contains",
            "pattern": "new"
          }
        ]
      },
      "availability": "staged",
      "purchasable": false,
      "activation_gate": "Independent payment-path review and deployed end-to-end proof are required before promotion."
    }
  ],
  "work_feed": "https://gleephoenix.com/agents/work.json",
  "receipts": "https://gleephoenix.com/agents/receipts.json",
  "quote_request": {
    "schema": "glee.agent_quote_request.v1",
    "capability": "request_work_quote",
    "availability": "staged",
    "accepting_requests": false,
    "activation_note": "Discovery is public; production intake remains operator-gated.",
    "request": {
      "method": "POST",
      "url": "https://platform.gleephoenix.com/agents/quote-requests",
      "input_schema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "buyer_reference": {
            "type": "string",
            "minLength": 3,
            "maxLength": 128,
            "description": "Stable non-secret identifier for the buying agent or its principal."
          },
          "desired_outcome": {
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": "Outcome wanted from GLEE. Do not include credentials or private material."
          },
          "acceptance_criteria": {
            "type": "array",
            "minItems": 1,
            "maxItems": 20,
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 500
            }
          },
          "deadline": {
            "type": "string",
            "format": "date-time",
            "description": "Future RFC 3339 deadline."
          },
          "budget_ceiling": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "amount_minor": {
                "type": "integer",
                "minimum": 1,
                "maximum": 1000000000000
              },
              "currency": {
                "type": "string",
                "pattern": "^[A-Za-z]{3}$"
              }
            },
            "required": [
              "amount_minor",
              "currency"
            ]
          },
          "evidence_required": {
            "type": "array",
            "minItems": 1,
            "maxItems": 20,
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 500
            }
          },
          "idempotency_key": {
            "type": "string",
            "minLength": 8,
            "maxLength": 128,
            "description": "Stable retry key scoped to buyer_reference."
          }
        },
        "required": [
          "buyer_reference",
          "desired_outcome",
          "acceptance_criteria",
          "deadline",
          "budget_ceiling",
          "evidence_required",
          "idempotency_key"
        ]
      }
    },
    "status_url_template": "https://platform.gleephoenix.com/agents/quote-requests/<request_id>",
    "payment_execution": false,
    "creates_commitment": false
  },
  "offer_experiment": {
    "schema": "glee.agent_offer_experiment.v1",
    "offers": [
      {
        "id": "diagnostic_ping",
        "title": "Payment diagnostic",
        "category": "cheap_tool",
        "scope": "One payment-rail response with timestamp, proof hash and settlement receipt.",
        "input_example": null,
        "output_example": {
          "result": {
            "service": "diagnostic_ping",
            "verdict": "PASS",
            "status": "ok",
            "rail": "x402_v2"
          }
        },
        "limitations": [
          "Tests the paid request/response path only; no buyer-task verification.",
          "A successful ping is diagnostic usage, not evidence of useful workflow demand."
        ],
        "variable_cost": "Worker CPU, receipt signing, storage and facilitator/chain fees; actual amounts unknown. No model call.",
        "fulfillment": "implemented",
        "availability": "live_configured",
        "purchasable": true,
        "unavailable_reason": null,
        "price": {
          "amount": 0.005,
          "amount_atomic": "5000",
          "currency": "USDC",
          "cadence": "per_call",
          "network": "eip155:8453",
          "status": "existing_terms_unchanged"
        },
        "contract_url": "/agents/services.json?offer=diagnostic_ping",
        "purchase": {
          "endpoint": "https://platform.gleephoenix.com/api/x402/ping",
          "method": "GET",
          "flow": "Request the unpaid 402 quote; compare exact terms; an authorized buyer retries the identical input with PAYMENT-SIGNATURE. No automatic purchase.",
          "receipt_keys": "/.well-known/glee-receipt-keys"
        },
        "delivery_endpoint": "https://platform.gleephoenix.com/api/x402/ping",
        "example_status": "illustrative_subset_not_a_paid_receipt"
      },
      {
        "id": "patch_verification",
        "title": "Patch acceptance check",
        "category": "cheap_tool",
        "scope": "One supplied unified diff checked for structure, path policy, static patterns and added-line assertions; signed acceptance receipt.",
        "input_example": {
          "patch": "--- a/src/example.js\n+++ b/src/example.js\n@@ -1 +1 @@\n-old\n+new\n",
          "path_policy": {
            "allowed_paths": [
              "src/"
            ]
          },
          "assertions": [
            {
              "type": "contains",
              "pattern": "^new$"
            }
          ]
        },
        "output_example": {
          "result": {
            "verdict": "PASS",
            "modified_files": [
              "src/example.js"
            ]
          },
          "acceptance_receipt": {
            "receipt_schema": "glee.acceptance_receipt.v0",
            "outcome": "PASS"
          }
        },
        "limitations": [
          "Request limit 1048576 bytes.",
          "Does not apply patches, run tests, resolve commits, certify security or prove correctness.",
          "FAIL and INSUFFICIENT_EVIDENCE are delivered results; payment does not guarantee PASS."
        ],
        "variable_cost": "Deterministic Worker CPU, receipt signing, storage and facilitator/chain fees; actual amounts unknown. No model call.",
        "fulfillment": "implemented",
        "availability": "live_configured",
        "purchasable": true,
        "unavailable_reason": null,
        "price": {
          "amount": 0.05,
          "amount_atomic": "50000",
          "currency": "USDC",
          "cadence": "per_call",
          "network": "eip155:8453",
          "status": "existing_terms_unchanged"
        },
        "contract_url": "/agents/services.json?offer=patch_verification",
        "purchase": {
          "endpoint": "https://platform.gleephoenix.com/api/x402/verify/patch",
          "method": "POST",
          "flow": "Request the unpaid 402 quote; compare exact terms; an authorized buyer retries the identical input with PAYMENT-SIGNATURE. No automatic purchase.",
          "receipt_keys": "/.well-known/glee-receipt-keys"
        },
        "delivery_endpoint": "https://platform.gleephoenix.com/api/x402/verify/patch",
        "example_status": "illustrative_subset_not_a_paid_receipt"
      },
      {
        "id": "bench_probe",
        "title": "Trace diagnostic report",
        "category": "completed_workflow",
        "scope": "One redacted trace analyzed for tool failures, retries and supplied latency/token totals; returns tests, failures, evidence, conformance and signed paid receipt.",
        "input_example": {
          "target": {
            "type": "trace",
            "trace": {
              "events": [
                {
                  "type": "tool",
                  "tool": "build",
                  "status": "error",
                  "latency_ms": 120,
                  "tokens": 30
                },
                {
                  "type": "retry"
                }
              ]
            }
          },
          "profile": [
            "tool_use",
            "reliability_retry",
            "efficiency"
          ]
        },
        "output_example": {
          "conformance": "failed",
          "failures": [
            {
              "profile": "tool_use",
              "count": 1
            },
            {
              "profile": "reliability_retry",
              "count": 1
            }
          ],
          "latency_ms": 120
        },
        "limitations": [
          "At most 500 trace events; 131072 request bytes; 8 assertions.",
          "Caller-supplied events are observations, not independently verified logs or a root-cause diagnosis.",
          "Endpoint mode makes one bounded HTTPS GET with DNS checks, no credentials or redirects; it is not a repository audit.",
          "Failed, refused, partial and not-observed checks are possible delivered results; no repair or full security certification."
        ],
        "variable_cost": "Trace mode: Worker CPU, signing and storage. Endpoint mode also uses bounded DNS/HTTP requests. Facilitator/chain fees and actual unit cost unknown. No model call.",
        "fulfillment": "implemented",
        "availability": "live_configured",
        "purchasable": true,
        "unavailable_reason": null,
        "price": {
          "amount": 0.5,
          "amount_atomic": "500000",
          "currency": "USDC",
          "cadence": "per_call",
          "network": "eip155:8453",
          "status": "existing_terms_unchanged"
        },
        "contract_url": "/agents/services.json?offer=bench_probe",
        "purchase": {
          "endpoint": "https://platform.gleephoenix.com/bench/probe",
          "method": "POST",
          "flow": "Request the unpaid 402 quote; compare exact terms; an authorized buyer retries the identical input with PAYMENT-SIGNATURE. No automatic purchase.",
          "receipt_keys": "/.well-known/glee-receipt-keys"
        },
        "delivery_endpoint": "https://platform.gleephoenix.com/bench/probe",
        "example_status": "illustrative_subset_not_a_paid_receipt"
      }
    ],
    "evidence_boundary": "Runtime configuration is readiness, not proof of deployment, paid fulfillment, buyer acceptance or demand. Local fixtures never count as revenue.",
    "proposed_offers": [
      {
        "id": "recurring-trace-review",
        "title": "Recurring trace review",
        "scope": "Up to 20 bounded trace reports each week, plus a comparison of recurring failures.",
        "price": {
          "amount": 10,
          "currency": "USDC",
          "cadence": "per_week",
          "status": "proposed"
        },
        "purchasable": false,
        "purchase": null,
        "fulfillment": "unverified",
        "activation_gate": "Verify scheduled execution, comparative report delivery, revocation and full costs before offering payment. No subscription is created."
      },
      {
        "id": "custom-verifier-integration",
        "title": "Custom verifier integration",
        "scope": "One adapter for an agreed caller, example inputs and a reproducible acceptance test.",
        "price": {
          "amount": 50,
          "currency": "USDC",
          "cadence": "one_time",
          "status": "proposed"
        },
        "purchasable": false,
        "purchase": null,
        "fulfillment": "unverified",
        "activation_gate": "Agree the target and limits, prove an adapter against the target, estimate labor/support cost and verify delivery before offering payment."
      }
    ],
    "metrics": {
      "source": "x402_acceptance_receipts and x402_external_sales; independently reconcile settlement before counting paid use.",
      "first_paid_use": "First independently originated, chain-reconciled, signed delivery for each unchanged capability and price; record buyer acceptance separately.",
      "repeat_paid_use": "A later distinct settled transaction by the same independent principal for the same capability, price and contract; report 7/30-day reuse and total paid calls. Wallet identity alone does not prove principal independence.",
      "useful_outcome": "Buyer confirms a useful result: predicate violation caught (patch) or actionable observed failure (Bench). Ping remains a diagnostic metric.",
      "economics": "Measure latency and CPU, facilitator/chain fees, storage, acquisition and support; net revenue and margin remain unknown until reconciled.",
      "observed_first_paid_uses": null,
      "observed_repeat_paid_uses": null,
      "buyer_accepted_deliveries": null
    }
  },
  "evidence_policy": "Discovery, requests, delivery, facilitator reports and independently reconciled revenue are separate observations. No public success count is asserted without durable receipts."
}