@rubytech/taskmaster 1.13.4 → 1.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agents/workspace-migrations.js +128 -0
- package/dist/build-info.json +3 -3
- package/dist/cli/gateway-cli/run.js +36 -16
- package/dist/control-ui/assets/{index-BiGN9NNG.js → index-B3nkSwMP.js} +22 -20
- package/dist/control-ui/assets/index-B3nkSwMP.js.map +1 -0
- package/dist/control-ui/index.html +1 -1
- package/dist/daemon/service-port.js +109 -0
- package/dist/gateway/server-methods/config.js +44 -0
- package/dist/infra/update-global.js +4 -1
- package/dist/infra/update-runner.js +8 -4
- package/dist/macos/gateway-daemon.js +26 -8
- package/dist/memory/manager.js +14 -3
- package/package.json +1 -1
- package/skills/sales-closer/SKILL.md +29 -0
- package/skills/sales-closer/references/close-tracking.md +86 -0
- package/skills/sales-closer/references/closing-framework.md +112 -0
- package/skills/sales-closer/references/objection-handling.md +101 -0
- package/templates/beagle-zanzibar/agents/admin/AGENTS.md +56 -4
- package/templates/beagle-zanzibar/agents/admin/BOOTSTRAP.md +34 -11
- package/templates/beagle-zanzibar/agents/admin/HEARTBEAT.md +1 -0
- package/templates/beagle-zanzibar/agents/public/AGENTS.md +15 -2
- package/templates/beagle-zanzibar/memory/public/knowledge-base.md +13 -0
- package/templates/beagle-zanzibar/memory/public/terms.md +81 -0
- package/templates/beagle-zanzibar/skills/beagle-zanzibar/SKILL.md +4 -0
- package/templates/beagle-zanzibar/skills/beagle-zanzibar/references/pin-qr.md +52 -0
- package/templates/beagle-zanzibar/skills/beagle-zanzibar/references/post-ride.md +13 -0
- package/templates/beagle-zanzibar/skills/beagle-zanzibar/references/ride-matching.md +23 -17
- package/templates/beagle-zanzibar/skills/beagle-zanzibar/references/route-learning.md +61 -0
- package/templates/beagle-zanzibar/skills/stripe/SKILL.md +28 -0
- package/templates/beagle-zanzibar/skills/stripe/references/payment-links.md +71 -0
- package/dist/control-ui/assets/index-BiGN9NNG.js.map +0 -1
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Stripe Payment Links — Checkout Session Creation
|
|
2
|
+
|
|
3
|
+
## Booking Fee Calculation
|
|
4
|
+
|
|
5
|
+
The tourist pays a booking fee to confirm their ride:
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
fee = max($2, min($5, fare × 0.05))
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
In cents (Stripe uses the smallest currency unit):
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
fee_cents = max(200, min(500, round(fare_usd × 5)))
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Examples: $20 fare → $2.00 fee | $50 fare → $2.50 fee | $100 fare → $5.00 fee
|
|
18
|
+
|
|
19
|
+
## Creating a Checkout Session
|
|
20
|
+
|
|
21
|
+
Call the Stripe Checkout Sessions API:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
POST https://api.stripe.com/v1/checkout/sessions
|
|
25
|
+
Authorization: Bearer {stripe_secret_key}
|
|
26
|
+
Content-Type: application/x-www-form-urlencoded
|
|
27
|
+
|
|
28
|
+
mode=payment
|
|
29
|
+
payment_method_types[]=card
|
|
30
|
+
line_items[0][price_data][currency]=usd
|
|
31
|
+
line_items[0][price_data][unit_amount]={fee_cents}
|
|
32
|
+
line_items[0][price_data][product_data][name]=Beagle booking fee — {job_id}
|
|
33
|
+
line_items[0][price_data][product_data][description]={route} on {date}
|
|
34
|
+
line_items[0][quantity]=1
|
|
35
|
+
metadata[booking_id]={job_id}
|
|
36
|
+
metadata[tourist_phone]={tourist_phone}
|
|
37
|
+
metadata[negotiated_fare]={fare_usd}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
The Stripe secret key is the `stripe` key stored in your API key config (`sk_test_...` for test mode, `sk_live_...` for production).
|
|
41
|
+
|
|
42
|
+
The response includes a `url` field — this is the hosted checkout page to send the tourist.
|
|
43
|
+
|
|
44
|
+
## Sending the Link
|
|
45
|
+
|
|
46
|
+
Send the tourist the checkout URL with context:
|
|
47
|
+
|
|
48
|
+
> "To confirm your booking, pay the $[fee] booking fee here: [url]
|
|
49
|
+
> This locks in your ride. You pay $[fare] directly to your driver at the end of the journey."
|
|
50
|
+
|
|
51
|
+
## Verifying Payment
|
|
52
|
+
|
|
53
|
+
Before releasing driver details (Phase 5), verify the session is paid:
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
GET https://api.stripe.com/v1/checkout/sessions/{session_id}
|
|
57
|
+
Authorization: Bearer {stripe_secret_key}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Check `payment_status == "paid"`. If not yet paid, wait for the tourist to say they've paid — then verify. Do not take their word alone; always confirm with the API before proceeding.
|
|
61
|
+
|
|
62
|
+
## What to Store in the Booking Record
|
|
63
|
+
|
|
64
|
+
Add these fields to `bookings/{job-id}.md` when the session is created and confirmed:
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
stripe_session_id: cs_...
|
|
68
|
+
booking_fee_usd: 2.50
|
|
69
|
+
payment_status: pending → paid (update when confirmed)
|
|
70
|
+
paid_at: [timestamp from session]
|
|
71
|
+
```
|