Keyhold
PayPal sandbox. Test money only.PayPal sandbox. Test money only.

PayPal sandbox. Every order, hold, capture and refund here uses PayPal sandbox test money.

fstab lists a disk that is gone

Final

Stopped. $0 charged.

Keyboard locked at 16:51:12 UTC, hold voided. Nothing was typed after Stop.

  1. Quote (done) $19.00 fixed
  2. Hold (done) released
  3. Keyboard (done) the owner pressed Stop
  4. Probe (skipped) after Stop
  5. Voided · $0 the owner pressed Stop

Done · Voided · $0, the owner pressed Stop

Keyboard locked: the owner pressed Stopat 16:51:12 UTC, before the void was sent

Voided

$0.00charged

PayPal released the hold.

6 skeyboard lent

1PayPal check

0keys after Stop

How your $19.00 moved

  1. Quote: $19.00, fixed before any key

    A free look at the screen found: a bad /etc/fstab entry stops the boot in emergency mode. Screenshots only.

  2. Hold: the owner approved, PayPal held $19.00

    Nothing charged yet.

    Authorization 8VN595…0907 · CREATED $19.00
  3. Keyboard: lent, then taken back

    The owner pressed Stop at 16:51:12. The keyboard locked before the void was sent. Nothing was typed after Stop.

  4. Released: PayPal voided the hold

    $0 charged. The owner pressed Stop.

    Authorization 8VN595…0907 · VOIDED

PayPal, read live

Read from the PayPal sandbox at 04:28:17 UTC

PayPal objects for this rescue, with PayPal's status and what it means
ObjectStatusWhat it meansAmountPayPal answeredWebhook
Order99Y619…133N COMPLETED The owner approved the hold in PayPal. $19.00 16:50:54 none for this call
Authorization8VN595…0907 VOIDED Hold released. Nothing charged. $19.00 16:51:0616:51:13 void 16:51:1616:51:20 void
Capture none Never charged: a voided hold cannot be captured. — — —
Full log 21 rows
  1. Quotefstab_bad_entry T2 $19.00
  2. Quotediagnosis: a bad /etc/fstab entry stops the boot in emergency mode. Quote T2, $19.00.
  3. PayPalcreate_order with PayPal-Request-Id order-a44702f2-9042-4b94-9874-cf802f843624
  4. PayPalorder 99Y61974SM712133N PAYER_ACTION_REQUIRED
  5. StateQuote ready → Waiting for your PayPal approval
  6. PayPalauthorize with PayPal-Request-Id auth-a44702f2-9042-4b94-9874-cf802f843624
  7. PayPalauthorization 8VN59510G70260907 CREATED $19.00
  8. StateWaiting for your PayPal approval → Hold approved, lending the keyboard
  9. LockPayPal authorization 8VN59510G70260907 CREATED $19.00: keyboard allowed
  10. StateHold approved, lending the keyboard → Agent at the keyboard: keyboard lent to the agent
  11. AgentI'm at the emergency mode screen and need to log in as root with the password the owner gave for console access. This is a password prompt, so entering it here is within the rule. I'll type the password and press enter.
  12. Agenttyped: [console password] ↵
  13. Lockkeyboard locked: the owner pressed Stop
  14. Ownerthe owner pressed Stop
  15. PayPalvoid with PayPal-Request-Id void-a44702f2-9042-4b94-9874-cf802f843624
  16. Agentthe owner pressed Stop
  17. Agentrevoked: the owner pressed Stop
  18. PayPalauthorization voided
  19. StateAgent at the keyboard → Hold released, $0 charged: the owner pressed Stop
  20. WebhookPAYMENT.AUTHORIZATION.CREATED WH-60Y46274TL313235T-46023389VA7273623: verified, applied
  21. WebhookPAYMENT.AUTHORIZATION.VOIDED WH-9U216810AB988204T-44582838JT205792H: verified, applied
Audit details full ids, PayPal-Request-Ids, invoice, quote, owner probe, ledger checks, timing

Ids

Rescue
a44702f2-9042-4b94-9874-cf802f843624
State
VOIDED
Invoice id
keyhold-a44702f2-9042-4b94-9874-cf802f843624
Order
99Y61974SM712133N · intent AUTHORIZE
Authorization
8VN59510G70260907 · expires 2026-12-07 16:51:05 UTC
Capture
—
Refund
—
Ending
the owner pressed Stop

PayPal-Request-Ids: two ticks per money call

Each call is written to the outbox with its PayPal-Request-Id before it is sent, so a retry never moves money twice. PayPal's synchronous answer is the first tick; the verified webhook is the second.

Money calls and their confirmations
CallPayPal-Request-IdAPI answerWebhook
Orderorder-a44702f2-9042-4b94-9874-cf802f843624 ✓ 16:50:54 none for this call
Authorizationauth-a44702f2-9042-4b94-9874-cf802f843624 ✓ 16:51:06 ✓ 16:51:16
Voidvoid-a44702f2-9042-4b94-9874-cf802f843624 ✓ 16:51:13 ✓ 16:51:20

Ledger checks

ok captured ≤ authorized ≤ quote, one capture at most, no void after capture, refund ≤ captured.

Diagnosis and plan

a bad /etc/fstab entry stops the boot in emergency mode

  • [ TIME ] Timed out waiting for device dev-disk-by\x2d■by-uuid/7d1e3c55-2b8f-4c1e-9a0d-5f2a61c0b9e4.
  • [DEPEND] Dependency failed for srv-data.mount - /srv/data.
  • [DEPEND] Dependency failed for local-fs.target - Local File Systems.
  • You are in emergency mode. After logging in, type "journalctl -xb" to view
  • Enter root password for system maintenance

1. Log in to the emergency shell and run journalctl -xb to confirm the failed mount is the /srv/data entry in /etc/fstab. 2. Open /etc/fstab and find the line for the device with UUID 7d1e3c55-2b8f-4c1e-9a0d-5f2a61c0b9e4 (mount point /srv/data). 3. Add the nofail and x-systemd.device-timeout=10s options to that line, or comment it out if the disk is not attached. 4. Save the file and run systemctl daemon-reload. 5. Run systemctl reboot and check that the server returns to a normal login prompt.

Quote

Fault class
fstab_bad_entry
Tier
T2 · $19.00
Quote hash
42f40264f290d66599f08fb1e6ba3f726e788f79078ccefeaf27f6d5a54ab0f5

Owner probe, fixed at checkout

A capture happens only after this check passes twice, far enough apart, with no failure between.

SSH login
as probe on port 32851, with a key only the probe holds
Probe key
SHA256:CcgWuPvbHnBojBASpsq+D15PKuJPkuBo/cq0ROAmp4M
Page
HTTP GET / on port 32848: the page body has sha256 429d6e1517d7805977c57314076c608c7acf30e52b93b0b5103ae57152669bc8
Spec hash
89ee557e269100068b06458bdcd522b0d5e0da42af6d787350da4395ff30a658
Sent as the order's custom_id.

Timing and cost

Created
2026-11-08 16:50:36 UTC
Model cost
about $0.0005
Timing
Judge mode, compressed timing. Capture after two passes at least 10 s apart, with no failure between. Warranty (judge mode, compressed): re-probed every 20 seconds, 6 times (2 minutes in all); the real plan is 24 hourly checks. Two failed checks in a row refund the full capture.
Full console screen