Contents
  1. Generated data and executable requests
  2. Output contracts and missing information
  3. Constraints during generation
  4. Completion, parsing and runtime validation
  5. Meaning beyond schema acceptance
  6. Tool contracts and operation selection
  7. Authorized dispatch and call identity
  8. Results and justified completion claims
  9. Boundary failures and bounded correction
  10. Uncertain effects and safe retries
  11. Interface verification through state and failures
  12. Check understanding
  13. Open questions
  14. Selected talks
  15. References
  16. Talk library
← All topics

Structured Outputs and Tool Calling

Structured outputs make generated content usable by software. Tool calls turn generated content into proposed operations. Reliable integration requires distinguishing a complete value, a meaningful request, permission to act, and evidence of what happened. A ticket-assignment workflow makes these boundaries concrete.

Generated data and executable requests

A structured output follows an explicit machine-readable contract. A tool call names an operation and supplies arguments. Application code or a delegated runtime executes that request; generating it does not perform the operation.

In a constructed ticket service, assigning ticket T-42 to user U-9 involves four distinct representations. Their similar contents conceal different evidential roles.

From proposal to observed outcome

Example

Execution requires a gate; reporting requires evidence.

The constructed ticket workflow rejects invalid or denied proposals before the service write. After invocation, the final response follows the observed outcome, including failure.
Read the diagram as text
  • Assignment request.
  • Generated proposal.
  • Application checks.
  • Authoritative write. Effect boundary
  • Observed result.
  • Final response.
  • Rejected without invocation.
  • Assignment requestGenerated proposal: Data: requested intent.
  • Generated proposalApplication checks: Data: arguments.
  • Application checksAuthoritative write: Control: valid and permitted.
  • Application checksRejected without invocation: Control: invalid or denied.
  • Authoritative writeObserved result: Data: operation outcome.
  • Observed resultFinal response: Data: reporting evidence.
RepresentationExampleWhat it establishes
Prose claimT-42 is assigned to U-9.The model asserted an outcome; execution remains unestablished.
Assignment data{"ticket_id":"T-42","assignee_id":"U-9"}A record describes an assignment. Extraction can stop here without executing a tool.
Proposed callassign_ticket with those argumentsAn operation was requested; the executor still decides whether to invoke it.
Observed resultA correlated service result confirms the persisted assignee.The service reports an effect, subject to its documented result contract.

Tools can request reads as well as writes. A workflow can also combine tool calls with a structured final answer.

Output contracts and missing information

A schema describes admissible data. JSON represents values; JSON Schema expresses constraints on those values. Declaring a property does not require its presence: required does that. Unrecognized properties remain allowed unless constrained, for example with additionalProperties: false.

The assignment contract must also explain field meanings. An assignee identifier names a user record, not a display name; an expected revision identifies the state on which a proposed change depends. Descriptions communicate these meanings to the model and maintainers, while executable validators enforce the checkable rules.

Schema fragments for the constructed assignment proposal
Field or structureConstraintInterpretation
kindenum: ["proposal"]A fixed tag identifies this result variant.
ticketNested object containing ticket_id and project_idApply required-field and extra-property rules inside this object too.
assignee_idtype: "string"The representation is textual; existence and eligibility need separate checks.
expected_revisiontype: "integer", minimum: 0Reject negative revisions and numeric strings; validation does not prescribe coercion.
missing_fields in a needs-input resultitems restricts names; minItems: 1Element constraints alone allow an empty array. A length constraint requires an actual missing-field entry.
Distinct instances require distinct meanings
Instance conditionContract consequence
assignee_id is absentFails if required; otherwise the consumer needs an explicit omission policy.
assignee_id is nullPresent but null; accepted only by a schema permitting null. Define whether it means unassignment or unavailable information.
assignee_id is an empty stringStill a string. Reject it explicitly when identifiers cannot be empty.
An undeclared field appearsA closed object rejects it instead of silently giving it an accidental meaning.
A default is declaredJSON Schema treats default as an annotation; validation does not insert it. Framework transformations are separate behavior.

A tagged union uses a distinguishing field to select a result shape. Here, proposal requires complete arguments, needs_input identifies information to request, and unknown explains unavailable evidence. Mutually exclusive tags prevent overlap: oneOf requires exactly one matching branch, whereas anyOf permits several. This design represents insufficiency without inventing an assignee.

A schema dialect defines keyword semantics; a root $schema identifies it. A generation engine may implement only a subset. Record both the intended dialect and supported generation constraints: declaring a dialect does not install missing capabilities. Keep producer instructions, validators, and consumers on the same contract.

Constraints during generation

A token references an entry in the model vocabulary. During generation, the model produces logits, relative scores for possible next tokens; a selection procedure chooses a continuation. Tokenization explains reconstruction of text from tokens. LLM Inference covers general selection and serving behavior.

MethodWhere it operatesWhat it supplies
Formatting instructionsPromptGuidance to produce a format; instructions alone do not mask invalid continuations.
JSON modeGeneration interfaceJSON syntax under its documented conditions, without adherence to a particular schema.
Schema-constrained generationSupported generation contractAdherence to supported constraints for eligible completed responses; refusals and incomplete responses require separate handling.

An escape changes legal continuations

Example

Character meaning depends on retained parser state.

Inside a string after a backslash, quote and u permit continuations; q does not. These character pieces illustrate checks, not a particular tokenizer vocabulary.
Read the diagram as text
  • String: escape pending.
  • Candidate quote. Remains inside string.
  • Candidate u. Four hexadecimal digits follow.
  • Candidate q rejected.
  • Select permitted token.
  • Advance prefix and state.
  • String: escape pendingCandidate quote: Quote: legal escape.
  • String: escape pendingCandidate u: u: Unicode escape.
  • String: escape pendingCandidate q rejected: q: invalid escape.
  • Candidate quoteSelect permitted token: Retain candidate.
  • Candidate uSelect permitted token: Retain candidate.
  • Select permitted tokenAdvance prefix and state: Append selected token.

Constrained decoding removes next-token choices that cannot continue the requested structure. A grammar specifies legal compositions; a schema constrains completed values. An engine can compile supported schema rules into a grammar, track the generated prefix, and mask invalid choices before selection. OpenAI's described implementation preprocesses the grammar into a reusable artifact.

Token boundaries need not coincide with grammar boundaries. One token can contain several structural characters, so checking it may require several parser transitions. Nested structures require remembering unfinished enclosing structures. XGrammar's implementation combines live parser stacks with cached token-validity information; it does not precompute every possible complete stack.

  • Generation workConstraints can avoid explanatory filler, and some implementations skip predictable structural choices. Preprocessing and per-token checking also require work. Measure the complete workload rather than assuming either universal overhead or universal acceleration.
  • Changed content probabilitiesMasking and renormalizing legal next tokens generally differs from conditioning the model on an entire valid completion. Exact conditioning also accounts for each continuation's future probability of remaining valid. Structural enforcement can therefore change content preferences without universally improving or worsening task accuracy.

Runtime support is part of the contract. The llama.cpp grammar documentation warns that unsupported schema features may be skipped during conversion and that output constraints do not automatically explain the task in the prompt. Inspect conversion warnings and test the generated language; an accepted schema file alone does not establish enforcement.

Completion, parsing and runtime validation

The response envelope carries status and payload information; the application value is inside it. Inspect completion status before treating that payload as final. A refusal, token-limit cutoff, cancellation, or transport failure needs its own outcome path rather than an assumption that the requested record exists.

Parsing converts serialized text into values. Runtime validation checks those values against the contract. A TypeScript annotation performs neither operation: type annotations disappear from emitted JavaScript. Incoming model data needs executable checks before a consumer relies on its declared type.

Preview and final eligibility

Example

A preview precedes completion and validation.

1 / 3 · Preview

Partial data is provisional.

Response R retains its identity. Earlier snapshots remain historical evidence; final consumption requires completion and validation.
Read the diagram as text
  • Response R.
  • Partial snapshot.
  • Provisional preview.
  • Completion recorded.
  • Runtime validation accepted.
  • Final consumer.
  • Response RPartial snapshot: Yields prefix.
  • Partial snapshotProvisional preview: May render.
  • Response RCompletion recorded: Completion evidence.
  • Completion recordedRuntime validation accepted: Final checks pass.
  • Runtime validation acceptedFinal consumer: Eligible value.
  1. Preview. Partial data is provisional. Active: Response R, Partial snapshot, Provisional preview. New: Response R, Partial snapshot, Provisional preview.
  2. Completed. Completion evidence arrives. Active: Response R, Partial snapshot, Provisional preview, Completion recorded. New: Completion recorded.
  3. Validated. Final checks permit consumption. Active: Response R, Partial snapshot, Provisional preview, Completion recorded, Runtime validation accepted, Final consumer. New: Runtime validation accepted, Final consumer.
  • Duplicate membersChoose an explicit parsing policy. JSON consumers can reject duplicate names, preserve multiple pairs, or retain one value; successful parsing does not guarantee agreement.
  • CoercionDocument accepted conversions. Pydantic demonstrates that strict JSON parsing can accept representations rejected by strict validation of corresponding Python objects. The input path matters.
  • Resource limitsBound accepted size and nesting for the chosen parser. Braces inside strings and escaped quotation marks require grammatical recognition; counting punctuation is insufficient.
  • RepairTreat repaired text as a new candidate requiring validation. Restructuring an answer can change its meaning, including when a smaller model performs the repair.

A published partial-parsing example retains two completed strings while discarding an unfinished third; ordinary parsing rejects the incomplete array. Another incomplete object can already validate against a model. These examples establish that obtaining a valid value does not establish that the original response finished.

Streaming completed records and streaming partial previews serve different consumers. A UI may display an evolving object, while an executor waits for the call's completion signal and final checks. Keep previews explicitly provisional so defaults or omitted unfinished fields cannot silently become final action arguments.

Meaning beyond schema acceptance

Semantic validation checks values in their business context. A string can have the correct representation while identifying the wrong ticket. A domain invariant is a consistency rule that valid application states must preserve. A referential check establishes that an identifier points to an existing eligible record.

Checks on the same proposed assignment
ObligationEvidenceRemaining limitation
RepresentationRuntime validation accepts the argument object.Well-typed identifiers can still identify the wrong records.
Reference and membershipAuthoritative lookup finds the ticket and an assignee eligible for its project.Eligibility does not establish the requesting user's permission.
Cross-field ruleThe proposed project agrees with the ticket's project.Internal consistency does not establish intended meaning.
IntentThe request identifies which of two similarly named users should receive the ticket.Without distinguishing information, clarification is more defensible than guessing.

A system of record is the designated authoritative source for a business fact. Privacy and Data Governance explains its ownership and field meanings. Checks against that system establish facts such as current membership; they cannot reconstruct an ambiguous intention that the user never supplied.

A precondition is an obligation before invocation; a postcondition states what successful execution owes. Schema acceptance establishes only specified properties of a value. It does not establish the intended state change. Acceptance criteria connect success to observable outcomes rather than attractive representations.

  • Consistency without fidelityReceipt line items can reconcile with an extracted total while all values were misread from the image. A cross-field validator catches inconsistency, not every extraction error.
  • Evidence without supportRequiring a verification trail helps block unsupported claims. Merely attaching a source still leaves the separate obligation to establish that it supports the assertion.

Tool contracts and operation selection

A tool definition gives the model a stable name, purpose, and argument contract. Its result contract and operational behavior tell the executor and downstream consumers what to expect. Descriptions guide selection; application code enforces the operation. Interfaces differ in which of these elements they expose directly.

Constructed ticket interfaces
Contract elementread_ticketassign_ticket
PurposeRetrieve current ticket state.Change the assigned user.
ArgumentsTicket identifier.Ticket, assignee, and expected revision.
ResultVisible fields and observed revision.Confirmed change, rejection, or a pending-operation handle.
Operational obligationEnforce read access.Enforce write access and stated preconditions before mutation.

Select according to the information needed

Example

Missing information changes the appropriate operation.

This ticket policy distinguishes answering, clarification, reading, and proposing a write. A write proposal still requires authorization.
Read the diagram as text
  • Request and available evidence.
  • Answer without a call.
  • Request clarification.
  • Read authoritative state.
  • Propose assignment.
  • Request and available evidenceAnswer without a call: No operation needed.
  • Request and available evidenceRequest clarification: Intent or target ambiguous.
  • Request and available evidenceRead authoritative state: Intent clear; current facts missing.
  • Request and available evidencePropose assignment: Change specified; facts established.

Command-query separation separates operations intended to change state from requests for information. That distinction helps callers reason about effects; it does not exempt reads from permission checks or resource limits. Credentials and the identity being represented belong in trusted execution context, rather than fields that the model may invent.

  • Fixed orchestrationApplication code can choose a mandatory operation directly. A known prerequisite need not become another model-selection task.
  • Model selectionThe application supplies eligible tools; the model chooses among their declarations. Larger catalogues introduce more alternatives to distinguish. Broader planning belongs in Agent Engineering.
  • Selection controlsDepending on the interface, controls permit no call, require a call, or restrict eligible tools. Forcing selection does not supply missing facts.

Model Context Protocol, or MCP, standardizes exchanges between a host application's clients and capability servers. Those exchanges can discover and invoke tools. The model-facing proposal and the application's server invocation remain different interfaces; neither connectivity nor discovery grants execution authority. Model Context Protocol covers roles, transport, and lifecycle.

Authorized dispatch and call identity

A principal is the person or service whose authority is exercised. Authorization determines permitted operations on particular resources. A trust boundary is a crossing where incoming data or claimed authority needs checking. Obtain identity from trusted application context, not a generated claim of consent. Access governance and AI Security explain the broader boundaries.

When policy requires approval, bind it to the operation's significant details, identity, and lifetime. Changing the target or arguments invalidates the prior approval. Recheck relevant permissions and current state at execution: time-of-check to time-of-use failures occur when the checked operation differs from the one actually performed.

Generated data meets trusted authority

Example

Arguments do not supply their own permission.

The constructed service admits only permitted, sufficiently approved requests. Its write-time revision check rejects stale changes.
Read the diagram as text
  • Validated arguments.
  • Trusted principal.
  • Policy and required approval.
  • Execution gate.
  • Denied: no invocation.
  • Atomic revision check.
  • Conflict: no change.
  • Apply assignment.
  • Validated argumentsExecution gate: Data: proposed change.
  • Trusted principalExecution gate: Authority: actor.
  • Policy and required approvalExecution gate: Authority: conditions.
  • Execution gateDenied: no invocation: Control: requirements unmet.
  • Execution gateAtomic revision check: Control: permitted.
  • Atomic revision checkConflict: no change: Control: revision differs.
  • Atomic revision checkApply assignment: Control: revision matches.
  • Approval placementPut mandatory review in the execution path, rather than exposing a separate review tool the model can skip. The n8n demonstration describes intercepting ordinary tool invocations before execution.
  • Approver authorityAn approval does not override missing permission. Kim Maida's demonstration rejects an approved restart when the approver lacks the required role.
  • Streaming assemblyAccumulate argument fragments separately by call identity and wait for documented completion before reconstructing and executing a call.

Argument validation applies parsing, schema, and domain checks to a proposed invocation. A registry maps permitted names to implementations. Dispatch through that registry instead of evaluating generated text. Return results with the originating call identifier; completion order and function name cannot reliably distinguish several outstanding calls.

Illustrative pseudocode Python-like pseudocode
# Interface-neutral: pre-invocation checks raise typed rejections.
def dispatch(call, context):
    require(call.status == "complete")
    handler = registry.require_known(call.name)
    args = parse_json(call.arguments, reject_duplicates=True)
    handler.validate_schema(args)
    handler.validate_domain(args, context)
    authorize(context.principal, handler, args)
    require_current_approval_if_needed(context, handler, args)
    result = handler.invoke(args, context)
    # Post-invocation validation: effects may already have completed.
    # Failure here does not establish that execution was prevented.
    handler.validate_result(result)
    return tool_result(call.id, result)

For the constructed service, assignment checks the expected revision atomically with the write. An earlier read alone leaves a race. This is optimistic concurrency control: reject a change based on stale state. HTTP If-Match provides an analogous precondition when the endpoint supports it; a failed comparison prevents applying the method.

Independent reads may execute concurrently. A write whose arguments require a read must wait for its actual result. Several proposals emitted together do not establish independence, and a model-generated guess cannot substitute for the prerequisite observation.

Results and justified completion claims

A result envelope associates an observation with its operation and status. Validate returned values before downstream use. Tool execution errors can be represented separately from protocol errors; neither should be converted into success merely because a response arrived. The versioned MCP tools contract explicitly distinguishes these error paths.

ObservationPermitted reportUnsupported inference
Accepted for processingThe operation was accepted and remains pending.The assignment finished. HTTP 202 does not establish completion.
Operation handleTrack this operation for its eventual result.A visible handle or provisional resource is ready for use.
Confirmed completed assignmentThe service confirmed the ticket's new assignee.Every downstream notification or user interface also updated.
Authoritative rejection before executionThe requested change was rejected.The rejection is a successful assignment.
Timeout without authoritative outcomeThe outcome remains unconfirmed.The write failed and can safely be replaced with a new operation.

An empty body also needs interpretation through the endpoint contract. HTTP 204 indicates successful fulfillment without response content. For asynchronous operations, distinguish errors that prevent starting from failures occurring after acceptance; a start response cannot stand in for the eventual operation result.

Large results can be stored outside model context and summarized. Keep the authoritative identifier, outcome status, retrieval reference, and explicit omissions in the representation supplied downstream. A shorter summary must not turn partial evidence into a complete answer. Context Engineering covers selection and compaction.

  • Data versus authorityReturned content is input to interpret, not permission to perform its embedded instructions. Protocol interoperability leaves access controls and trust decisions with implementers; AI Security develops this distinction.
  • Final reportingConstruct the final answer from observed results. A proposal, dispatch attempt, and confirmed effect are separate events even when the model can describe all three fluently.

Boundary failures and bounded correction

Recovery depends on both the failed boundary and whether execution could already have occurred. A model refusal, an application rejection, and a tool failure are different outcomes. A repair request changes candidate data; it does not establish permission or resolve an uncertain external effect.

Failed boundaryExecution knowledgeRecovery
Refusal or incomplete generationNo complete dispatchable proposal.Expose that outcome; do not manufacture missing arguments.
Parsing or schemaRejected before invocation.Return actionable errors and allow bounded regeneration.
Meaning or selectionThe proposed action is unsuitable or underspecified.Obtain authoritative information or clarification instead of forcing a call.
AuthorizationExecution is prohibited.Stop or use an explicit escalation path; formatting retries cannot grant permission.
Write preconditionThe attempted change was rejected as stale.Read current state and reassess the intended operation.
Execution or result deliveryAn effect may already exist.Determine status before deciding whether repeating the operation is safe.
Result validationAn observation arrived but violates its contract.Withhold unsupported completion claims and investigate the operation.

Useful validation feedback identifies the rejected field and violated rule. In Samuel Colvin's extraction demonstration, a date validator rejects an interpretation, the framework returns the error, and another final-result call supplies a corrected value. That trace demonstrates repair for one case, rather than guaranteed convergence.

Preserve the original request and relevant errors across correction attempts. Set attempt or elapsed-time limits and retain exhausted-attempt information. Instructor documents both bounded stopping and contextual re-asking. General retry scheduling belongs in Harness Engineering; the invocation boundary must still expose an explicit terminal outcome.

  • Correction traceA candidate violates a deterministic rule; feedback describes the violation; a replacement candidate is generated; validation runs again. Passing the replacement onward requires the normal execution gate.
  • Fail closedWhen permission cannot be established, do not execute. Every corrected proposal requires permission checks again; changing the candidate does not inherit authority from a rejected attempt.

Uncertain effects and safe retries

A ticket write can commit before its response is lost. The caller then lacks knowledge of the outcome; the service has not necessarily failed. Durable execution has the same gap when an external effect completes before its result is recorded. Replaying recorded history cannot recover a completion that was never recorded.

Idempotency means repeated attempts have no additional intended effect beyond one execution. An idempotency key identifies the same logical operation across retries. Duplicate prevention depends on the receiving service coordinating that identity with the mutation; merely writing the key into a client log does not protect the external effect.

Committed state, uncertain caller

Example

Losing a response changes knowledge, not the committed effect.

1 / 4 · Submitted

A carries operation O.

Operation O and attempt A persist across snapshots. A keyed status lookup later resolves the caller's uncertainty without another assignment.
Read the diagram as text
  • Operation O.
  • Attempt A.
  • Service: assignment committed.
  • Response lost.
  • Caller: outcome unknown. Historical observation after loss.
  • Keyed status confirms completion.
  • Caller: completion established.
  • Operation OAttempt A: Submitted as.
  • Attempt AService: assignment committed: Produces effect.
  • Service: assignment committedResponse lost: Reply lost afterward.
  • Response lostCaller: outcome unknown: Leaves uncertainty.
  • Operation OKeyed status confirms completion: Correlates lookup.
  • Service: assignment committedKeyed status confirms completion: Recorded outcome.
  • Keyed status confirms completionCaller: completion established: Resolves uncertainty.
  1. Submitted. A carries operation O. Active: Operation O, Attempt A. New: Operation O, Attempt A.
  2. Committed. The service applies the assignment. Active: Operation O, Attempt A, Service: assignment committed. New: Service: assignment committed.
  3. Uncertain. The caller loses the response. Active: Operation O, Attempt A, Service: assignment committed, Response lost, Caller: outcome unknown. New: Response lost, Caller: outcome unknown.
  4. Reconciled. Authorized status lookup establishes completion. Active: Operation O, Attempt A, Service: assignment committed, Response lost, Caller: outcome unknown, Keyed status confirms completion, Caller: completion established. New: Keyed status confirms completion, Caller: completion established.
Three identities with different jobs
IdentityPurposeAcross a retry
Call identifierMatch a model request with its tool-result message.A new model proposal can have a different call identifier.
Operation identifierRepresent one business intent for service-side deduplication.Preserve it when retrying that same intent.
Attempt identifierDistinguish individual submissions and observations.Each submission is a separate attempt, even when the operation is unchanged.

Assume the constructed ticket service scopes keys to the caller, rejects changed parameters, atomically records each key with its mutation, and retains operation results throughout the retry window. It also exposes an authorized status lookup. These are explicit service requirements, not properties supplied by the schema or client library.

Reconciliation resolves uncertainty using authoritative evidence. Look up the operation by its retained identifier. A completed result supports reporting completion without another mutation. A read showing the desired assignee is weaker when another actor could have made that change. Inconclusive evidence leaves the operation unresolved.

  • Duplicate-protection limitsProvider retention and parameter rules matter. Stripe can prune keys after they are at least 24 hours old; reusing a pruned key creates a new request. It also replays stored failures, including HTTP 500. Replacing an uncertain operation's key is not a safe way to bypass that response.
  • Changed intentChanging the assignee creates a different proposed action. Reassess preconditions and required approval instead of reusing authorization for the earlier arguments.
  • CancellationA cancellation request does not establish rollback. One documented Google API uses best-effort asynchronous cancellation and requires checking the operation afterward; it can complete despite the request. Treat the actual service's cancellation contract as authoritative.
  • Recovery scopeA task may execute again if its effect occurred before checkpoint completion. Harness Engineering covers durable recovery; saved execution state still does not replace external duplicate protection.

Interface verification through state and failures

A fixture supplies controlled initial data; a trial executes a task; a trajectory records observations and actions. Executable evaluation cases explain these foundations. For an interface, inspect required calls as well as resulting state: a read can be essential while leaving the database unchanged.

BFCL V3 combines state checks with required execution-path checks on each turn. This illustrates why final state alone can miss skipped information gathering. The ticket cases below are a proposed test design: they specify what the boundary should preserve, rather than report measured reliability.

Boundary scenarios and test oracles
Injected conditionRequired observationForbidden effect
Malformed or truncated outputExplicit parse or completion failure.No dispatch from a partial candidate.
Well-typed nonexistent identifierReference validation rejects it.No mutation using an invented record.
Ambiguous assigneeClarification or explicit unresolved result.No guessed assignment.
Unknown operation nameRegistry rejection.No dynamically evaluated generated code.
Denied resource accessPermission rejection.No unauthorized read or write.
Stale expected revisionConflict without applying the proposed change.No overwrite based on stale state.
Malformed tool resultResult-contract failure is retained.No unsupported success report.
Response lost after commitReconciliation preserves operation identity.No replacement mutation merely because of timeout.
Duplicate deliverySame keyed operation remains one intended effect.No extra effect within the service's deduplication contract.
Cancellation races with completionReport the eventual observed outcome.No inferred rollback from cancellation acknowledgment.
Authorized successful assignmentRequired reads, persisted state, and final report agree.No claim beyond the observed result.

Deterministic boundary tests inject fixed proposals and failures, then assert allowed transitions and forbidden effects. Property-based testing generates many inputs against an executable predicate—for example, supported values survive serialization round trips. Generating unusual inputs is not itself an oracle, and reproducing a validator's implementation in its test can reproduce the same defect.

Repeated model trials assess different behavior: selection, argument meaning, clarification, and final reporting. Keep structural acceptance separate from task success. Retain refusals, rejections, and unresolved outcomes in the results rather than evaluating only completed successes. A passing deterministic dispatcher test does not establish that the model chooses appropriate actions.

  • Investigable failuresRetain the failed gate, violated contract, and reason. Connect call, operation, and attempt identities so an investigator can distinguish regeneration from repeated execution. Observability explains identity across those boundaries.
  • Contract changesPrompt, schema, validator, or tool changes can break downstream assumptions. Re-run boundary tests and relevant model trials together; a newly valid shape can still violate the consumer's substantive requirements.

Open questions

  1. Portable constraint enforcement remains difficult when validators and generation engines support different schema features. Silent omissions can weaken an accepted contract. Progress would be a versioned conformance corpus that exposes unsupported constraints explicitly and tests identical boundary instances across engines.

  2. The effect of grammar constraints on task meaning remains workload-dependent. Locally legal token selection differs from conditioning on complete valid outputs. Progress requires matched evaluations that separate structural acceptance from content correctness while controlling the schema, model, and selection procedure.

  3. Meaning-preserving repair remains harder than satisfying another validator. A correction can remove an error while altering supported facts. Progress would track original evidence, changed fields, and independently judged task correctness across bounded retries, including exhausted cases.

  4. Recovery remains unresolved when a provider offers neither durable duplicate protection nor operation-specific status evidence. A checkpoint cannot determine an unrecorded external effect. Progress requires a receiver contract that resolves late retries, or an explicit unresolved outcome that prevents automatic duplicate submissions.

Follow the curated reading path through the speakers and demonstrations behind this entry.

Explore more talks

The rest of the library, beyond the curated path. Cited talks support this entry; reviewed transcripts were processed in full. Metadata candidates have not been reviewed as sources or verified as topic members.

182 matching talks

TalkSpeakerEventYear
Jason LiuAI Engineer World's Fair 20242024
Charlie GuoAI Engineer World's Fair 20252025
Ishan AnandAI Engineer World's Fair 20242024
AI Engineering 101

Transcript reviewed

Noah HeinAI Engineer Summit 20232023
Jamie Neuwirth, Zack WittenAI Engineer World's Fair 20242024
Daniel ChalefAI Engineer World's Fair 20262026
Vinoo GaneshAI Engineer World's Fair 20262026
Ilan BigioAI Engineer Summit 20252025
Erik MeijerAI Engineer World's Fair 20262026
Vinoth GovindarajanAI Engineer World's Fair 20262026
Sumaiya ShrabonyAI Engineer World's Fair 20262026
Fuzzing in the GenAI Era

Transcript reviewed

Leonard TangAI Engineer World's Fair 20252025
Frank CoyleAI Engineer World's Fair 20262026
Charles FryeAI Engineer Summit 20232023
Bobby Tiernay, Kam SweenAI Engineer World's Fair 20252025
Skills are the New SDKs

Transcript reviewed

Elvin AghammadzadaAI Engineer World's Fair 20262026
Philipp SchmidAI Engineer World's Fair 20252025
Kent C. DoddsAI Engineer World's Fair 20252025
John WelshAI Engineer World's Fair 20252025
Nimrod HauserAI Engineer Europe 20262026
Identity for AI Agents

Transcript reviewed

AI Engineer Code 20252025
Liam McGarrigleAI Engineer Europe 20262026
Cornelia DavisAI Engineer Code 20252025
Erik HanchettAI Engineer World's Fair 20262026
Shaan DesaiAI Engineer Summit 20252025
Zach BlumenfeldAI Engineer World's Fair 20252025
Cedric ClyburnAI Engineer World's Fair 20262026
Bilge YücelAI Engineer Europe 20262026
Dex HorthyAI Engineer World's Fair 20252025
A Genius With Amnesia

Metadata candidate

Victor SavkinAI Engineer World's Fair 20262026
Shelby HeineckeAI Engineer World's Fair 20242024
Tim AingeAI Engineer World's Fair 20262026
A Song of Types and Agents

Metadata candidate

Roberto StagiAI Engineer World's Fair 20262026
Ari HeljakkaAI Engineer Summit 20252025
Bala RamdossAI Engineer World's Fair 20262026
Cedric VidalAI Engineer World's Fair 20252025
Sam BhagwatAI Engineer World's Fair 20252025
Christopher ChedeauAI Engineer World's Fair 20252025
Charles FryeAI Engineer Summit 20232023
swyxAI Engineer World's Fair 20242024
Nick Nisi, Zack ProserAI Engineer World's Fair 20252025
AI’s Jurassic Park Period

Metadata candidate

Aaron StanleyAI Engineer World's Fair 20262026
Apoorva JoshiAI Engineer World's Fair 20262026
Frank CoyleAI Engineer World's Fair 20262026
Lance MartinAI Engineer World's Fair 20242024
Sina ShahandehAI Engineer World's Fair 20262026
Arjun Chintapalli, Bhavani KalisettyAI Engineer Summit 20252025
Filip KozeraAI Engineer World's Fair 20252025
Grace IsfordAI Engineer Summit 20252025
Rajiv ChandegraAI Engineer World's Fair 20262026
Łukasz GandeckiAI Engineer World's Fair 20252025
Paul HenryAI Engineer World's Fair 20242024
Angus J. McLeanAI Engineer Europe 20262026
Greg BensonAI Engineer World's Fair 20252025
Paul Klein IVAI Engineer World's Fair 20262026
Build Systems, Not Code

Metadata candidate

Angie JonesAI Engineer World's Fair 20262026
Raj NavakotiAI Engineer Europe 20262026
Louis-François Bouchard, Paul Iusztin, Samridhi VaidAI Engineer Europe 20262026
Will BrykAI Engineer World's Fair 20252025
Jerry LiuAI Engineer World's Fair 20252025
Bennet FennerAI Engineer Europe 20262026
Ben KusAI Engineer World's Fair 20252025
Eugene YanAI Engineer Summit 20232023
Anoop Kotha, Toki SherbakovAI Engineer World's Fair 20252025
Simrat HanspalAI Engineer Summit 20232023
Michael FesterAI Engineer World's Fair 20252025
Anju KambadurAI Engineer Summit 20252025
Sunil PaiAI Engineer Europe 20262026
Dhruv BatraAI Engineer World's Fair 20262026
Dmytro (Dima) DzhulgakovAI Engineer World's Fair 20242024
Zeke SikelianosAI Engineer World's Fair 20252025
Ornella Bahidika, Joel AllouAI Engineer World's Fair 20262026
Laurie VossAI Engineer World's Fair 20252025
Kevin HouAI Engineer World's Fair 20242024
Maxime LabonneAI Engineer Europe 20262026
Theo BrowneAI Engineer World's Fair 20262026
Ankur GoyalAI Engineer World's Fair 20252025
Rafael LeviAI Engineer Europe 20262026
Samuel ColvinAI Engineer Code 20252025
Thor SchaeffAI Engineer Europe 20262026
Jerry LiuAI Engineer World's Fair 20242024
Kenton VardaAI Engineer World's Fair 20262026
Gateways are All You Need

Metadata candidate

Karan SampathAI Engineer Europe 20262026
Emil EifremAI Engineer World's Fair 20242024
Jonathan LarsonAI Engineer World's Fair 20252025
Iman MakaremiAI Engineer World's Fair 20252025
Rashi AgrawalAI Engineer World's Fair 20262026
Tanmai GopalAI Engineer World's Fair 20242024
Vasant KearneyAI Engineer World's Fair 20262026
Vinoo GaneshAI Engineer World's Fair 20262026
Patrick DoughertyAI Engineer Summit 20252025
Yogendra MirajeAI Engineer World's Fair 20252025
Jared HansonAI Engineer World's Fair 20252025
Ben KunkleAI Engineer Europe 20262026
Mustafa Ali, Kyle CorbittAI Engineer Summit 20252025
Sally-Ann DeLuciaAI Engineer Europe 20262026
Amol KapoorAI Engineer World's Fair 20262026
Imagination Engineering

Metadata candidate

Eve BouffardAI Engineer World's Fair 20262026
Yu SuAI Engineer World's Fair 20262026
Intro to GraphRAG

Metadata candidate

Zach BlumenfeldAI Engineer World's Fair 20252025
Sarthak AggarwalAI Engineer World's Fair 20262026
Robert ChandlerAI Engineer World's Fair 20252025
Tom SmokerAI Engineer World's Fair 20252025
Kam LasaterAI Engineer Summit 20252025
Danilo CamposAI Engineer Europe 20262026
Dat NgoAI Engineer Europe 20262026
Thierry Moreau, Pedro TorruellaAI Engineer World's Fair 20242024
Hubert MisztelaAI Engineer World's Fair 20242024
Shafik Quoraishee, Joanne SongAI Engineer World's Fair 20262026
Kelvin MaAI Engineer World's Fair 20252025
Lin Qiao, Dmytro (Dima) DzhulgakovAI Engineer World's Fair 20242024
Eashan SinhaAI Engineer World's Fair 20252025
Ronan McGovernAI Engineer World's Fair 20252025
MCP is all you need

Metadata candidate

Samuel ColvinAI Engineer World's Fair 20252025
David CramerAI Engineer World's Fair 20252025
Stefania DrugaAI Engineer World's Fair 20262026
Mentoring the Machine

Metadata candidate

Eric HouAI Engineer World's Fair 20252025
Ilan BigioAI Engineer World's Fair 20252025
Ola MabadejeAI Engineer World's Fair 20252025
Rami AlhamadAI Engineer World's Fair 20252025
Ahmed MenshawyAI Engineer World's Fair 20242024
Sharif ShameemAI Engineer World's Fair 20252025
Lech KalinowskiAI Engineer World's Fair 20262026
Jeronim MorinaAI Engineer World's Fair 20242024
Samuel ColvinAI Engineer Europe 20262026
Pragmatic AI With TypeChat

Metadata candidate

Daniel RosenwasserAI Engineer Summit 20232023
Luke AlvoeiroAI Engineer Europe 20262026
Ben FlastAI Engineer World's Fair 20242024
Yuval Belfer, Niv GranotAI Engineer World's Fair 20252025
RAG for VPs of AI

Metadata candidate

Jerry LiuAI Engineer World's Fair 20242024
Rewiring the State

Metadata candidate

Eoin MulgrewAI Engineer Europe 20262026
Max RyabininAI Engineer Europe 20262026
Mozhgan Kabiri ChimehAI Engineer Europe 20262026
Scaffold Wisely

Metadata candidate

Rahul SengottuveluAI Engineer Summit 20252025
Onur SolmazAI Engineer Europe 20262026
Scaling Compute on Context

Metadata candidate

Jack MorrisAI Engineer World's Fair 20262026
Al HarrisAI Engineer Code 20252025
Steven WillmottAI Engineer Europe 20262026
Rob CheungAI Engineer World's Fair 20242024
Barr YaronAI Engineer World's Fair 20252025
Tara AgyemangAI Engineer Europe 20262026
Kevin Madura, Mo BhasinAI Engineer World's Fair 20252025
Travis FrisingerAI Engineer World's Fair 20252025
The End of Apps

Metadata candidate

KitzeAI Engineer Europe 20262026
Dylan PatelAI Engineer World's Fair 20252025
Ofer MendelevitchAI Engineer Summit 20252025
Almog BakuAI Engineer Summit 20252025
The Log Is The Agent

Metadata candidate

Ishaan SehgalAI Engineer World's Fair 20262026
Diego Rodriguez, Eugene, Jonas Bauer, Shijia Liao, David Vorick, Alex AtallahAI Engineer World's Fair 20252025
Ted JohnsonAI Engineer World's Fair 20262026
Omer PrimorAI Engineer World's Fair 20262026
Amir HaghighatAI Engineer World's Fair 20252025
Cormac BrickAI Engineer Europe 20262026
Trust, but Verify

Metadata candidate

Shreya RajpalAI Engineer Summit 20232023
Useful General Intelligence

Metadata candidate

Danielle PerszykAI Engineer World's Fair 20252025
Jeff SchomayAI Engineer Summit 20232023
Anna Marie BenzonAI Engineer World's Fair 20262026
Nico AlbaneseAI Engineer Summit 20252025
Harald KirschnerAI Engineer World's Fair 20252025
Vision: Zero Bugs

Metadata candidate

Johann Schleier-SmithAI Engineer Code 20252025
Dippu Kumar SinghAI Engineer Europe 20262026
Moritz JohnerAI Engineer World's Fair 20262026
Nicholas ArcolanoAI Engineer Code 20252025
DottaAI Engineer World's Fair 20262026
Charles FryeAI Engineer World's Fair 20252025
Aditya BhargavaAI Engineer World's Fair 20262026
Alex AlbertAI Engineer World's Fair 20242024
Dmitry PetrovAI Engineer World's Fair 20262026
Sam JulienAI Engineer World's Fair 20252025
Cormac BrickAI Engineer World's Fair 20262026
Dr. Jasper ZhangAI Engineer World's Fair 20252025
Jesús BarrasaAI Engineer World's Fair 20252025
Zach BlumenfeldAI Engineer Europe 20262026
Ari HeljakkaAI Engineer World's Fair 20252025
Chin Keong LamAI Engineer World's Fair 20252025
Balázs HorváthAI Engineer World's Fair 20262026
Rachel Lee Nabors (RL Nabors)AI Engineer Europe 20262026
Hamza TahirAI Engineer World's Fair 20262026
Zack ProserAI Engineer Europe 20262026
Ramana Siddanth EmaniAI Engineer World's Fair 20262026
Tun Shwe, Jeremy FrenayAI Engineer Europe 20262026
AI Engineer Summit 20252025

References

Coverage and source review
Processed transcripts
30 processed in full · 5 in the curated path
Automated source review
Passed
Metadata candidates
157 unreviewed; not verified topic membership
Corpus version
1bd8e407b26a07b33815594e1b2db5f41827119a2b3cb6fbf240f9fc571fc767

Automated review checks source support; it is not publication approval.

A synthesis of selected conference talks and technical references. Citations link to the source material; they do not imply that every talk on this subject is included.

  1. Function Calling is All You Need

    Raw function calling expresses the model's intended action; application code must execute it. In the speaker's API terminology, tools are a broader category that also includes hosted capabilities.

  2. Your Agent Didn’t Fail. Your Harness Did.

    Internal acceptance does not prove the intended result appeared at the user-visible boundary.

  3. AI Engineering 201: The Rest of the Owl

    A standard function schema can serve both as a general tool interface and as an extraction contract whose arguments are the desired result.

  4. Function calling with the Gemini API

    Tool-selection, dispatch-and-correlation, and interface-boundary: Function calling modes, Stream tool calls, and Function calling with Structured output.

  5. JSON Schema: Object reference

    Official JSON Schema object guide, required, additionalProperties, and unevaluatedProperties.

  6. Pydantic is all you need

    Put field descriptions, nested structures, and associated behavior into the model so the schema and prompting instructions share a reviewable definition.

  7. JSON Schema 2020-12 Validation Primitives

    Sections 6.1.1–6.1.2, type and enum; 6.2.1–6.2.5, numeric validation; 6.4.1–6.4.3, array validation.

  8. JSON Schema Array Items and Tuples

    Items; Tuple validation; Additional items; Contains; Length; Uniqueness.

  9. OWASP Input Validation Cheat Sheet

    Semantic-correctness and result handling: Goals, Input Validation Strategies, and Implementing Input Validation.

  10. JSON Schema: Annotations

    Schema-contract: default, description, and examples annotations.

  11. JSON Schema: Boolean schema combination

    Official composition guide and examples; result variants are application design using those semantics.

  12. JSON Schema Dialect Declaration

    Dialect and vocabulary declaration, introductory definition and $schema section.

  13. Understanding and counting tokens — OpenAI

    Official definitions, full-request accounting, reasoning-token and model-limit sections inspected.

  14. Generation strategies — Transformers

    Official generation guide, greedy search, sampling, beam search, and generation-length configuration.

  15. Accurately Computing Softmax Probabilities

    Section 1, equations 1.2 and 1.4; application to next-token scores is an explanatory inference.

  16. No more bad outputs with structured generation

    Outlines filters candidate tokens during generation rather than relying only on instructions to produce valid output.

  17. Structured model outputs — OpenAI API

    Official guide, supported schemas, refusal handling, incomplete responses, and handling mistakes.

  18. Introducing Structured Outputs in the API — OpenAI

    Official engineering explanation, constrained decoding and CFG discussion.

  19. XGrammar Token Alignment and Cached Masks

    Sections 2.1–2.2 and 3.1–3.5: token representation, pushdown execution, adaptive token mask cache, context expansion, persistent stacks, automaton optimization, and inference overlap.

  20. No more bad outputs with structured generation

    Constraints can shorten responses and avoid model generation of predictable structural tokens.

  21. Grammar-Aligned Decoding

    Primary paper v1, section 2, expected future grammaticality and limitations of grammar-constrained decoding.

  22. llama.cpp: Grammars and JSON Schema conversion

    Official repository grammar documentation, JSON Schema support and troubleshooting.

  23. Structured model outputs: supported contracts and incomplete responses

    Official guide: schema support, refusals, incomplete response handling, mistakes and streaming sections.

  24. Your Agent Didn’t Fail. Your Harness Did.

    Bound external waits, record terminal outcomes, and keep recovery commands outside the blocked work queue.

  25. TypeScript Handbook: The Basics

    Completion-parsing-validation: Erased Types section.

  26. Pydantic is all you need

    Structured output needs schema validation and typed parsing, not merely a reliably located JSON string.

  27. RFC 8259: JSON object member uniqueness

    Section 4; supplements the reused string-escaping note without repeating it.

  28. Pydantic: JSON parsing and partial JSON parsing

    Completion-parsing-validation: published fixtures illustrating partial parsing and input-path-dependent validation.

  29. JSON String Escapes and Structural Recognition

    Sections 3–5, recursive value/object/array grammar; section 7, string grammar; section 9, parser implementation limits.

  30. AI Engineering 201: The Rest of the Owl

    Schema validation and retries can separate output repair from the main reasoning task, potentially using a smaller model for repair.

  31. Pydantic is STILL all you need

    The talk distinguishes streaming completed objects from streaming partial structured objects for a UI.

  32. Applying Design by Contract

    Software contracts and pre/postcondition example, pp. 42–44; Who should check?, p. 44; Class invariants and Figure 5, p. 45.

  33. Pydantic is all you need

    Separate validation, error handling, and re-asking, and feed validation failures back into a bounded retry process.

  34. JSON Schema: Objects

    Official JSON Schema object reference; properties, required and additionalProperties examples.

  35. OWASP Authorization Cheat Sheet

    Action-authorization, failure-handling, and interface-verification: Introduction, Least Privileges, Deny by Default, and Validate Permissions on Every Request.

  36. Design by Contract Introduction

    Sections 2–3, client/supplier obligations and dictionary example; section 4, tank example; section 5, Invariants.

  37. Pydantic is STILL all you need

    Model-level validators can enforce relationships between fields, not just individual field types.

  38. Every Solo Agent Builder Eventually Reinvents a Worse Version of CI/CD

    Claim-bearing output should be blocked from shipping when it lacks a verification trail.

  39. Tool Calling Is Not Just Plumbing for AI Agents

    Use simple names, instruction-bearing descriptions, and explicit input and output schemas to make tool use and composition understandable.

  40. AIP-151: Long-running operations

    Tool-results: operation handles, progress metadata, and the distinction between start-time rejection and execution-time failure.

  41. MCP tools: application security responsibilities

    User Interaction Model; Tool data type; Output Schema; Error Handling; Security Considerations.

  42. Securing Agents with Open Standards

    Scoped access still needs an explicit connection to the user on whose behalf the agent acts.

  43. Securing Agents with Open Standards

    Have a backend issue short-lived tokens for a specific user and API instead of reusing a static key across callers.

  44. Bending a Public MCP Server Without Breaking It — Nimrod Hauser, Baz

    A mandatory, troublesome workflow prerequisite can be implemented as deterministic orchestration using the same third-party callables.

  45. AI Engineering with the Google Gemini 2.5 Model Family

    MCP standardizes reusable tool integrations; the model still selects tools from declarations and the prompt, as in ordinary function calling.

  46. AI Engineering with the Google Gemini 2.5 Model Family

    Making many tools easy to attach can create a tool-selection problem for the model.

  47. Model Context Protocol: Architecture, revision 2026-07-28

    Official specification revision 2026-07-28, core components and capability model.

  48. OWASP Transaction Authorization Cheat Sheet

    Action-authorization: sections 1.1 and 2.1–2.10; application to concrete tool arguments is an engineering adaptation.

  49. Building Your Own Secure AI Workflows: Human-in-the-Loop Automation with n8n

    Place approval in the execution path so the agent cannot bypass it by choosing to call the underlying tool directly.

  50. It's 10pm. Do You Know Where Your Agents Are?

    Human-in-the-loop approval should be checked against the approver's authority rather than treated as an unconditional override.

  51. OpenAI function calling: results, schemas and parallel calls

    Handling function calls and function-call outputs; Parallel function calling; Strict mode.

  52. Function calling

    Sections 'The tool calling flow', function-call handling examples, and 'Strict mode'.

  53. Tools — Model Context Protocol specification 2025-06-18

    Versioned primary protocol specification; tool definition, errors, and security considerations.

  54. RFC 9110: Conditional requests and successful response semantics

    Sections 13.1.1, 15.3.3, and 15.3.5: stale-write preconditions, pending work, and empty successful responses.

  55. AI Engineering with the Google Gemini 2.5 Model Family

    Independent calls can run together; calls whose inputs depend on earlier outputs require a sequential model-and-tool loop.

  56. Resolving an ambiguous payment request

    Network errors, Server errors and Idempotency; metadata correlation during reconciliation.

  57. Your Agent Is Wasting Tokens and You Don't Know It - Erik Hanchett, AWS

    Store large tool results outside the model context and supply summaries instead of repeatedly including the full results.

  58. Your Agent Didn’t Fail. Your Harness Did.

    Trace one real run from trigger identity through inherited state, authority, execution attempts, and surviving external evidence.

  59. Model Context Protocol: Specification and trust principles, revision 2026-07-28

    Official specification overview, features, and Security and Trust & Safety.

  60. Model Context Protocol: Tools, revision 2026-07-28

    Revision 2026-07-28: capabilities, tools/list and tools/call, list-change notifications, schemas, and errors.

  61. Instructor: Retry Logic with Tenacity

    Failure-handling: Error-Specific Retries, Context-Based Validation, Failed Attempts Tracking, and Always Set Stop Conditions.

  62. Temporal Activity Definition

    Section 'Idempotency', including the three-step activity example, worker-crash scenario, and service-enforced idempotency keys.

  63. Human seeded Evals — Samuel Colvin, Pydantic

    Returning validation errors to the model can turn a failed extraction into a successful retry.

  64. Pydantic is STILL all you need

    Informative validator errors can become conditional prompt feedback for a retry instead of putting every constraint into the initial prompt.

  65. Making Retries Safe with Idempotent APIs

    Retries and semantic equivalence; Late arriving requests and the life span of unique client request identifiers; Same client request ID, different intent.

  66. Stripe retry keys and retention boundaries

    Idempotent requests: response caching, parameter matching, key retention and execution-start exceptions.

  67. Google Cloud Application Design Center: Cancel operation

    Uncertain-effects: a concrete API example distinguishing a cancellation response from the operation's eventual outcome.

  68. LangGraph Functional API: deterministic resumption and idempotency

    Serialization; Determinism; Idempotency; Common pitfalls, including side effects and nondeterminism.

  69. BFCL V3: Multi-Turn and Multi-Step Function Calling

    Interface-verification: Initial Configuration Validation, API Code Validation, Model Inference Process, and Multi-turn Evaluation Metrics.

  70. Building Durable, Production-Ready Agents with OpenAI SDK and Temporal

    The demo combines Temporal dynamic activities with a separate tools module so tool changes do not require rewriting the agent loop.

  71. QuickCheck: Executable Properties and Generated Inputs

    Sections 1–3, automatically checkable criteria, defining properties, conditional properties, and generators; section 6.4, test adequacy limitations. Validator/protocol examples and model-judge distinction are applications.

  72. Selective Classification: Coverage and Conditional Risk

    Section 2, Problem Setting, selection function, coverage definition, and equation 1; empirical formulas are direct specializations.

  73. Every Solo Agent Builder Eventually Reinvents a Worse Version of CI/CD

    An audit trail should identify the failed gate, violated contract, and reason without requiring the entire pipeline to run again.

  74. Every Solo Agent Builder Eventually Reinvents a Worse Version of CI/CD

    The speaker identifies regression testing, CI monitoring, and contract testing as recurring operational needs in independently built agent systems.

  75. Transformers Generation Configuration and Termination

    GenerationConfig, parameters controlling output length; GenerationMixin generation methods; compute_transition_scores output description; add_request eos_token_id.

  76. Your Agent Didn’t Fail. Your Harness Did.

    Approval must remain bound to one specific action and its scope, identity, arguments, and lifetime; expiration should terminate the approval path.

  77. Temporal Activity Definition: Idempotency

    Idempotency section, particularly completion-before-reporting failure and external idempotency-key enforcement.

  78. No more bad outputs with structured generation

    Use domain-specific field constraints instead of treating every extracted value as an unrestricted string.

  79. Tool Calling Is Not Just Plumbing for AI Agents

    Define and execute tools outside the agent framework, then connect them through an SDK or API.