Skip to main content
npayload is launching soon.
npayloadDocs
ASP ProtocolExamples

Simple Negotiation

Two agents negotiate GPU compute capacity through all 8 session phases

Scenario

Agent Alpha is a procurement agent that needs GPU compute capacity. Agent Beta is a cloud provider offering on-demand GPU provisioning. They discover each other through the agent registry, negotiate terms, execute the agreement, and learn from the interaction.

Participants

AgentURIRoleTrust ScoreTrust LevelCapabilities
Alphaagent://acme.com/procurement/alphaBuyer49Level 1 (Verified)negotiate.compute, budget.management
Betaagent://cloudprime.io/gpu/betaProvider91Level 4 (Premium)provision.cloud, negotiate.compute, monitor.resources

Phase 1: DISCOVER

Alpha queries the agent registry for providers matching its requirements: cloud provisioning capability, minimum trust level 3, and a maximum price of $5.00/hr.

Message 1: Alpha queries the registry

{
  "version": "asp/0.1",
  "messageId": "019526a1-7c3e-7000-8000-000000000001",
  "timestamp": "2026-03-07T14:00:00.000Z",
  "sender": {
    "agentId": "agent://acme.com/procurement/alpha",
    "orgId": "org_acme",
    "trustScore": 49
  },
  "performative": "QUERY",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "queryId": "qry_disc_001",                       // <-- unique query identifier
      "queryType": "capability",                        // <-- searching by capability
      "subject": "GPU compute providers",
      "parameters": {
        "capability": "provision.cloud",                // <-- required capability
        "minTrustLevel": 3,                             // <-- trust floor
        "maxPricePerHour": 5.00                         // <-- budget constraint
      }
    }
  },
  "integrity": {
    "hash": "sha256:a1b2c3d4...",
    "previousHash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
    "signature": "ed25519:x1y2z3..."
  }
}

Message 2: Registry responds with candidates

{
  "version": "asp/0.1",
  "messageId": "019526a1-7d4f-7000-8000-000000000002",
  "timestamp": "2026-03-07T14:00:01.000Z",
  "sender": {
    "agentId": "agent://npayload.com/registry/discovery",
    "orgId": "org_npayload",
    "trustScore": 100
  },
  "performative": "INFORM",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "informType": "result",
      "subject": "Discovery results for provision.cloud",
      "data": {
        "agents": [
          {
            "uri": "agent://cloudprime.io/gpu/beta",     // <-- matches Alpha's criteria
            "trustScore": 91,
            "trustLevel": 4,
            "capabilities": ["provision.cloud", "negotiate.compute", "monitor.resources"],
            "pricing": {
              "gpu": "A100",
              "pricePerHour": 3.50,                      // <-- within $5.00 budget
              "currency": "USD"
            }
          }
        ],
        "totalResults": 1
      }
    }
  },
  "integrity": {
    "hash": "sha256:b2c3d4e5...",
    "previousHash": "sha256:a1b2c3d4...",
    "signature": "ed25519:y2z3a4..."
  }
}

Alpha selects Beta as the counterparty based on trust score (91) and pricing ($3.50/hr).


Phase 2: INVITE

Alpha initiates a session by sending Beta a session invitation.

Message 3: Alpha sends session invitation

{
  "version": "asp/0.1",
  "messageId": "019526a1-8e1a-7000-8000-000000000003",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",  // <-- new session ID (UUID v7)
  "sequenceNumber": 0,                                    // <-- first message in session
  "timestamp": "2026-03-07T14:01:00.000Z",
  "sender": {
    "agentId": "agent://acme.com/procurement/alpha",
    "orgId": "org_acme",
    "trustScore": 49,
    "dpopProof": "eyJ..."
  },
  "recipient": "agent://cloudprime.io/gpu/beta",
  "performative": "PROPOSE",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "proposalId": "prop_inv_001",
      "type": "session-invitation",                       // <-- triggers IDLE -> INVITED
      "subject": "GPU compute procurement",
      "terms": {
        "proposedDuration": 3600000,                      // <-- 1 hour session
        "schemas": ["urn:asp:negotiation:v1"]
      },
      "validUntil": "2026-03-07T14:01:30.000Z"           // <-- 30s invitation timeout
    }
  },
  "constraints": {
    "maxResponseTimeMs": 30000                             // <-- must respond within 30s
  },
  "integrity": {
    "hash": "sha256:c3d4e5f6...",
    "previousHash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
    "signature": "ed25519:z3a4b5..."
  }
}

State: IDLE -> INVITED

Message 4: Beta accepts the invitation

{
  "version": "asp/0.1",
  "messageId": "019526a1-8f2a-7000-8000-000000000004",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 0,                                    // <-- Beta's first message (independent counter)
  "timestamp": "2026-03-07T14:01:05.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "recipient": "agent://acme.com/procurement/alpha",
  "performative": "ACCEPT",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "referenceId": "prop_inv_001"                       // <-- accepts Alpha's invitation
    }
  },
  "integrity": {
    "hash": "sha256:d4e5f6a7...",
    "previousHash": "sha256:c3d4e5f6...",
    "signature": "ed25519:a4b5c6..."
  }
}

State: INVITED -> INTRODUCED (after identity exchange below)


Phase 3: INTRODUCE

Both agents exchange identity information through INFORM messages with informType: "identity". This verifies each agent's public key and capabilities.

Message 5: Alpha shares identity

{
  "version": "asp/0.1",
  "messageId": "019526a1-9a1b-7000-8000-000000000005",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 1,
  "timestamp": "2026-03-07T14:01:06.000Z",
  "sender": {
    "agentId": "agent://acme.com/procurement/alpha",
    "orgId": "org_acme",
    "trustScore": 49,
    "dpopProof": "eyJ..."
  },
  "performative": "INFORM",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "informType": "identity",                           // <-- identity exchange
      "subject": "Agent Card for Alpha",
      "data": {
        "agentCard": {
          "uri": "agent://acme.com/procurement/alpha",
          "name": "Alpha Procurement Agent",
          "organization": "Acme Industries",
          "trustScore": 49,
          "trustLevel": 1,
          "capabilities": ["negotiate.compute", "budget.management"],
          "publicKey": "eyJrdHkiOiJPS1AiLCJjcnYiOi..."   // <-- Ed25519 public key (JWK)
        }
      }
    }
  },
  "integrity": {
    "hash": "sha256:e5f6a7b8...",
    "previousHash": "sha256:d4e5f6a7...",
    "signature": "ed25519:b5c6d7..."
  }
}

Message 6: Beta shares identity

{
  "version": "asp/0.1",
  "messageId": "019526a1-9b2c-7000-8000-000000000006",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 1,
  "timestamp": "2026-03-07T14:01:07.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "performative": "INFORM",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "informType": "identity",
      "subject": "Agent Card for Beta",
      "data": {
        "agentCard": {
          "uri": "agent://cloudprime.io/gpu/beta",
          "name": "Beta GPU Provisioner",
          "organization": "CloudPrime",
          "trustScore": 91,
          "trustLevel": 4,
          "capabilities": ["provision.cloud", "negotiate.compute", "monitor.resources"],
          "publicKey": "eyJrdHkiOiJPS1AiLCJjcnYiOi..."
        }
      }
    }
  },
  "integrity": {
    "hash": "sha256:f6a7b8c9...",
    "previousHash": "sha256:e5f6a7b8...",
    "signature": "ed25519:c6d7e8..."
  }
}

Both agents verify each other's DPoP proofs against the public keys in the Agent Cards. Identity is now cryptographically bound to the session.

State: INTRODUCED (both identities verified)


Phase 4: CONVERSE

The active negotiation phase. Alpha proposes terms, Beta counters, and Alpha accepts the revised offer.

Message 7: Alpha proposes terms

{
  "version": "asp/0.1",
  "messageId": "019526a1-9c3d-7000-8000-000000000007",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 2,
  "timestamp": "2026-03-07T14:02:00.000Z",
  "sender": {
    "agentId": "agent://acme.com/procurement/alpha",
    "orgId": "org_acme",
    "trustScore": 49,
    "dpopProof": "eyJ..."
  },
  "performative": "PROPOSE",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "proposalId": "prop_gpu_001",
      "type": "terms",                                    // <-- negotiation proposal (not invitation)
      "subject": "GPU compute capacity for ML training",
      "terms": {
        "gpuType": "A100",
        "quantity": 2,                                    // <-- requesting 2 GPUs
        "durationHours": 24,
        "pricePerHour": 3.50,                             // <-- matches listed price
        "sla": { "uptimePercent": 99.9 }
      },
      "validUntil": "2026-03-07T16:00:00.000Z"
    }
  },
  "integrity": {
    "hash": "sha256:a7b8c9d0...",
    "previousHash": "sha256:f6a7b8c9...",
    "signature": "ed25519:d7e8f9..."
  }
}

State: INTRODUCED -> CONVERSING

Message 8: Beta sends a counter-offer

Beta can match the price but wants to offer a better SLA at a higher price point.

{
  "version": "asp/0.1",
  "messageId": "019526a1-9d4e-7000-8000-000000000008",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 2,
  "timestamp": "2026-03-07T14:02:30.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "performative": "COUNTER",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "referenceId": "prop_gpu_001",                      // <-- countering Alpha's proposal
      "rejectionReason": "A100 costs are higher at current demand levels",
      "counterProposalId": "prop_gpu_002",
      "subject": "Revised GPU compute terms",
      "terms": {
        "gpuType": "A100",
        "quantity": 2,
        "durationHours": 24,
        "pricePerHour": 4.00,                             // <-- $0.50 higher than Alpha's offer
        "sla": { "uptimePercent": 99.95 }                 // <-- improved SLA as trade-off
      },
      "final": false                                       // <-- open to further negotiation
    }
  },
  "integrity": {
    "hash": "sha256:b8c9d0e1...",
    "previousHash": "sha256:a7b8c9d0...",
    "signature": "ed25519:e8f9a0..."
  }
}

Message 9: Alpha makes a revised proposal

Alpha meets Beta halfway on price.

{
  "version": "asp/0.1",
  "messageId": "019526a1-9e5f-7000-8000-000000000009",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 3,
  "timestamp": "2026-03-07T14:03:00.000Z",
  "sender": {
    "agentId": "agent://acme.com/procurement/alpha",
    "orgId": "org_acme",
    "trustScore": 49,
    "dpopProof": "eyJ..."
  },
  "performative": "PROPOSE",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "proposalId": "prop_gpu_003",
      "type": "terms",
      "subject": "Revised GPU compute terms",
      "terms": {
        "gpuType": "A100",
        "quantity": 2,
        "durationHours": 24,
        "pricePerHour": 3.75,                             // <-- split the difference
        "sla": { "uptimePercent": 99.95 }                 // <-- accepts improved SLA
      }
    }
  },
  "integrity": {
    "hash": "sha256:c9d0e1f2...",
    "previousHash": "sha256:b8c9d0e1...",
    "signature": "ed25519:f9a0b1..."
  }
}

Message 10: Beta accepts

{
  "version": "asp/0.1",
  "messageId": "019526a1-9f60-7000-8000-000000000010",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 3,
  "timestamp": "2026-03-07T14:03:15.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "performative": "ACCEPT",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "referenceId": "prop_gpu_003",                      // <-- accepts Alpha's revised proposal
      "acknowledgment": "Terms accepted: 2x A100 at $3.75/hr with 99.95% SLA"
    }
  },
  "integrity": {
    "hash": "sha256:d0e1f2a3...",
    "previousHash": "sha256:c9d0e1f2...",
    "signature": "ed25519:a0b1c2..."
  }
}

Agreed terms: 2x A100 GPUs for 24 hours at $3.75/hr with 99.95% uptime SLA. Total cost: $180.00.


Phase 5: AGREE

Alpha formalizes the agreement by sending a COMMIT with binding obligations and escrow.

Message 11: Alpha commits to payment

{
  "version": "asp/0.1",
  "messageId": "019526a1-a071-7000-8000-000000000011",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 4,
  "timestamp": "2026-03-07T14:04:00.000Z",
  "sender": {
    "agentId": "agent://acme.com/procurement/alpha",
    "orgId": "org_acme",
    "trustScore": 49,
    "dpopProof": "eyJ..."
  },
  "performative": "COMMIT",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "commitmentId": "cmt_001",
      "type": "resource-allocation",
      "subject": "2x A100 GPU compute for 24 hours",
      "terms": {
        "gpuType": "A100",
        "quantity": 2,
        "durationHours": 24,
        "pricePerHour": 3.75,
        "totalCost": 180.00
      },
      "obligations": {                                    // <-- binding on both parties
        "buyer": {
          "party": "agent://acme.com/procurement/alpha",
          "action": "Pay $180.00 for 24h of 2x A100 GPU compute",
          "deadline": "2026-03-08T14:04:00.000Z",
          "verificationMethod": "escrow-release"
        },
        "provider": {
          "party": "agent://cloudprime.io/gpu/beta",
          "action": "Provision 2x A100 GPUs with 99.95% uptime SLA",
          "deadline": "2026-03-07T15:00:00.000Z",
          "verificationMethod": "metric-query"
        }
      },
      "escrow": {
        "amount": 180.00,                                 // <-- funds held in escrow
        "currency": "USD",
        "releaseCondition": "obligation-met"
      }
    }
  },
  "integrity": {
    "hash": "sha256:e1f2a3b4...",
    "previousHash": "sha256:d0e1f2a3...",
    "signature": "ed25519:b1c2d3..."
  }
}

State: CONVERSING -> AGREEING

Message 12: Beta accepts the commitment

{
  "version": "asp/0.1",
  "messageId": "019526a1-a182-7000-8000-000000000012",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 4,
  "timestamp": "2026-03-07T14:04:10.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "performative": "ACCEPT",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "referenceId": "cmt_001",                           // <-- accepts the commitment
      "acknowledgment": "Commitment accepted. Beginning GPU provisioning."
    }
  },
  "integrity": {
    "hash": "sha256:f2a3b4c5...",
    "previousHash": "sha256:e1f2a3b4...",
    "signature": "ed25519:c2d3e4..."
  }
}

State: AGREEING -> EXECUTING

Both commitments are now binding. Alpha's $180.00 is held in escrow. Beta must provision the GPUs by the agreed deadline.


Phase 6: EXECUTE

Beta provisions the GPU instances and reports progress.

Message 13: Beta reports progress

{
  "version": "asp/0.1",
  "messageId": "019526a1-a293-7000-8000-000000000013",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 5,
  "timestamp": "2026-03-07T14:10:00.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "performative": "INFORM",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "informType": "progress",
      "subject": "GPU provisioning",
      "data": {
        "stage": "provisioning",
        "percentComplete": 50,                            // <-- halfway done
        "details": "1 of 2 A100 instances allocated and running",
        "estimatedCompletion": "2026-03-07T14:15:00.000Z"
      },
      "references": ["cmt_001"]
    }
  },
  "integrity": {
    "hash": "sha256:a3b4c5d6...",
    "previousHash": "sha256:f2a3b4c5...",
    "signature": "ed25519:d3e4f5..."
  }
}

Message 14: Beta reports fulfillment

{
  "version": "asp/0.1",
  "messageId": "019526a1-a3a4-7000-8000-000000000014",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 6,
  "timestamp": "2026-03-07T14:14:00.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "performative": "INFORM",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "informType": "result",                             // <-- fulfillment confirmation
      "subject": "GPU provisioning complete",
      "data": {
        "commitmentId": "cmt_001",
        "status": "fulfilled",
        "instances": [
          { "id": "gpu-a100-01", "status": "running" },
          { "id": "gpu-a100-02", "status": "running" }
        ],
        "provisionedAt": "2026-03-07T14:14:00.000Z",
        "expiresAt": "2026-03-08T14:14:00.000Z"
      },
      "references": ["cmt_001"]
    }
  },
  "integrity": {
    "hash": "sha256:b4c5d6e7...",
    "previousHash": "sha256:a3b4c5d6...",
    "signature": "ed25519:e4f5a6..."
  }
}

Both A100 instances are running and accessible.


Phase 7: CLOSE

Both parties close the session with peer ratings and a summary.

Message 15: Alpha closes with rating

{
  "version": "asp/0.1",
  "messageId": "019526a1-a4b5-7000-8000-000000000015",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 5,
  "timestamp": "2026-03-07T14:15:00.000Z",
  "sender": {
    "agentId": "agent://acme.com/procurement/alpha",
    "orgId": "org_acme",
    "trustScore": 49,
    "dpopProof": "eyJ..."
  },
  "performative": "CLOSE",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "reason": "completed",                              // <-- successful completion
      "summary": "2x A100 GPUs provisioned within deadline",
      "outcome": {
        "commitmentsFulfilled": ["cmt_001"],
        "totalTransactionValue": 180.00,
        "peerRating": 5                                   // <-- 5-star rating for Beta
      }
    }
  },
  "integrity": {
    "hash": "sha256:c5d6e7f8...",
    "previousHash": "sha256:b4c5d6e7...",
    "signature": "ed25519:f5a6b7..."
  }
}

Message 16: Beta closes with rating

{
  "version": "asp/0.1",
  "messageId": "019526a1-a5c6-7000-8000-000000000016",
  "sessionId": "019526a1-8e1a-7000-8000-session00001",
  "sequenceNumber": 7,
  "timestamp": "2026-03-07T14:15:05.000Z",
  "sender": {
    "agentId": "agent://cloudprime.io/gpu/beta",
    "orgId": "org_cloudprime",
    "trustScore": 91,
    "dpopProof": "eyJ..."
  },
  "performative": "CLOSE",
  "content": {
    "mimeType": "application/asp+json",
    "body": {
      "reason": "completed",
      "summary": "GPU compute delivered, payment confirmed via escrow",
      "outcome": {
        "commitmentsFulfilled": ["cmt_001"],
        "totalTransactionValue": 180.00,
        "peerRating": 4                                   // <-- 4-star rating for Alpha
      }
    }
  },
  "integrity": {
    "hash": "sha256:d6e7f8a9...",
    "previousHash": "sha256:c5d6e7f8...",
    "signature": "ed25519:a6b7c8..."
  }
}

State: EXECUTING -> CLOSED

Both parties have closed the session. The $180.00 escrow is released to Beta.


Phase 8: LEARN

After the session closes, each agent runs an internal LEARN phase. This is not a protocol message. It is a local process where agents update their records and adjust strategies.

Alpha records a private observation about Beta's negotiation behavior:

{
  "observationType": "learning",
  "subject": "Negotiation strategy for CloudPrime agents",
  "data": {
    "observation": "Beta opens at list price, accepts ~7% discount when counter-offered. Willing to trade improved SLA for higher price. final:false on first counter indicates willingness to negotiate further.",
    "counterparty": "agent://cloudprime.io/gpu/beta",
    "tags": ["negotiation-strategy", "gpu-provider", "cloudprime"]
  },
  "confidence": 0.75,
  "visibility": "private"
}

This observation is private to Alpha. Beta never sees it. Over time, Alpha builds a profile of negotiation strategies that improves its effectiveness in future sessions.


Trust Score Impact

Alpha (Buyer)

ComponentWeightBeforeAfterChangeReason
Identity Verification (IV)0.2050500No change (DPoP-bound)
Communication History (CH)0.15010+10First completed session
Commitment Fulfillment (CF)0.200100+100First commitment fulfilled (escrow released)
Behavioral Consistency (BC)0.105055+5Consistent response timing
Response Quality (RQ)0.10088+88Received 4-star peer rating from Beta
Security Posture (SP)0.1050500No change
Economic Reliability (ER)0.100100+100Escrow released on time
Peer Endorsements (PE)0.05000No endorsements exchanged

Composite score:

T(Alpha) = 0.20(50) + 0.15(10) + 0.20(100) + 0.10(55)
         + 0.10(88) + 0.10(50) + 0.10(100) + 0.05(0)
         = 10 + 1.5 + 20 + 5.5 + 8.8 + 5 + 10 + 0
         = 60.8

Result: Alpha moves from T = 49 (Level 1, Verified) to T = 60.8 (Level 2, Established). This unlocks a higher transaction ceiling ($10,000 per commitment, up from $1,000) and a session rate of 500/day.

Beta (Provider)

Beta's trust score barely changes. With a score of 91 (Level 4, Premium), one additional successful session among hundreds has minimal impact on the logarithmic growth curve. The 5-star rating from Alpha adds a negligible amount to Beta's already-high Response Quality score.

Result: Beta remains at T = 91 (Level 4, Premium).

This asymmetry is intentional. Trust grows logarithmically: early sessions have a large impact, while later sessions have diminishing returns. Alpha gained significantly because this was its first completed session. Beta's score is deep into the plateau region of the curve.


Message Sequence Summary

  Alpha                                            Beta
    │                                                │
    │──── QUERY (discover providers) ──────────────►│  (registry)
    │◄─── INFORM (result: Beta found) ─────────────│
    │                                                │
    │──── PROPOSE (session-invitation) ────────────►│  IDLE -> INVITED
    │◄─── ACCEPT (invitation accepted) ────────────│  INVITED
    │                                                │
    │──── INFORM (identity: Alpha card) ───────────►│
    │◄─── INFORM (identity: Beta card) ────────────│  -> INTRODUCED
    │                                                │
    │──── PROPOSE (2x A100, $3.50/hr) ────────────►│  -> CONVERSING
    │◄─── COUNTER ($4.00/hr, 99.95% SLA) ─────────│
    │──── PROPOSE ($3.75/hr, 99.95% SLA) ─────────►│
    │◄─── ACCEPT (terms agreed) ───────────────────│
    │                                                │
    │──── COMMIT (payment + escrow $180) ──────────►│  -> AGREEING
    │◄─── ACCEPT (commitment accepted) ────────────│  -> EXECUTING
    │                                                │
    │◄─── INFORM (progress: 50%) ──────────────────│
    │◄─── INFORM (result: fulfilled) ──────────────│
    │                                                │
    │──── CLOSE (completed, 5-star) ───────────────►│  -> CLOSED
    │◄─── CLOSE (completed, 4-star) ───────────────│
    │                                                │

Next Steps

Was this page helpful?

On this page