# Interruption and resumption cases

These are troubleshooting paths, not product error codes or guaranteed causes.
Read the actual release's status/reason first. Each row names the next permitted
step and the evidence needed to return. An unexpected result remains unknown
until its cause and correction are established.

## Installation and dependencies

| Case / observation | Next step and owner | Return evidence / stop boundary |
|---|---|---|
| I01 Package checksum differs | Installation skill; retain candidate, obtain verified package | Trusted expected identity matches; no force install |
| I02 OS or CPU differs | Administrator selects the supported OS/CPU package | Actual package/platform match; Builder cannot repair a binary mismatch |
| I03 install.sh lacks adjacent files | Obtain the complete appliance assembly | Required manifest/binaries/scripts/units supplied; never fetch arbitrary files |
| I04 Installer requires root | Authorized administrator performs the install | Installer exit and health; no agent privilege expansion |
| I05 Another release is installed | Supported upgrade/recovery procedure | Preserved old/new identity and validated disposition; no manifest overwrite |
| I06 Installation interrupted | Read retained installer/current state before another install | Exact stage and partial effects established; do not assume rerun is idempotent |
| I07 VM/process active, health not ready | Installation/headless health and readiness procedure | Actual ready state, identity and first-boot result |
| I08 Offline set missing/wrong platform | SDK dependency verification; approved prerequisite provisioning | Exact set/platform verification and native prerequisites; no silent download |
| I09 Disk/memory/native compiler failure | Preserve first OS/tool error; verify resource/prerequisite cause | Required resources actually available; do not classify a timeout as memory failure |

## Connection and runtime binding

| Case / observation | Next step and owner | Return evidence / stop boundary |
|---|---|---|
| B01 Endpoint times out | GUI/headless connection check, then administrator/network owner | Correct address/readiness/reachability; no automatic firewall opening |
| B02 Server identity changes | Stop affected connection; administrator reconciles identity | Approved expected identity; never disable certificate/host validation |
| B03 Authentication/enrollment refused | Supported enrollment/session procedure | Current authenticated role at expected installation; no Builder fallback |
| B04 Model files exist but no runtime observation | GUI runtime discovery/observation procedure | Current runtime reference observed; file presence alone is insufficient |
| B05 Runtime observed, binding not validated | Read exact product validation/binding reason | Validated current binding returned; do not infer from an alias |
| B06 Alias/model changed, old binding remains | Preserve running Work, inspect new observation and current binding | Exact new model/reference validated and bound within scope |
| B07 Multiple possible runtimes | Obtain intended administrator-approved target | One exact target established; do not choose by similarity |
| B08 Runtime restarts mid-task | Reconcile original Work and new runtime observation separately | Current binding plus original Work state; no automatic resubmission |
| B09 Hosted runtime cannot receive this data | Continue locally or use an approved minimized representation | Authorized data boundary established before transmission |

## Integration preparation and candidate work

| Case / observation | Next step and owner | Return evidence / stop boundary |
|---|---|---|
| C01 Malformed/incorrectly encoded JSON | Declarations skill edits a copy of complete input | Full request parses; syntax does not replace semantic checks |
| C02 Source-only Document submitted as full request | Put source object into supplied full envelope | Required request fields retained, Helper sees full request |
| C03 properties/required/mapping differ | Declarations skill reviews all related fields | Revised full request passes affected Helper checks |
| C04 Synthetic score number supplied instead of string | Correct fixture type in a copy | Supported STRING_TO_INTEGER mapping returns its actual validation result |
| C05 Published target/template is missing | Administrator/product integration owner supplies supported material | Exact supported target/template exists; no guessed ID/digest |
| C06 Existing supported integration is sufficient | Helper prepare/status and normal review handoff | Actual prepared candidate/status; SDK/Builder may be skipped |
| C07 Helper establishes supported adapter implementation need | Builder prepares candidate/plan → declarations and SDK as required | New adapter candidate plus aligned request; Helper/Builder revalidation |
| C08 Supported reusable Pack composition is needed | Builder skill with supplied template and permitted capabilities | Exact new candidate/revision and validation; approval still separate |
| C09 Builder cannot prepare while disconnected | Restore supported connection/role | Actual Builder readiness; never enable disabled UI by editing state |
| C10 SDK fails after partial output | Retain output/input/toolchain and precise first failure | Frozen correction, fresh directory, affected checks passed; no blind regeneration |
| C11 Existing result folder or candidate revision reused | Preserve predecessor, select a fresh result/revision | Actual new reference/digest; do not overwrite evidence |
| C12 Candidate changes after review | Return exact new revision to affected checks/review | Review/approval binds the new digest; old approval is not copied |
| C13 Desired integration exceeds supplied capabilities | Retain bounded goal/findings; product integration owner | Supported route or a separately approved product change; no arbitrary workers |

## Execution, recovery and handoff

| Case / observation | Next step and owner | Return evidence / stop boundary |
|---|---|---|
| R01 Prepared candidate, approval pending | Hand off exact candidate to approval owner | Actual current approval; preparation is not authority |
| R02 Approval exists, entitlement/installation differs | Reconcile exact installation entitlement | Product accepts current scope; never route around the refusal |
| R03 Submission times out with no returned ID | Reconcile original request/key through supported query/support | Acceptance/current state established before another submission |
| R04 Work ID exists, result delayed | Query that same Work | Current execution/recovery state; no new Work to replace waiting |
| R05 Result file exists, receipt/validation missing | Same-Work query and Part.8 case I | Matching validation/receipt or explicit incomplete result |
| R06 Partial mutation or recovery pending | Supported product recovery query/procedure | Validated postconditions/current state; no manual success marking or new repair |
| R07 Agent/runtime crashes | Load retained checkpoint, revalidate identity and query original operation | Actual current state reconciled; resume first unproven step |
| R08 Operator changes input/target while paused | Preserve old plan; review new scope and revision | New input/target bound to required checks and authority |
| R09 Unknown error, several plausible causes | Preserve first result, run bounded authorized read-only discriminator | Exact affected boundary established; no speculative Builder/SDK loop |
| R10 Tool/MCP connection disappears | Reconnect through supplied setup; query original operation | Same target/release and original state; tool restart is not task success |

## Post-installation expansion

Use the kit's `vibepackr-postinstall-expansion` skill for this entire path.

| Case / observation | Next step and owner | Return evidence / stop boundary |
|---|---|---|
| E01 Add a new legacy system to a working installation | Preserve baseline; rerun GAPE, then Helper impact assessment | Validated changed observation and supported interface/request; no reinstall |
| E02 Add an inference runtime/model | GAPE for approved architecture changes; separate product runtime discovery/binding | Exact runtime/model and validated current binding; GAPE is not runtime discovery |
| E03 Add an enterprise agent runtime | Re-observe approved architecture change; supported kit loading and tool/connection checks | Instructions actually read and tool availability/installation verified |
| E04 Baseline snapshot cannot be located | Retain current state; obtain legitimate baseline or record missing comparison | Current snapshot may be validated, but no before/after or no-drift claim |
| E05 New system expands observation scope | Reconcile common versus added scope before comparison | Scope-qualified comparison; do not treat unrelated inventories as unchanged |
| E06 No approved source scope or GAPE manifest | Integration/source owner supplies supported material | GAPE prerequisite resolved; independent preparation only until then |
| E07 Existing supported adapter/Pack is sufficient | Helper preparation and ordinary review path | Exact new-target result; SDK/Builder can be skipped |
| E08 New adapter/declarations are required | Helper → Builder plan → SDK/declarations → affected validation | Exact revision/digest and updated GAPE observation if source changed |
| E09 Old runtime has in-flight Work | Preserve old binding and reconcile active Work before supported change | Original Work and recovery state established; no alias replacement or resubmit |
| E10 New target needs different permissions/data location | Administrator/integration owner uses normal provisioning process | Actual permitted boundary; do not broaden access through Skills |
| E11 New example passes, old use fails | Preserve outputs; inspect affected GAPE/Helper findings and supported recovery | Both affected uses validated or explicit unresolved disposition; no global pass |
| E12 New runtime needs missing native/model dependencies | Verify exact prerequisites and selected online/offline route | Supplied SDK dependency set is not model/runtime provisioning |
| E13 New target is prepared but not registered/bound | Inspect actual product review/registration/binding state | Actual accepted target and current authority; files are not activation |
| E14 Change response is lost after submission | Reconcile the original change request/Work | Acceptance and partial effects known before recovery or another request |
| E15 Expansion is interrupted and agent restarts | Load checkpoint; recheck baseline, target, digests and original state | Resume first unproven check; keep working connection and prior results |

## Worked case: Helper requires implementation

Input: a full supported synthetic Custom request; the actual Helper result
identifies an implementation requirement. Keep the input digest and original
result. Give Builder the same target, operation, I/O, permitted capabilities,
data boundary and recovery needs. Builder prepares a candidate/plan through its
supported interface. If that plan needs an adapter, use the SDK skill in a fresh
folder. If declarations need alignment, edit a full request copy with the
declarations skill. Return the exact new candidate/request to Helper and Builder
checks, then the supported approval/registration path. Do not run an operational
Work merely because local synthetic compilation succeeded.

## Worked case: unclear timeout after submission

Input: a submitted operation whose response was lost. Preserve the original
request and idempotency reference. Query the original returned Work ID if one
exists; otherwise use the release's reconciliation procedure. Neither Builder
generation nor a new Work is a remedy for unknown acceptance. Resume only after
the original operation's current state and any partial effects are established.

## Worked case: agent restart during offline candidate creation

Retain the input, selected dependency set, toolchain identity and partially
created output. On restart check whether the original tool is still running and
what it actually produced. Do not overwrite the directory or label presence a
pass. Once the original attempt is terminal and an exact correction is known,
use a fresh output folder and rerun only the affected local candidate/checks.
No external download is inferred from the need to resume.
