Commit Graph

7712 Commits

Author SHA1 Message Date
fang
9f2c97f95e
lull: add %'PATCH' to $method:http
As of RFC 5789, PATCH is a valid HTTP request method. The $method:http type,
however, did not include it.

Here, we add it to the $method:http type, so that it now includes all nine
standard HTTP methods.
2023-07-12 15:56:51 +02:00
pkova
985350d2b5 ames: address style nits 2023-07-11 18:32:19 +03:00
pkova
a5f88cb24e ames: use abet pattern for flubbing 2023-07-11 18:19:56 +03:00
pkova
4fe9de8194 lull, gall, hoon: drop pokes for non-running agents 2023-07-11 17:36:09 +03:00
Pyry Kovanen
8f5d29fb73
Merge pull request #6695 from urbit/pkova/delete-nonsense
%base: delete /app/gaze and /ted/naive-csv
2023-07-10 18:51:21 +03:00
Pyry Kovanen
77b0c4c40f
base: update output format in /ted/read 2023-07-10 15:30:07 +03:00
Pyry Kovanen
ff06119f93
base: fix output format in /ted/code 2023-07-10 15:28:57 +03:00
Pyry Kovanen
65508d56a6
base: fix hi thread output formatting 2023-07-10 15:21:09 +03:00
midden-fabler
0543f4e8b1 dojo: high level error at bottom 2023-07-07 23:55:14 -04:00
midden-fabler
8f5497d687
Merge branch 'develop' into dojo-errors 2023-07-07 15:32:21 -04:00
Pyry Kovanen
1211767269
zuse: fix to-wain jet mismatch 2023-07-05 14:40:36 +03:00
midden-fabler
b3be753727 spider: move spider tree 2023-07-04 02:11:03 -04:00
midden-fabler
1c07314ff5 dojo: revise error conditions 2023-07-04 00:30:21 -04:00
Philip Monk
a136355bbd ames: remove lane staleness checks 2023-06-30 15:03:16 -07:00
yosoyubik
f56db0f460 ames: better naming in queued event migrations 2023-06-30 15:26:20 +02:00
yosoyubik
c4e5d3c963 Merge branch 'yu/fix-drop-nack-state' into yu/enable-close-flows 2023-06-30 14:54:30 +02:00
yosoyubik
3b9a22bb5c Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-30 14:32:13 +02:00
yosoyubik
437f943fbd ames: update pill 2023-06-30 14:31:36 +02:00
yosoyubik
caea585c31 Merge branch 'develop' into next/kelvin/412 2023-06-30 12:22:09 +02:00
yosoyubik
f89045364b Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-30 12:21:15 +02:00
yosoyubik
48a4b9ad32 ames: add 15-to-16 state migration
The 14-to-15 state migration was released in urbit-os-v2.142
so we add a new ames-state-16 to account for the removal of
.num-live from $pump-metrics.

This also adds several `$+` shorthand type name for better
prettyprinting in nest-fails situations, all related to the types in
$ames-state.

(note: ames states 14 and 15 are the same, ane tha migration
 just re-retrieved our own %rift—first introduced in state-12-to-13)
2023-06-30 12:15:38 +02:00
yosoyubik
28dd843e60 Merge branch 'develop' into yu/enable-close-flows 2023-06-30 10:18:40 +02:00
yosoyubik
b76c4d4a67 ping: don't no-op if pinging ourselves 2023-06-29 16:47:52 +02:00
yosoyubik
57308e22ef ames: clean up %kroc tasks in old ames-state
The %kroc task was introduced in ames-state-10. The way the
migration works, is that queued-events are transformed right
away into the latests version, and the state is done step-wise in
different arms, but in one go as part of the +molt arm.

This means that all states from %10 need to handle cleaning up
the %kroc task, with the addition that we were already handling
another tasks, %snub, from ames-state-9 until ames-state-11.
This means that we need to handle both tasks in two different
ames-states, and from them only the %kroc task.

This also adds several $+ to the ames types, that make nest-failures
easier to read.
2023-06-29 15:25:18 +02:00
yosoyubik
5fd372dfcb ames: don't crash if flow for a target bone is ~
The fact that the target bone of a flow that we have received is a
naxplanation doesn't guarantee that there will be a naxplanation
flow (i.e. we have actually sent one) so instead of crashing, we just
continue processing the next bone.
2023-06-29 10:49:51 +02:00
yosoyubik
235bfb6b8b ames: re-add +on-deep:ev
probably removed in one of the merges(?)
2023-06-29 09:58:01 +02:00
yosoyubik
2d31adb4a3 Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-06-29 09:27:48 +02:00
yosoyubik
5bcf7b70c3 ames: add provenance path to the sock 2023-06-28 17:48:07 +02:00
Joe Bryan
d280fbcdbb
Merge branch 'develop' into next/kelvin/412 2023-06-28 11:19:32 -04:00
Joe Bryan
b1cb1f1a77
Merge pull request #6665 from urbit/dr/make-vane-txt-hash-ux
arvo: print vane hashes as hashes, not `@p`s
2023-06-28 10:00:42 -04:00
yosoyubik
20cb84d037 Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-06-28 15:51:37 +02:00
yosoyubik
a20a2fffc8 Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-28 15:47:06 +02:00
pkova
aa8c6dd0e0 %base: delete /app/gaze and /ted/naive-csv 2023-06-28 15:10:36 +03:00
yosoyubik
b359239f3d Merge branch 'develop' into next/kelvin/412 2023-06-28 12:52:18 +02:00
Philip Monk
d6c9ac708e Merge remote-tracking branch 'origin/develop' into philip/ping 2023-06-27 22:20:05 -07:00
Philip Monk
38af985ef0 ping: silence spurious printf 2023-06-27 21:54:43 -07:00
Philip Monk
f4188e61af ping: ping the other ship, not ourselves 2023-06-27 20:39:42 -07:00
Philip Monk
ccd9e1936f ping: don't parse ips 2023-06-27 19:37:42 -07:00
Philip Monk
69f45adc49 ping: fixes 2023-06-27 19:14:20 -07:00
Philip Monk
f5602cedbc ping: turn off auto-verb 2023-06-27 19:12:00 -07:00
Philip Monk
42bc4303e5 ping: restrict pokes to self 2023-06-27 18:48:29 -07:00
Joe Bryan
bd0a058c60
Merge pull request #6598 from urbit/m/eyre-mirage
eyre: eauth, cross-ship authentication
2023-06-27 18:34:35 -04:00
fang
f3d1cd3ca4
eyre: simplify internal $note and $sign type style 2023-06-27 23:15:00 +02:00
fang
b2326167cc
dbug: update for recent eyre type changes 2023-06-27 23:09:39 +02:00
fang
7afa3d3486
eyre: collapse recent state update logic
The guest identities (#6561) and EAuth (#6598) features will both be
released as part of Zuse 412K, so their +load logic can be collapsed
into a single step.
2023-06-27 23:08:16 +02:00
fang
5407ae6416
eyre: make sure eauth nonce is unique
Similar to +new-session-key, we want to make sure that when we generate
a new nonce, it isn't already in use.
2023-06-27 23:02:43 +02:00
fang
4e5ce6fb69
eyre: keep queue for outgoing pleas
Keeping a queue of nonces to match the outgoing %pleas we send lets us
recover the nonce for the %done we receive in response. This is
important in the nack case, where we may want to eagerly serve the HTTP
client an error page response, instead of waiting for the timeout timer
to fire.
2023-06-27 22:58:22 +02:00
Ted Blackman
be7f570d85
Merge pull request #6684 from midden-fabler/clay-syntax-pointer
clay: fix syntax error pointer
2023-06-27 11:49:55 -04:00
Philip Monk
90333c2e91 ping: rewrite to add non-NAT mode 2023-06-26 21:18:04 -07:00
midden-fabler
539b843e63 dojo: error messages, missing kev 2023-06-26 23:40:58 -04:00
fang
c33ddfa101
Merge branch 'next/kelvin/412' into m/eyre-mirage 2023-06-26 13:47:39 +02:00
midden-fabler
62a3d67204 dojo: errors style 2023-06-25 09:43:00 -04:00
midden-fabler
9c33a1e968 dojo: gen error cleanup 2023-06-25 00:17:23 -04:00
midden-fabler
7972c40611 dojo: errors for all parts of sample 2023-06-24 01:02:40 -04:00
Marcus
bc70866edc ping: add dbug lib 2023-06-23 19:26:12 -03:00
Marcus
7afc79ce1f arvo: fix scry permission check 2023-06-23 17:36:38 -03:00
midden-fabler
08029b4bde dojo: gen event sample error 2023-06-23 10:04:37 -04:00
midden-fabler
633a96b2be dojo: gen event sample error 2023-06-23 09:32:52 -04:00
midden-fabler
1107aa180a dojo: better generator errors 2023-06-23 01:15:45 -04:00
midden-fabler
156d09d86e clay: syntax pointer remove flop 2023-06-22 18:15:30 -04:00
midden-fabler
ca51353bec clay: fix syntax error pointer 2023-06-22 17:31:00 -04:00
Amadeo Bellotti
2bae99ec2b fixed aqua issue with notes from joe 2023-06-22 15:00:26 -04:00
Amadeo Bellotti
ba3c6e2b54 modified scry to add path 2023-06-22 12:25:40 -04:00
Joe Bryan
28f2cddf8e ames: reinitialize rift for all ranks, not just moons 2023-06-22 11:14:34 -04:00
Joe Bryan
a185d50b5a
Merge branch 'next/kelvin/412' into lick 2023-06-20 14:36:55 -04:00
Ted Blackman
4c1b4c943d
Merge pull request #6639 from urbit/as/bif
hoon: refactor unnecessary parameter to bif:by
2023-06-20 12:14:27 -04:00
Ted Blackman
ea1755bc32
Merge pull request #6669 from urbit/philip/fine
fine: Various fixes
2023-06-20 11:28:21 -04:00
Ted Blackman
88b3e4bc48
Merge pull request #6640 from urbit/as/rut
hoon: remove rut:by, duplicate of urn:by
2023-06-19 13:22:55 -04:00
Joe Bryan
7773caf9f8
Merge pull request #6423 from urbit/dr/jar-add-tap-uni
hoon: add +zip to jar engine
2023-06-19 13:17:44 -04:00
Joe Bryan
e0b35b0a1a
Merge pull request #6676 from urbit/tinnus/fix-ap-peek-mark-typo
gall: fix typo in +ap-peek causing redundant mark conversion
2023-06-19 13:15:50 -04:00
Ted Blackman
c81c259dd9
Merge pull request #6674 from midden-fabler/dojo-no-complete-dead-dudes
dojo: don't +complete-gen-poke-to-app for dead dudes
2023-06-19 13:15:02 -04:00
Ted Blackman
1a15f0b129
Merge pull request #6671 from midden-fabler/dojo-hist
dojo: preserve input history after crash
2023-06-19 13:11:05 -04:00
midden-fabler
9a8cc4ea9f
Merge branch 'develop' into dojo-hist 2023-06-18 00:20:07 -04:00
midden-fabler
71ea6aed6a dojo: hist cit -> sign 2023-06-17 21:08:59 -04:00
midden-fabler
d655df429b dojo: hist - cleanup 2023-06-17 20:40:25 -04:00
midden-fabler
8a6609b951 dojo: handle failure gracefully 2023-06-17 20:10:37 -04:00
Alex Shelkovnykov
9509254a2d hoon: remove rut:by, duplicate of urn:by 2023-06-17 13:37:26 -04:00
Alex Shelkovnykov
fe34f55a04 hoon: refactor unnecessary parameter to bif:by 2023-06-17 13:30:18 -04:00
Tinnus Napbus
85b1b4901a gall: fix typo in +ap-peek causing redundant mark conversion 2023-06-17 20:59:24 +12:00
midden-fabler
0fd592a25d hood: remove deprecated generators 2023-06-17 01:26:10 -04:00
midden-fabler
b590bf9000 dojo: don't +complete-gen-poke-to-app for dead dudes 2023-06-16 23:40:45 -04:00
fang
02046effb1
dbug: update for recent eyre changes 2023-06-16 22:49:14 +02:00
fang
d8a03d094b
eyre: include local id in the eauth confirm page
We probably want something slightly fancier, like a banner or something,
that also shows up on the login page (and perhaps other "system" pages),
but for now this should suffice.
2023-06-16 21:22:37 +02:00
Amadeo Bellotti
510673e134 forgot ) 2023-06-16 12:02:32 -04:00
Amadeo Bellotti
5864a80153 modified lick to be cleaner and added an exisistance scry 2023-06-16 09:58:05 -04:00
yosoyubik
f0c02880cc Merge branch 'develop' into yu/fix-drop-nack-state 2023-06-16 10:02:28 +02:00
Philip Monk
74ed6daa02 fine: use %q, and don't interpret null as tombstoned 2023-06-15 18:44:05 -07:00
midden-fabler
e888da2cc6 dojo: history - only pass id 2023-06-15 15:43:37 -04:00
midden-fabler
135af5eaf5 dojo: further simplify history preservation 2023-06-15 11:43:57 -04:00
pkova
9d33bb7fd1 eyre: keep json to mime tube warm in handle-scry 2023-06-15 18:30:51 +03:00
midden-fabler
bf4195eb0c dojo: simplify history 2023-06-15 05:01:47 -04:00
midden-fabler
bd2ba9cb64 dojo: preserve input history after crash 2023-06-15 02:41:01 -04:00
Philip Monk
238a36de1d fine: actively fetch rift for moons 2023-06-14 23:28:37 -07:00
Philip Monk
f68f3dc833 fine: use progressive insertion sort instead of quicksort to assemble fragments 2023-06-14 21:46:29 -07:00
Joe Bryan
df5cdeafad vats: correct deprecated %cd scry 2023-06-14 16:23:03 -04:00
Pyry Kovanen
04598f8e0b
Merge pull request #6660 from midden-fabler/dojo-complete-ted-heps
dojo: complete teds in dirs
2023-06-14 15:21:44 +03:00
Philip Monk
a30cb42038 clay: remove !: 2023-06-13 23:14:02 -07:00
Philip Monk
4a8c0b2d6c fine: fix pathological congestion control case with large windows 2023-06-13 23:06:51 -07:00
Philip Monk
18e34bdab6 fine: loosen path restrictions 2023-06-13 23:06:20 -07:00
Philip Monk
3c3f59a2ac ames: rewrite +fi-on-ack to not use +dip 2023-06-13 22:13:38 -07:00
Philip Monk
fc3d9741df fine: fix various 2023-06-13 16:18:37 -07:00
midden-fabler
8c2e451e3f dojo: complete ted remove barket 2023-06-13 18:51:42 -04:00
dr-frmr
14fca80054
scow %uv instead of %ux to match desk hashes 2023-06-13 14:46:32 -04:00
Philip Monk
db708560cd clay: add debug command to retry remote scry 2023-06-13 00:05:09 -07:00
midden-fabler
a6189648f4 dojo: complete teds in dirs 2023-06-13 02:02:36 -04:00
dr-frmr
a98fcc4dd7
arvo: print vane hashes as @ux instead of @p 2023-06-12 20:17:04 -04:00
dr-frmr
e9c6273757
jar: tap -> zip 2023-06-12 19:33:11 -04:00
dr-frmr
0c9b9b26b2
arvo: make vane hash prints parse as @ux instead of @p 2023-06-12 16:20:34 -04:00
Quodss
be0e8c0a50
strip faces of subjects in ++curr, ++cury, ++corl 2023-06-12 19:24:39 +02:00
Ted Blackman
6153f8c7e3
Merge pull request #6609 from urbit/yu/remove-num-live
ames: remove num-live from pump-metrics
2023-06-12 11:50:15 -04:00
yosoyubik
d54b3645cb gen: restore sorting flows by nonce
This was removed when the logic for re-subscriptions was taken from %ames
into the generator. Sorting allows us to keep the current (last) subscription
as the last in the list, and in this case we check if it received an ack for
a naxplanation—see https://github.com/urbit/urbit/issues/6065#issuecomment-1322011137—
in which case it's safe to be corked.
2023-06-12 16:04:46 +02:00
Pyry Kovanen
dabc9ea631
Merge pull request #6654 from midden-fabler/dojo-complete-naked-ted
dojo: add complete-naked-ted
2023-06-12 16:38:27 +03:00
Pyry Kovanen
77d1ab4acc
Merge pull request #6653 from midden-fabler/dojo-sort-complete-aor
dojo: sort complete options aor
2023-06-12 15:38:59 +03:00
Pyry Kovanen
9b264546de
Merge pull request #6652 from midden-fabler/dojo-complete-naked-poke
dojo: complete-naked-poke for all agents
2023-06-12 15:33:23 +03:00
Pyry Kovanen
2169652df3
Merge pull request #6636 from niblyx-malnus/develop
spider: provide a tang http response when a thread called via http crashes
2023-06-12 14:58:22 +03:00
Quodss
46ec863734
fix ++curr
Fixes sample of a wet gate produced by ++curr
2023-06-12 11:19:27 +02:00
midden-fabler
95ceed2088 dojo: add complete-naked-ted 2023-06-11 01:32:31 -04:00
midden-fabler
2385268f60 dojo: sort complete options aor 2023-06-11 00:23:09 -04:00
midden-fabler
35f1b47890 dojo: complete-naked-poke remove redundant cy check 2023-06-10 13:27:49 -04:00
midden-fabler
36e63a795f dojo: complete-naked-poke for live dudes 2023-06-10 13:08:23 -04:00
midden-fabler
6d43e73d3e dojo: complete-naked-poke for all agents 2023-06-09 21:29:15 -04:00
niblyx-malnus
9fa0b17ed0
as-octt:mimes:html -> as-octs:mimes:html and en-json:html -> en:json:html 2023-06-09 13:45:39 -04:00
dr-frmr
e1786c7009
hoon: remove +uni from +ja, keep +tap 2023-06-09 11:30:14 -04:00
Josh Lehman
82aae2f9e3
Merge pull request #6630 from urbit/jb/insane
hoon: fixes (sane %t) for multi-byte glyphs
2023-06-09 08:17:16 -07:00
fang
ef89cf2410
eyre: rework eauth to be client-initiated
Instead of doing formal network traffic on the host-side whenever a
login attempt gets initiated, we now do it no earlier than when we're on
the client-side. This has the important property that network traffic
can only be initiated by authenticated HTTP requests. The previous
implementation, where hosts sent pleas when an unauthenticated HTTP
client said then wanted to log in, was vulnerable to abuse.

So now, formally, the eauth flow starts at the client's confirmation
screen. There is an optional step preceding this, where an attempt is
started on the host (and data is still stored for this), but to get the
redirect target, the host uses remote scry to get the eauth URL out of
the client ship.

Hosts now also give attempt-specific return URLs, useful in case they
are accessible (or even serving different content) from different
hostnames.
2023-06-09 15:46:04 +02:00
Pyry Kovanen
0de6601f93
Merge pull request #6638 from midden-fabler/dojo-gen-tab-complete
dojo: gen tab complete for non-base desks
2023-06-09 13:41:23 +03:00
midden-fabler
c3211c2f3d handle non-running agents on base 2023-06-08 12:51:53 -04:00
Josh Lehman
c0cb7d810a
Merge pull request #6592 from urbit/ea/add-subaxis-test
hoon: add pin and awl arms to test and trim subaxes
2023-06-08 08:30:09 -07:00
Josh Lehman
86565e81c8
Merge pull request #6480 from urbit/i/6401/clay-permission-check
clay: add requests permission checks
2023-06-08 08:28:54 -07:00
yosoyubik
af4c099ee5 gen: update +stale-flows 2023-06-08 14:04:13 +02:00
yosoyubik
623e0eafb2 Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-06-08 06:40:39 +02:00
yosoyubik
405f3d21ac Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-08 06:38:31 +02:00
yosoyubik
9851771564 ames: account for / in pre-nonce %watches 2023-06-07 19:25:35 +02:00
yosoyubik
68db0b4e03 ames: move +on-kroc logic to |close-flows
+on-kroc was cluttered with ad-hoc logic to indentify stale flows from
failed resubscriptions that were not properly %corked. Here we move
that logic to a generator that, if not in dry mode, will call %ames with a
(list  [ship bone]) to %cork them.

Another option would be to move the logic in the generator to a state
update in ames, which will trigger possibly thousands of %ames messages
to be sent, on every ship that runs the state migration—these flows are
not causing a problem that neds to be addressed, and only take extra
space.

If we decide that this needs to be run by everyone, one solution could be
to set up a timer (maybe taking advantage of the fact that ships don't get
the OTA a the same time) that will eventually poke %hood with a
%helm-ames-kroc task.
2023-06-07 15:55:50 +02:00
Mikołaj Paraniak
b031f9e78d hoon: fixes a serious bug in +fitz
+fitz is badly broken due to a typo.
This has so far been masked by a functioning jet.
2023-06-07 18:41:55 +08:00
Tinnus Napbus
7c3a1c4d7c Merge branch 'next/kelvin/412' into tinnus/local-provenance 2023-06-07 20:38:05 +12:00
niblyx-malnus
1818790e35
Send 500 response with tang. 2023-06-06 13:01:43 -04:00
Ted Blackman
fc5598718b Merge branch 'develop' into next/kelvin/412 2023-06-06 12:50:11 -04:00
Ted Blackman
078b3a171d
Merge pull request #6629 from urbit/pkova/runtime-version
base: add %runtime-version
2023-06-06 11:40:42 -04:00
pkova
de3dd34826 base: make %runtime-version a thread 2023-06-06 15:46:44 +03:00
pkova
dd979600e2 base: restore deleted vere mark 2023-06-06 15:45:41 +03:00
yosoyubik
d5bc16ee3e ames: don't crash if sndr/rcvr lifes mismatch 2023-06-05 11:06:22 +02:00
yosoyubik
2c854d1285 ames: remove space leak for outbound naxplanations
Companion to https://github.com/urbit/urbit/pull/6607, where the space leak was fixed
2023-06-05 10:01:44 +02:00
yosoyubik
65b83a3318 Merge branch 'develop' into yu/remove-num-live 2023-06-05 09:47:39 +02:00
midden-fabler
e90c26dba6 handle bogus agents 2023-06-04 02:44:04 -04:00
midden-fabler
83e60a3c44 dojo: gen tab complete for non-base desks 2023-06-03 21:18:02 -04:00
niblyx-malnus
4d1c45d76e
fix thread-clean order and provide tang response as a json in +thread-http-fail
(1) In `+thread-fail`, `+thread-clean` is called before `+thread-http-fail` and `+cancel-scry` meaning neither of the latter two actually. `serving` has been replaced with `(~(del by serving.state) tid)` in the state and therefore we cannot `(~(get by serving.state) tid)` in `+thread-http-fail` or `+cancel-scry`.

(2) In `+thread-http-fail` return an informative tang as json instead of an empty 500 http response when the failure results from an internal crash.
2023-06-02 13:05:16 -04:00
yosoyubik
6696f587be Merge branch 'next/kelvin/412' into i/6103/abet-pure 2023-06-01 17:46:36 +02:00
yosoyubik
8b518f4bfe Merge branch 'develop' into next/kelvin/412 2023-06-01 17:39:42 +02:00
Joe Bryan
8bb1873041 hoon: fixes +sane style 2023-05-31 14:34:11 -04:00
Joe Bryan
e71d9d6631 hoon: fixes (sane %t) for multi-byte glyphs 2023-05-31 14:33:35 -04:00
pkova
c85aca347c base: add %runtime-version 2023-05-31 16:36:27 +03:00
Tinnus Napbus
0105be6459 Merge branch 'develop' into tinnus/local-provenance 2023-05-31 12:52:53 +12:00
dr-frmr
4454ba388b
Merge branch 'next/hoon/138' into dr/jar-add-tap-uni 2023-05-30 15:30:49 -04:00
Tinnus Napbus
8ed74ac717 gall: new type which is /w providence 2023-05-30 22:28:19 +12:00
yosoyubik
96e3bdcf11 Merge branch 'develop' into i/6103/abet-pure 2023-05-30 10:38:39 +02:00
yosoyubik
d3489cc8db ames: generalize $deep tasks
currently all $deep tasks are focused on a particular ship but future
 ones might not, so we move $ship to each individual task
2023-05-30 10:33:13 +02:00
yosoyubik
7ce74f36c6 ames: add %deep task to handle deferred calls
note: %ames tests have not been updated to account for this change
2023-05-30 10:33:13 +02:00
Joe Bryan
d4b900bf3f
Merge pull request #6612 from urbit/i/6611/lose-boon
ames: correctly %lose a %boon we crashed on
2023-05-26 11:19:57 -04:00
Ted Blackman
7d9df71d5e
Merge pull request #6613 from urbit/i/6608/skip-corks
ames: skip corks if pending acks for naxplanations
2023-05-26 10:51:33 -04:00
Ted Blackman
d234b3205f
Merge pull request #6607 from urbit/yu/fix-drop-nack
ames: don't no-op if getting %ack on nack bone
2023-05-26 10:19:31 -04:00
yosoyubik
6528c62b1f Merge branch 'develop' into i/6608/skip-corks 2023-05-26 10:17:19 +02:00
yosoyubik
1e74e8d19a ames: simplify pending-acks conditional 2023-05-26 10:09:44 +02:00
yosoyubik
c427637910 Merge branch 'next/kelvin/412' into yu/remove-num-live 2023-05-25 14:24:01 +02:00
Ted Blackman
13ae086837
Merge pull request #6617 from urbit/jb/fine-misordered
fine: handle misordered responses
2023-05-24 17:19:33 -04:00
mopfel-winrux
40fbf3b262
Merge branch 'next/kelvin/412' into lick 2023-05-24 14:56:19 -04:00
Matthew LeVan
864a6c6a09
Merge pull request #6618 from urbit/develop
merge `develop` into `next/kelvin/412`
2023-05-24 14:37:37 -04:00
Joe Bryan
fee0f604cc fine: sort response fragments before deserializing 2023-05-24 13:01:29 -04:00
Joe Bryan
b0d2db25b5 fine: narrows error message scope on bad responses 2023-05-24 13:00:48 -04:00
Joe Bryan
ee8e2e997c tests: fixes +ames-scry-hunk in ames/gall test helper 2023-05-24 12:48:03 -04:00
Amadeo Bellotti
bbe8066494 cleanup?" 2023-05-24 12:23:35 -04:00
mopfel-winrux
0ecb87430a
Merge branch 'urbit:develop' into lick 2023-05-24 12:15:31 -04:00
Amadeo Bellotti
7394e62145 modified gall to prepend agent name to port path 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
4a38f9ca5b XX for spin 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
3b1c415d21 deleted a wrong line 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
47f43df3b9 cleaned up and renamed some stuff. added scry endpoints 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
7e1ddbcca1 changed name from term to path 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
5a0de97958 added disconnect soak during born 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
46c86c01de modified duct to return data 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
15424c9200 modified api and compiled 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
82880f4311 changed spew to spit: 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
60c9d07034 modified api 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
d09e9a8013 switch to lick 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
d0cd351acb changed to lick 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
ff4194c24c removed unnecessary ted file 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
16233f7360 modified API to use units and such 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
cde0b50d26 removed some old code 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
3cb5249d50 added inital scry stuff for loch devices 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
7bcc6bd8c4 loch mods 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
08540c8257 fixed api and added rote path 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
323ad41a96 cleaned up interface 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
6a8cea04b3 modified flow for read red, and turn 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
c643db1e14 modified some stuff to return a card to vere 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
cd7dbfd3d3 loch has some state change 2023-05-24 12:13:44 -04:00
Amadeo Bellotti
791782fafa added %read and %writ cards 2023-05-24 12:13:43 -04:00
Amadeo Bellotti
653725da98 boiler plate for loch 2023-05-24 12:13:43 -04:00
Joe Bryan
cb280d9eb4 Merge branch 'next/hoon/138' into m/wuthax 2023-05-24 11:51:53 -04:00
Joe Bryan
4a23809063 hoon: embrace the combinatorial explosion 2023-05-24 11:47:56 -04:00
pkova
48adc133e4 mar: add vere mark 2023-05-24 18:37:54 +03:00
Ted Blackman
b5ff3be787
Merge pull request #6460 from urbit/i/6448
hoon: allow `%.` in spec mode
2023-05-24 11:36:23 -04:00
Ted Blackman
00775beba4 hoon: 138k 2023-05-24 11:34:11 -04:00
fang
2b9d603951
ames: turn all pending %boons into %losts
This was the behavior prior to d8e11b6, except that we now correctly include
the new %boon in the transformation also.
2023-05-24 14:07:29 +02:00
yosoyubik
f6101569f5 ames: skip corks if pending acks for naxplanations 2023-05-24 12:35:38 +02:00
fang
5441692a1f
eyre: up priority on unexpected eauth traces
These are more "warning" or "error" as opposed to informational like all
the other ones at level 2.
2023-05-23 22:44:10 +02:00
fang
73ca5ea95d
eyre: make sure we always url-encode the redirect
Just for consistency, just in case.
2023-05-23 22:38:56 +02:00
fang
c133704866
eyre: move incoming eauth expiry logic into +eauth
+expiry:client:eauth, to be precise. This is a slightly cleaner
factoring.
2023-05-23 22:37:05 +02:00
fang
60eaf8a979
eyre: handle %lost and goof error cases correctly
We weren't handling these at all. Now we make them enter the same
codepath that %done nacks go into: deleting the attempt and maybe
telling the user if we can.

Note that Eyre will not receive %lost for %boons it crashes on until
2023-05-23 22:29:08 +02:00
fang
d8e11b68c2
ames: correctly %lose a %boon we crashed on
Previously, if we noticed %boon handling had caused a crash, we would
transform any existing %boons into %losts, but still emit a new %boon
for the message we ostensibly crashed on.

Now, we make sure to just directly send a %lost if sending the %boon
caused a crash. We drop the existing-moves transformation entirely,
assuming it to vestigial.
2023-05-23 22:10:17 +02:00
fang
02e8120298
eyre: factor +eauth-error-page out of event core
This will make it easier to access for tests. The change to its
interface is also nice: in pretty much all scenarios in which we call
it, we already know whether we have redirect deets available to us, so
just provide those as arguments instead of having the function
re-derive.
2023-05-23 19:58:11 +02:00
Ted Blackman
89681e25b4
Merge branch 'next/kelvin/412' into yu/remove-num-live 2023-05-23 11:50:40 -04:00
Ted Blackman
579c3259ad merge develop into next/kelvin/412 2023-05-23 11:49:24 -04:00
yosoyubik
3554ab895d ames: remove num-live from pump-metrics 2023-05-23 06:48:15 +02:00
fang
87be9c9bef
eyre: add task for setting manual eauth base url 2023-05-22 21:08:11 +02:00
fang
f1ab9574e6
eyre: better styling for the eauth confirm page
Brief prompt describing the login attempt's target, properly styled
buttons.

Pulls the CSS code for login pages out into its own arm for cleaner
sharing.
2023-05-22 19:48:28 +02:00
yosoyubik
e440a443e5 ames: don't no-op if getting %ack on nack bone 2023-05-22 17:53:20 +02:00
yosoyubik
1921fd277c ames: add comment 2023-05-22 17:38:31 +02:00
Josh Lehman
799c49f873
Merge branch 'develop' into i/6103/abet-pure 2023-05-22 08:37:32 -07:00
Tinnus Napbus
2ba8e45fd2 tests: fix tests for provenance 2023-05-23 01:55:55 +12:00
Tinnus Napbus
de51f74dc2 gall: implement local provenance 2023-05-23 01:12:09 +12:00
yosoyubik
89da6d433b ames: fix incorrect handling of acks in |pack 2023-05-22 15:05:18 +02:00
jose
7df931b375
Merge branch 'develop' into i/6103/abet-pure 2023-05-22 13:23:02 +02:00
yosoyubik
a765954cee ames: don't get ship-state in +enqueue-alien-todo
ship-state is retrieved in +send-blob only for sponsors of the ship
2023-05-22 12:49:00 +02:00
yosoyubik
7d153ba99a ames: fix no-op if getting %ack on nack-trace bone 2023-05-22 12:14:53 +02:00
yosoyubik
66b92800e3 ames: don't retrieve ship-state in +send-blob 2023-05-22 11:41:32 +02:00
yosoyubik
b427f1c321 ames: early abet in |fi after route update
Continuation of https://github.com/urbit/urbit/pull/6593
2023-05-22 10:58:50 +02:00
fang
7d4f9d1b57
eyre: properly redirect unauthed eauth confirms
We had naively changed the status code to a 403 "forbidden" response,
which is technically correct, but the "Location" header isn't respected
for that status code, leaving the user with a blank page instead of a
login prompt.
2023-05-19 22:53:02 +02:00
fang
0762c7a127
eyre: only accept eauth approvals from ourselves
Instead of accepting POST requests from anyone who asks.
2023-05-19 19:23:24 +02:00
fang
3347e84811
eyre: rename authentication-state to auth
Only in the $server-state type, the lull typename remains unchanged (for
now). "authentication-state" is just such a mouthful!
2023-05-19 11:32:07 +02:00
fang
dd41df7d7c
tests: make eyre tests build & succeed again 2023-05-19 11:09:11 +02:00
fang
33c3474ae5
eyre: improve eauth login page ux
We improve the styling on the login mode switching "tabs", ensure
elements shared between the two modes are visually aligned, do loose
input validation on the name field, and simply don't render the eauth
option at all if the local ship does not yet have an +eauth-url.
2023-05-19 10:35:23 +02:00
fang
816706892c
dbug: support eyre eauth state & functionality 2023-05-18 23:40:16 +02:00
fang
02a2d116fe
Merge branch 'next/kelvin/412' into m/eyre-mirage 2023-05-18 23:15:55 +02:00
fang
8579b6c952
eyre: eauth, cross-ship authentication
aka "mirage" aka "eyre oauth"

With Eyre now supporting both local identity authentication, and fake
guest identities, the logical next step is to support authentication
with real non-local identities. Here, we implement that, building on top
of the groundwork laid by #6561.

The primary change is adding a %real case to Eyre's $identity type, and
implementing an http<->ames<->ames handshaking protocol into Eyre for
negotiating approval of login attempts made by unauthenticated HTTP
clients.

The authentication flow, where a "visitor" logs into a "~host" as their
own "~client" identity can be described in brief as follows:
1) Visitor makes an HTTP request saying they are ~client.
2) ~host tells ~client, over Ames, about its own public-facing hostname.
3) ~client responds with its own public-facing hostname.
4) ~host forwards the visitor to ~client's eauth page.
5) Visitor, there already logged in as ~client, approves the login
   attempt.
6) ~client shares a secret with ~host over Ames, and forwards the
   visitor to ~host's eauth page, including the secret in the request.
7) ~host sees that the secrets received over Ames and HTTP match, and
   gives the visitor a new session token, identifying them as ~client.

The negotiating of hostnames/URLs via Ames is crucial to keeping this
handshake sequence secure.

Discovering a ship's public-facing hostname happens when successful
local logins are made by reading out the Host header from the request.
Users may hard-code a value to override this.

Each eauth login attempt comes with a unique nonce. Both the host and
client track the lifetime of these. The corresponding Ames flow (which
goes from ~host -> ~client) is corked when the login attempt gets
aborted, or its associated session expires.

The logout functionality has been updated to let clients ask to be
logged out of sessions on other ships.
2023-05-18 23:13:15 +02:00
Joe Bryan
15440d3dda ames: add %rift to %stir 2023-05-17 16:51:12 -04:00
fang
4019cfba79
Merge pull request #6561 from urbit/m/the-open-eyre
eyre: session identities for all
2023-05-17 13:03:14 +02:00
Philip Monk
8cba74630f ames: bugfixes 2023-05-16 23:05:17 -07:00
Edward Amsden
5606bb32f1 hoon: make +pin total over non-zero atoms 2023-05-16 19:32:09 -05:00
Edward Amsden
a19a41198a hoon: +awl -> +hub 2023-05-16 19:07:36 -05:00
Edward Amsden
e020d06cd4 hoon: address review comments for pin and awl 2023-05-16 18:51:07 -05:00
Edward Amsden
6b4b652f31 Merge remote-tracking branch 'origin/develop' into ea/add-subaxis-test 2023-05-16 18:10:56 -05:00
Edward Amsden
cce2b5c9ed hoon: add pin and awl arms to test and trim subaxes 2023-05-16 18:09:09 -05:00
Ted Blackman
07797dc792
Merge pull request #6591 from urbit/jb/clay-cast
clay: shortcircuit identity casts
2023-05-16 18:22:18 -04:00
Joe Bryan
40c52743e1 Merge branch 'develop' into next/kelvin/412 2023-05-16 18:07:46 -04:00
Joe Bryan
bbd43cc7d4 clay: clarify +compose-cast trace messages 2023-05-16 16:42:13 -04:00
Joe Bryan
401776545c clay: shortcircuit identity casts 2023-05-16 15:59:04 -04:00
Joe Bryan
c84cf7359b clay: adds trace level 4 for mark conversion details 2023-05-16 15:58:55 -04:00
fang
637992475b
eyre: refactor guest name generation
Concatenating before we truncate, instead of truncating the entropy by
itself, is slightly simpler.

Because this slightly changes the naming algorithm, we must update the
eyre tests to match.
2023-05-16 21:46:48 +02:00
Daryl Richter
8ef86629ec clarify +vats usage in +vat deprecation msg 2023-05-16 14:40:08 -04:00
Ted Blackman
0760248300
Merge pull request #6555 from urbit/story-fix
Fix story (commit message system).
2023-05-16 11:30:57 -04:00
Ted Blackman
0113f8a01d
Merge pull request #6586 from urbit/i/6584/rift-life-gen
gen: add +ames-keys generator
2023-05-16 11:22:05 -04:00