Workshop checks passed0 / 5

Model and Tool API Contracts

Suppose another program calls our pump model. Which readings does it need to send, and what should happen if they are missing? We’ll work out that agreement, give it a form both programs can check, then test what happens as either program changes.

Describing a model request

The model expects named measurements. We need to agree on which ones are required and what their values mean before two programs can exchange them.

  1. 01
    Ready to explore
    Did the Caller Leave It Out, or Send No Reading?

    Give absent measurements, explicit nulls and real zeroes different meanings before a request reaches the model.

    • Built: not completed
    • Changed inputs: not completed
    • Exercises: not completed
  2. 02
    Ready to explore
    Yesterday’s Client Still Sends the Old Request

    Introduce a new request shape without guessing what an older client meant or silently changing its results.

    • Built: not completed
    • Changed inputs: not completed
    • Exercises: not completed
  3. 03
    Ready to explore
    The Number Was Valid, but It Meant Something Else

    Keep units and score direction attached to numerical values before reusing fitted preprocessing or ranking evidence.

    • Built: not completed
    • Changed inputs: not completed
    • Exercises: not completed

Handling and testing tool outcomes

What should an agent do when a tool times out? It depends on whether the tool did anything before the connection failed. We’ll represent that difference and write tests for it.

  1. 04
    Ready to explore
    Should Botie Repeat the Request, or Find Out What Happened?

    Give callers stable failure types, bounded retry rules and a separate path for operations whose outcome is unknown.

    • Built: not completed
    • Changed inputs: not completed
    • Exercises: not completed
  2. 05
    Ready to explore
    One Correct Prediction Did Not Test the Interface

    Turn expected relationships between requests into tests, then retain the small example that exposed a broken contract.

    • Built: not completed
    • Changed inputs: not completed
    • Exercises: not completed