[{"data":1,"prerenderedAt":341},["ShallowReactive",2],{"navigation":3,"\u002Fconcepts\u002Farchitecture":194,"\u002Fconcepts\u002Farchitecture-surround":336},[4,18,31,64,81,102,111,132,149],{"title":5,"path":6,"stem":7,"children":8,"page":17},"Getting started","\u002Fgetting-started","1.getting-started",[9,13],{"title":10,"path":11,"stem":12},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":14,"path":15,"stem":16},"Run your first workflow","\u002Fgetting-started\u002Fquickstart","1.getting-started\u002F2.quickstart",false,{"title":19,"path":20,"stem":21,"children":22,"page":17},"Core concepts","\u002Fconcepts","2.concepts",[23,27],{"title":24,"path":25,"stem":26},"The platform model","\u002Fconcepts\u002Fplatform","2.concepts\u002F1.platform",{"title":28,"path":29,"stem":30},"Architecture and boundaries","\u002Fconcepts\u002Farchitecture","2.concepts\u002F2.architecture",{"title":32,"path":33,"stem":34,"children":35,"page":17},"Installation","\u002Finstallation","3.installation",[36,40,44,48,52,56,60],{"title":37,"path":38,"stem":39},"Overview and requirements","\u002Finstallation\u002Foverview","3.installation\u002F1.overview",{"title":41,"path":42,"stem":43},"Local evaluation","\u002Finstallation\u002Flocal-evaluation","3.installation\u002F2.local-evaluation",{"title":45,"path":46,"stem":47},"Install the server","\u002Finstallation\u002Fserver","3.installation\u002F3.server",{"title":49,"path":50,"stem":51},"Install a runner","\u002Finstallation\u002Frunner","3.installation\u002F4.runner",{"title":53,"path":54,"stem":55},"Verify the installation","\u002Finstallation\u002Fverification","3.installation\u002F5.verification",{"title":57,"path":58,"stem":59},"Upgrade the platform","\u002Finstallation\u002Fupgrades","3.installation\u002F6.upgrades",{"title":61,"path":62,"stem":63},"Guided installer","\u002Finstallation\u002Finstaller","3.installation\u002F7.installer",{"title":65,"path":66,"stem":67,"children":68,"page":17},"Build workflows","\u002Fworkflows","4.workflows",[69,73,77],{"title":70,"path":71,"stem":72},"Build a Definition","\u002Fworkflows\u002Fdefinitions","4.workflows\u002F0.definitions",{"title":74,"path":75,"stem":76},"Deploy and run workflows","\u002Fworkflows\u002Fruns","4.workflows\u002F1.runs",{"title":78,"path":79,"stem":80},"Inputs, context, and secrets","\u002Fworkflows\u002Finputs-and-secrets","4.workflows\u002F2.inputs-and-secrets",{"title":82,"path":83,"stem":84,"children":85,"page":17},"Run and recover","\u002Foperations","5.operations",[86,90,94,98],{"title":87,"path":88,"stem":89},"Monitor Runs","\u002Foperations\u002Fmonitoring","5.operations\u002F1.monitoring",{"title":91,"path":92,"stem":93},"Approve prepared steps","\u002Foperations\u002Fapprovals","5.operations\u002F2.approvals",{"title":95,"path":96,"stem":97},"Recover or cancel execution","\u002Foperations\u002Frecovery","5.operations\u002F3.recovery",{"title":99,"path":100,"stem":101},"Troubleshooting","\u002Foperations\u002Ftroubleshooting","5.operations\u002F4.troubleshooting",{"title":103,"path":104,"stem":105,"children":106,"page":17},"Action catalog","\u002Fcatalog","6.catalog",[107],{"title":108,"path":109,"stem":110},"Find and use Actions","\u002Fcatalog\u002Foverview","6.catalog\u002F1.overview",{"title":112,"path":113,"stem":114,"children":115,"page":17},"Administration","\u002Fadministration","7.administration",[116,120,124,128],{"title":117,"path":118,"stem":119},"Registries and Environments","\u002Fadministration\u002Fenvironments","7.administration\u002F2.environments",{"title":121,"path":122,"stem":123},"Manage runners","\u002Fadministration\u002Frunners","7.administration\u002F3.runners",{"title":125,"path":126,"stem":127},"Access and approval policies","\u002Fadministration\u002Faccess","7.administration\u002F4.access",{"title":129,"path":130,"stem":131},"Backups and upgrades","\u002Fadministration\u002Fmaintenance","7.administration\u002F5.maintenance",{"title":133,"path":134,"stem":135,"children":136,"page":17},"Develop Actions","\u002Factions","8.actions",[137,141,145],{"title":138,"path":139,"stem":140},"Build your first Action","\u002Factions\u002Fquickstart","8.actions\u002F1.quickstart",{"title":142,"path":143,"stem":144},"Local development","\u002Factions\u002Flocal-development","8.actions\u002F2.local-development",{"title":146,"path":147,"stem":148},"Publish an Action","\u002Factions\u002Fpublishing","8.actions\u002F3.publishing",{"title":150,"path":151,"stem":152,"children":153,"page":17},"Reference","\u002Freference","9.reference",[154,158,162,166,170,174,178,182,186,190],{"title":155,"path":156,"stem":157},"Operator CLI","\u002Freference\u002Foperator-cli","9.reference\u002F1.operator-cli",{"title":159,"path":160,"stem":161},"Installer CLI","\u002Freference\u002Finstaller-cli","9.reference\u002F10.installer-cli",{"title":163,"path":164,"stem":165},"Definition syntax","\u002Freference\u002Fdefinition","9.reference\u002F2.definition",{"title":167,"path":168,"stem":169},"CLI configuration","\u002Freference\u002Fconfiguration","9.reference\u002F3.configuration",{"title":171,"path":172,"stem":173},"API integration","\u002Freference\u002Fapi","9.reference\u002F4.api",{"title":175,"path":176,"stem":177},"Action CLI","\u002Freference\u002Faction-cli","9.reference\u002F5.action-cli",{"title":179,"path":180,"stem":181},"Action SDK","\u002Freference\u002Fsdk","9.reference\u002F6.sdk",{"title":183,"path":184,"stem":185},"Contracts and compatibility","\u002Freference\u002Fcontracts","9.reference\u002F7.contracts",{"title":187,"path":188,"stem":189},"Server configuration","\u002Freference\u002Fserver-configuration","9.reference\u002F8.server-configuration",{"title":191,"path":192,"stem":193},"Runner configuration","\u002Freference\u002Frunner-configuration","9.reference\u002F9.runner-configuration",{"id":195,"title":28,"body":196,"description":330,"extension":331,"meta":332,"navigation":333,"path":29,"seo":334,"stem":30,"__hash__":335},"docs\u002F2.concepts\u002F2.architecture.md",{"type":197,"value":198,"toc":321},"minimark",[199,204,269,273,277,280,283,287,290,298,302,305,311,315,318],[200,201,203],"h2",{"id":202},"components-and-responsibilities","Components and responsibilities",[205,206,207,220],"table",{},[208,209,210],"thead",{},[211,212,213,217],"tr",{},[214,215,216],"th",{},"Component",[214,218,219],{},"Responsibility",[221,222,223,237,245,253,261],"tbody",{},[211,224,225,234],{},[226,227,228,229,233],"td",{},"Operator CLI (",[230,231,232],"code",{},"pyplines",")",[226,235,236],{},"Calls the API to deploy, execute, inspect, and administer",[211,238,239,242],{},[226,240,241],{},"Server",[226,243,244],{},"Owns execution state, revisions, authorization, policies, and retained evidence",[211,246,247,250],{},[226,248,249],{},"Runner",[226,251,252],{},"Enrolls with the server and executes inspected Action images using Docker",[211,254,255,258],{},[226,256,257],{},"OCI registry",[226,259,260],{},"Stores versioned Action images that deployments resolve to digests",[211,262,263,266],{},[226,264,265],{},"Action CLI and SDK",[226,267,268],{},"Create and publish new operations when existing Actions are insufficient",[270,271,272],"p",{},"The server stores execution state in SQLite. Embedded NATS JetStream transports invocation IDs to runners, not secrets. Logs live in bounded filesystem storage. The server does not need a Docker socket; runners do.",[200,274,276],{"id":275},"execution-and-concurrency","Execution and concurrency",[270,278,279],{},"Steps execute in declaration order. Conditions can skip steps; there is no parallel branch or loop construct. One Environment executes one Run's attempt at a time. Separate Environments can execute concurrently when their pools have available runners and capacity.",[270,281,282],{},"The Environment's platform must match its runner pool and Action images. Use separate pools for different architectures. Actions with network access need the configured network on the runner.",[200,284,286],{"id":285},"isolation-and-trust","Isolation and trust",[270,288,289],{},"Runners use pinned, inspected images with the fixed SDK entrypoint, a non-root user, a read-only root filesystem, dropped capabilities, and resource limits. Action containers do not receive the Docker socket.",[270,291,292,293,297],{},"Actions are still trusted code: an Action receiving credentials can use them against external systems. Review its behavior and permissions before adopting it. Sensitive steps suppress logs and protect results; see ",[294,295,296],"a",{"href":79},"context and secrets",".",[200,299,301],{"id":300},"recovery-guarantees","Recovery guarantees",[270,303,304],{},"A retry retains prior attempts and does not replay successful steps. It cannot undo effects already performed by a failed Action. Cancellation requests execution to stop; it is not rollback.",[270,306,307,308,297],{},"A runner losing connectivity does not make its work eligible for reassignment. Execution becomes uncertain until the owning runner establishes that its container stopped. Permanent host loss has no automatic recovery path; external fencing and a separately designed administrative recovery process are required. See ",[294,309,310],{"href":96},"recovery",[200,312,314],{"id":313},"current-boundaries","Current boundaries",[270,316,317],{},"Pyplines currently exposes a CLI and API, with no web console, built-in schedules, webhooks, lifecycle hooks, Change Requests, loops, or arbitrary script steps. It does not provide an infrastructure provisioning\u002Fstate engine. Actions may interact with external services, but their capabilities must be supplied and documented separately.",[270,319,320],{},"There is no built-in backup scheduler or installer utility. Administrators operate the services and back up the complete data directory while the server is stopped.",{"title":322,"searchDepth":323,"depth":323,"links":324},"",2,[325,326,327,328,329],{"id":202,"depth":323,"text":203},{"id":275,"depth":323,"text":276},{"id":285,"depth":323,"text":286},{"id":300,"depth":323,"text":301},{"id":313,"depth":323,"text":314},"Understand the server, runner, registry, and execution guarantees.","md",{},true,{"title":28,"description":330},"V2kGjAaZ8l-rTlznGjUxPWWSN-olQ8bnwgkg2AyRh3o",[337,339],{"title":24,"path":25,"stem":26,"description":338,"children":-1},"Follow a workflow from reusable Actions to deployed revisions and execution evidence.",{"title":37,"path":38,"stem":39,"description":340,"children":-1},"Choose a deployment layout and prepare networking, storage, and platform versions.",1792213697266]