kiosk-server 0.6.1 → 0.6.28
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +138 -0
- data/README.md +134 -102
- data/app/channels/kiosk_events.rb +30 -17
- data/app/controllers/kiosk/server/application_controller.rb +0 -1
- data/app/controllers/kiosk/server/assistants_controller.rb +13 -14
- data/app/controllers/kiosk/server/auth_controller.rb +3 -3
- data/app/controllers/kiosk/server/device_verify_controller.rb +0 -5
- data/app/controllers/kiosk/server/discovery_controller.rb +2 -7
- data/app/controllers/kiosk/server/kyc_callback_controller.rb +3 -1
- data/app/controllers/kiosk/server/oauth_device_authorization_controller.rb +8 -7
- data/app/controllers/kiosk/server/oauth_token_controller.rb +4 -1
- data/app/controllers/kiosk/server/payment_setup_controller.rb +3 -4
- data/app/controllers/kiosk/server/wire_controller.rb +2 -2
- data/app/models/kiosk/checkout_mandate.rb +0 -2
- data/app/models/kiosk/settlement.rb +0 -2
- data/app/models/kiosk/visit.rb +0 -2
- data/app/views/kiosk/server/assistants/show.html.erb +20 -24
- data/app/views/kiosk/server/device_verify/decided.html.erb +1 -0
- data/app/views/kiosk/server/device_verify/show.html.erb +1 -0
- data/app/views/layouts/kiosk/server/application.html.erb +14 -0
- data/lib/generators/kiosk/install/install_generator.rb +25 -64
- data/lib/generators/kiosk/install/templates/create_kiosk_device_authorizations.rb.tt +21 -12
- data/lib/generators/kiosk/install/templates/create_kiosk_events.rb.tt +15 -17
- data/lib/generators/kiosk/install/templates/create_kiosk_identity_tables.rb.tt +39 -10
- data/lib/generators/kiosk/install/templates/create_kiosk_kyc_attributes.rb.tt +16 -14
- data/lib/generators/kiosk/install/templates/create_kiosk_mandates.rb.tt +50 -14
- data/lib/generators/kiosk/install/templates/create_kiosk_pow_spent.rb.tt +7 -11
- data/lib/generators/kiosk/install/templates/create_kiosk_refunds.rb.tt +11 -11
- data/lib/generators/kiosk/install/templates/create_kiosk_revocations.rb.tt +7 -11
- data/lib/generators/kiosk/install/templates/create_kiosk_visits.rb.tt +10 -11
- data/lib/generators/kiosk/install/templates/initializer.rb.tt +13 -4
- data/lib/kiosk/payable.rb +1 -1
- data/lib/kiosk/server/account_binding.rb +14 -5
- data/lib/kiosk/server/account_holder_gate.rb +3 -1
- data/lib/kiosk/server/agent_identity_providers/default_agent_idp.rb +1 -1
- data/lib/kiosk/server/agent_rotation.rb +1 -1
- data/lib/kiosk/server/argument_decoder.rb +2 -2
- data/lib/kiosk/server/assistant_accounts.rb +38 -0
- data/lib/kiosk/server/auth_toll.rb +5 -5
- data/lib/kiosk/server/client.rb +1 -1
- data/lib/kiosk/server/client_assertion.rb +3 -2
- data/lib/kiosk/server/client_registration.rb +6 -2
- data/lib/kiosk/server/column_spending_cap.rb +1 -1
- data/lib/kiosk/server/configuration_extension.rb +15 -38
- data/lib/kiosk/server/current_request.rb +1 -1
- data/lib/kiosk/server/device_authorization.rb +1 -1
- data/lib/kiosk/server/device_authorization_stores.rb +1 -1
- data/lib/kiosk/server/device_code_grant.rb +2 -2
- data/lib/kiosk/server/dpop.rb +6 -1
- data/lib/kiosk/server/engine.rb +2 -2
- data/lib/kiosk/server/errors.rb +21 -7
- data/lib/kiosk/server/event_stores.rb +2 -2
- data/lib/kiosk/server/events.rb +4 -3
- data/lib/kiosk/server/events_connection.rb +23 -5
- data/lib/kiosk/server/events_replay.rb +79 -0
- data/lib/kiosk/server/executor/repeat.rb +1 -1
- data/lib/kiosk/server/executor/spending_cap.rb +8 -66
- data/lib/kiosk/server/executor.rb +10 -10
- data/lib/kiosk/server/failure_log.rb +3 -3
- data/lib/kiosk/server/handler_mixin.rb +9 -9
- data/lib/kiosk/server/handler_registrations.rb +1 -1
- data/lib/kiosk/server/handler_serving.rb +11 -11
- data/lib/kiosk/server/headers.rb +3 -3
- data/lib/kiosk/server/identity_resolution.rb +1 -1
- data/lib/kiosk/server/kyc.rb +5 -7
- data/lib/kiosk/server/kyc_verifier.rb +26 -27
- data/lib/kiosk/server/linked_assistants.rb +21 -16
- data/lib/kiosk/server/money.rb +41 -0
- data/lib/kiosk/server/oauth_answers.rb +1 -0
- data/lib/kiosk/server/oauth_error.rb +3 -0
- data/lib/kiosk/server/open_api.rb +9 -9
- data/lib/kiosk/server/page.rb +1 -1
- data/lib/kiosk/server/payment_claim.rb +3 -3
- data/lib/kiosk/server/pow_gate.rb +12 -33
- data/lib/kiosk/server/pow_spent_stores.rb +1 -1
- data/lib/kiosk/server/receipts.rb +4 -3
- data/lib/kiosk/server/reputation_factors.rb +12 -5
- data/lib/kiosk/server/request_validation.rb +2 -1
- data/lib/kiosk/server/result.rb +1 -1
- data/lib/kiosk/server/revocation_stores.rb +1 -1
- data/lib/kiosk/server/routing.rb +1 -1
- data/lib/kiosk/server/schemas/auth.schema.json +2 -2
- data/lib/kiosk/server/schemas/binding.schema.json +3 -3
- data/lib/kiosk/server/schemas/kyc.schema.json +22 -3
- data/lib/kiosk/server/schemas/mandates.schema.json +5 -5
- data/lib/kiosk/server/schemas/pow.schema.json +2 -2
- data/lib/kiosk/server/session_context.rb +2 -2
- data/lib/kiosk/server/tolled_calls.rb +46 -0
- data/lib/kiosk/server/verb_wire.rb +3 -3
- data/lib/kiosk/server/version.rb +1 -1
- data/lib/kiosk/server/well_known.rb +14 -11
- data/lib/kiosk/server/wire_rendering.rb +1 -1
- data/lib/kiosk/server.rb +6 -2
- metadata +9 -8
- data/lib/generators/kiosk/install/templates/create_kiosk_schema.rb.tt +0 -17
- data/lib/kiosk/server/schema_definitions.rb +0 -320
- data/lib/kiosk/server/settled_spend.rb +0 -21
- data/lib/kiosk/server/wrong_door.rb +0 -42
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 500b9a8093341b3f2a2c97aa33207bac718a05270ab079ce05b9b6546336164c
|
|
4
|
+
data.tar.gz: 11301b3066105605dad72413895eb2962dd37410dd675f0701ddcb9e0481b87d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5aa88f5ca10a288eb2335b09ab67cdc1cc6e98d9a8d64fd455a37e5984409cb6e5b4ee2146fd3f69f49046ba3fb79a5db4bc86e79ae9c66ca68f2f42842791ad
|
|
7
|
+
data.tar.gz: 489454b379ef7d3a872c0d0fb6f80b846aed54f4571a1dc84ac7ec36e0e0d00cc03d67842957830232db3d3e18b672bd2e7ae32e6e9c2e3aff2949e5a4aff00e
|
data/CHANGELOG.md
CHANGED
|
@@ -12,6 +12,144 @@ already written is edited.
|
|
|
12
12
|
|
|
13
13
|
## [Unreleased]
|
|
14
14
|
|
|
15
|
+
## [0.6.28] — 2026-10-26
|
|
16
|
+
|
|
17
|
+
- 2026-10-26: Version 0.6.28, the tree cut that matches skill 0.6.28.
|
|
18
|
+
|
|
19
|
+
## [0.6.27] — 2026-10-26
|
|
20
|
+
|
|
21
|
+
- 2026-10-26: Version 0.6.27, the tree cut that matches skill 0.6.27.
|
|
22
|
+
## [0.6.26] — 2026-10-26
|
|
23
|
+
|
|
24
|
+
- 2026-10-26: Version 0.6.26, the tree cut that matches skill 0.6.26.
|
|
25
|
+
- 2026-10-26: The spending cap is the most one `pay` may charge. `spending_cap_window_days` and the running total are removed; the manage page shows all the spend of an assistant.
|
|
26
|
+
- 2026-10-26: The PoW gate and the auth toll raise their ConfigurationError when kiosk-reputation or kiosk-pow-equihash is not required and only its version file is loaded.
|
|
27
|
+
|
|
28
|
+
## [0.6.25] — 2026-10-26
|
|
29
|
+
|
|
30
|
+
- 2026-10-26: Version 0.6.25, the tree cut that matches skill 0.6.25.
|
|
31
|
+
- 2026-10-26: The README names the two gems and `registration_pow_count` of the toll, the real KYC variables, every root discovery document and a matching route example.
|
|
32
|
+
- 2026-10-26: The manage-assistants and link-approval pages are whole documents with a title, in the engine layout `layouts/kiosk/server/application`.
|
|
33
|
+
- 2026-10-26: The manage-assistants page shows money amounts and a cap of 0 as «no payments allowed»; its `spending_cap` field takes an amount in the cap currency.
|
|
34
|
+
|
|
35
|
+
## [0.6.24] — 2026-10-26
|
|
36
|
+
|
|
37
|
+
- 2026-10-26: Version 0.6.24, the tree cut that matches skill 0.6.24.
|
|
38
|
+
- 2026-10-26: `validate_requests` holds the KYC callback body to the published `callback` object: a wrong-typed member is a 400 naming it.
|
|
39
|
+
- 2026-10-26: The `101` answer at `<endpoint>/events` carries the three version headers, as every answer under the mount does.
|
|
40
|
+
- 2026-10-26: A subscription whose reach is withdrawn leaves the connection, so a later `subscribe` with its identifier gets `reject_subscription`.
|
|
41
|
+
|
|
42
|
+
## [0.6.23] — 2026-10-26
|
|
43
|
+
|
|
44
|
+
- 2026-10-26: Version 0.6.23, the tree cut that matches skill 0.6.23.
|
|
45
|
+
|
|
46
|
+
## [0.6.22] — 2026-10-26
|
|
47
|
+
|
|
48
|
+
- 2026-10-26: Version 0.6.22, the tree cut that matches skill 0.6.22.
|
|
49
|
+
|
|
50
|
+
## [0.6.21] — 2026-10-26
|
|
51
|
+
|
|
52
|
+
- 2026-10-26: Version 0.6.21, the tree cut that matches skill 0.6.21.
|
|
53
|
+
|
|
54
|
+
## [0.6.20] — 2026-10-26
|
|
55
|
+
|
|
56
|
+
- 2026-10-26: Version 0.6.20, the tree cut that matches skill 0.6.20.
|
|
57
|
+
|
|
58
|
+
## [0.6.19] — 2026-10-26
|
|
59
|
+
|
|
60
|
+
- 2026-10-26: Version 0.6.19, the tree cut that matches skill 0.6.19.
|
|
61
|
+
|
|
62
|
+
## [0.6.18] — 2026-10-25
|
|
63
|
+
|
|
64
|
+
- 2026-10-25: Version 0.6.18, the tree cut that matches skill 0.6.18.
|
|
65
|
+
|
|
66
|
+
## [0.6.17] — 2026-10-25
|
|
67
|
+
|
|
68
|
+
- 2026-10-25: Version 0.6.17, the tree cut that matches skill 0.6.17.
|
|
69
|
+
- 2026-10-25: The event stream sends the replay of every subscription the upgrade URL declares in one ascending id order, and live events in the order the pubsub gives them.
|
|
70
|
+
|
|
71
|
+
## [0.6.16] — 2026-10-25
|
|
72
|
+
|
|
73
|
+
- 2026-10-25: Version 0.6.16, the tree cut that matches skill 0.6.16.
|
|
74
|
+
- Kiosk's tables are `kiosk_*` tables in the schema `c.schema` names, `public` by default. `kiosk:install` writes them as plain Rails migrations.
|
|
75
|
+
- `kiosk:install` creates no SQL functions and no `agent_tokens` or `agent_mappings` table, and takes no `--guc-namespace`.
|
|
76
|
+
|
|
77
|
+
## [0.6.15] — 2026-10-25
|
|
78
|
+
|
|
79
|
+
- 2026-10-25: Version 0.6.15, the tree cut that matches skill 0.6.15.
|
|
80
|
+
|
|
81
|
+
- 2026-10-25: The generated initializer shows `skill_sha256` and the command that makes it. An operator does not set `skill_url`: each release gives the skill of its version.
|
|
82
|
+
|
|
83
|
+
## [0.6.14] — 2026-10-25
|
|
84
|
+
|
|
85
|
+
- 2026-10-25: Version 0.6.14, the tree cut that matches skill 0.6.14.
|
|
86
|
+
|
|
87
|
+
## [0.6.13] — 2026-10-25
|
|
88
|
+
|
|
89
|
+
- 2026-10-25: Version 0.6.13, the tree cut that matches skill 0.6.13.
|
|
90
|
+
|
|
91
|
+
- 2026-10-25: The `invalid_client` 401 of the token and device-authorization endpoints names `Kiosk-Client-Assertion`; the 401 of the engine pages names `Kiosk-Session`.
|
|
92
|
+
|
|
93
|
+
## [0.6.12] — 2026-10-24
|
|
94
|
+
|
|
95
|
+
- 2026-10-24: Version 0.6.12, the tree cut that matches skill 0.6.12.
|
|
96
|
+
|
|
97
|
+
- 2026-10-24: The KYC checks read the issuer, key and audience of `c.kyc_provider`; `kyc_issuer`, `kyc_public_key` and `kyc_audience` are removed.
|
|
98
|
+
- 2026-10-24: `WrongDoor` is removed: the browser pages refuse a POST without the form's CSRF token alike, JSON or not.
|
|
99
|
+
- 2026-10-24: The payment receipt's `network_confirmation_id` is `not reported by the payment provider` when the PSP adapter answers none.
|
|
100
|
+
|
|
101
|
+
## [0.6.11] — 2026-10-24
|
|
102
|
+
|
|
103
|
+
- 2026-10-24: Version 0.6.11, the tree cut that matches skill 0.6.11.
|
|
104
|
+
|
|
105
|
+
- 2026-10-24: A binding records `agents.bound_at`. The manage-assistants page shows it as the time linked, the spend only with a `payment_provider`, and the cap only with a `spending_cap`.
|
|
106
|
+
|
|
107
|
+
## [0.6.10] — 2026-10-23
|
|
108
|
+
|
|
109
|
+
- 2026-10-23: Version 0.6.10, the tree cut that matches skill 0.6.10.
|
|
110
|
+
|
|
111
|
+
## [0.6.9] — 2026-10-23
|
|
112
|
+
|
|
113
|
+
- 2026-10-23: Version 0.6.9, the tree cut that matches skill 0.6.9.
|
|
114
|
+
|
|
115
|
+
## [0.6.8] — 2026-10-22
|
|
116
|
+
|
|
117
|
+
- 2026-10-22: The first binding merges the assistant account into the human's account: the recent spend counts its settlements and visits, also after an unlink. New table `assistant_accounts`.
|
|
118
|
+
- 2026-10-22: Version 0.6.8, the tree cut that matches skill 0.6.8.
|
|
119
|
+
|
|
120
|
+
## [0.6.7] — 2026-10-22
|
|
121
|
+
|
|
122
|
+
- 2026-10-22: Version 0.6.7, the tree cut that matches skill 0.6.7.
|
|
123
|
+
|
|
124
|
+
## [0.6.6] — 2026-10-22
|
|
125
|
+
|
|
126
|
+
- 2026-10-22: The gate counts the tolled calls of each account in `tolled_calls`; the assistants of one account share the count. A binding adds the previous account's count.
|
|
127
|
+
- 2026-10-22: The recent spend also counts what an assistant of the account paid before a binding moved it there.
|
|
128
|
+
- 2026-10-22: `kiosk:install` writes `tolled_calls` and no `agents.calls_since_proof`. An installed origin moves the count with a migration of its own.
|
|
129
|
+
- 2026-10-22: Version 0.6.6, the tree cut that matches skill 0.6.6.
|
|
130
|
+
|
|
131
|
+
## [0.6.5] — 2026-10-22
|
|
132
|
+
|
|
133
|
+
- 2026-10-22: Version 0.6.5, the tree cut that matches skill 0.6.5.
|
|
134
|
+
- 2026-10-22: A 401 from `/auth/claim`, `/auth/rotate`, `/auth/link` or `/auth/unlink` names its challenge, `Kiosk-Client-Assertion` or `Kiosk-Session`. The engine pages have no inline style.
|
|
135
|
+
|
|
136
|
+
## [0.6.4] — 2026-10-22
|
|
137
|
+
|
|
138
|
+
- 2026-10-22: Version 0.6.4, the tree cut that matches skill 0.6.4.
|
|
139
|
+
- 2026-10-22: The OAuth metadata lists the one scope `default`; a requested `scope` is ignored. A 401 names the protected-resource metadata, and every discovery document answers CORS.
|
|
140
|
+
- 2026-10-22: The wrong-door hint names `auth.registration_url` and `auth.token_url` of kiosk.json.
|
|
141
|
+
|
|
142
|
+
## [0.6.3] — 2026-10-22
|
|
143
|
+
|
|
144
|
+
- 2026-10-22: Version 0.6.3, the tree cut that matches skill 0.6.3.
|
|
145
|
+
- 2026-10-22: The gate counts each assistant's tolled calls in `agents.calls_since_proof`; a paid proof sets it to zero. A paid proof no longer buys the rest of the access token.
|
|
146
|
+
- 2026-10-22: `kiosk:install` writes `agents.calls_since_proof`. An installed origin adds it with a migration of its own.
|
|
147
|
+
|
|
148
|
+
## [0.6.2] — 2026-10-22
|
|
149
|
+
|
|
150
|
+
- 2026-10-22: Version 0.6.2, the tree cut that matches skill 0.6.2.
|
|
151
|
+
- 2026-10-22: `/auth.md` names the skill as "Skill for AI assistants". The OpenAPI tag of `schema` and `pay` is `reserved`, and refusal messages say "Kiosk HTTP API".
|
|
152
|
+
|
|
15
153
|
## [0.6.1] — 2026-10-22
|
|
16
154
|
|
|
17
155
|
- 2026-10-22: Version 0.6.1, the tree cut that matches skill 0.6.1.
|