Skip to content

What compiles

Leaseline’s build artifacts, and the eleven things that change when its definition gains one Verb.

A Startup’s definition compiles to every file it serves. Leaseline’s are published here, and one added Verb shows what moves with it.

The artifacts

A build of leaseline.app serves these files. The copies here are rebuilt from the registry on every build of these docs.

ArtifactHoldsSize
openapi.jsonEvery route, 167 operations, with request and response schemas571 KB
sdk/index.d.tsThe types of $: one interface per Noun, one method per Verb94 KB
mcp-tools.jsonThe three MCP tools and the do program for each Verb16 KB
agents.jsonThe card an agent reads first: Interfaces, Offers and Verbs4 KB
app-routes.jsonEvery App screen: a list and a record per Noun, a form per Verb12 KB
dataset-schema.jsonThe JSON Schema of every record Leaseline holds29 KB

One line in the definition

Leaseline declares a Lease Noun in nouns/Lease.mdx. Its founder asks for a way to add months to a Lease without a renewal notice, and the agent adds one line:

DIFF
 verbs:
   renew: { months: integer, increase?: number }
   notify: {}
+  extend: { months: integer }

Eleven things change

WhatAfter the Change
API routePOST /leaseline.app/leases/{lease}/extend
OpenAPI path/leases/{lease}/extend, operationId Lease.extend
SDK method$.Lease.extend(input), typed by LeaseExtendInput
CLI commandnpx startup-builder do Lease.extend
MCP programdo: $.Lease.extend(input)
App form/app/leases/{id}/extend, the button on every Lease screen
VerbSheet<VerbSheet verb="Lease.extend" /> renders its fields and button
EventLease.extended, with the Lease
Watch selectorLease.extended subscribes a webhook
Reference rowLease.extend in the parity matrix and each Interface reference
Changelog noteWritten from the merged Change that adds it

The diff

Each tab is the lines the build adds to one artifact. dataset-schema.json does not change, because the Verb adds no field.

DIFF
+ "/leases/{lease}/extend": {
+   "post": {
+     "operationId": "Lease.extend",
+     "description": "Extend adds months to a Lease’s end date without starting a new term.",
+     "x-event": "Lease.extended"
+   }
+ }