Commit Graph

15965 Commits

Author SHA1 Message Date
Liam Fitzgerald
f382624c35 ames: make encrypted scry namespace properly recursive 2023-09-26 11:42:05 +01:00
Liam Fitzgerald
ab3a4b05f8 Merge remote-tracking branch 'origin/jb/chum' into lf/back-to-school-arc 2023-09-26 10:10:31 +01:00
Liam Fitzgerald
9a3daeb646 ames, gall: strip sigpams, re-enable key checking 2023-09-26 09:50:53 +01:00
Joe Bryan
949ac9d006 chum: refactors, corrects interface for blocking 2023-09-25 18:31:27 -04:00
Liam Fitzgerald
754215f9ae ames, gall: encrypted remote scry works end to end 2023-09-25 18:39:39 +01:00
Joe Bryan
6baed5cfcb chum: initial (two-party encrypted remote scry) 2023-09-22 14:19:15 -04:00
Liam Fitzgerald
39105cfeed ames: make key acquisition asynchronous 2023-09-21 16:24:23 +01:00
Pyry Kovanen
5fe2d6ea98 eyre: allow header-list to contain multiple cookies 2023-09-21 14:00:53 +03:00
Pyry Kovanen
6b94db25be
Revert "Revert "kiln: OTA merge approval (UIP 114)"" 2023-09-21 13:55:55 +03:00
Pyry Kovanen
bca8e46895
Revert "kiln: OTA merge approval (UIP 114)" 2023-09-21 13:39:23 +03:00
Liam Fitzgerald
13964e27e9 ames: add encrypted remote scry support 2023-09-20 16:30:28 +01:00
Pyry Kovanen
e0afd123c7
Merge branch 'next/kelvin/411' into tinnus/kiln-ota-approval 2023-09-20 14:29:36 +03:00
Liam Fitzgerald
3e0e45e775 ames: add symmetric keychain functionality 2023-09-19 17:48:15 +01:00
Pyry Kovanen
fbab1a2e82 eyre: revert strange typo in previous commit 2023-09-19 19:45:23 +03:00
Pyry Kovanen
417906051d eyre: add missing wire to rof calls in http-scry codepath 2023-09-19 19:45:23 +03:00
lukechampine
5ff263e78d eyre: add HTTP scrying 2023-09-19 19:45:23 +03:00
Pyry Kovanen
37db4ab4a8
Merge pull request #6797 from urbit/develop
Merge develop into next/kelvin/411
2023-09-19 19:45:02 +03:00
fang
34148f9f44 eyre: allow PUTting empty channel-request list
Previously, we would reject this with a 400 error. Considering the
request body is expected to contain "array of requests" and that arrays
may be empty, we really should not be rejecting the requests.

Prior to 156ca21472, sending the empty array would have been convenient
for channel creation. Empty arrays getting rejected forced clients to
inject a faux poke (commonly hi-ing oneself). With that recent change,
the most common case for wanting to PUT the empty list of requests is
largely obsolete, but one can still imagine it being useful for clients
that want to keep their channel alive without necessarily being
connected to it. This also implements sloppier clients from running into
400 responses when they submit an empty "command queue" for whatever.

Regardless, there seems to be no clear reason why the empty request list
_shouldn't_ be accepted and processed as normal.

We add a small test to ensure eyre accepts this.
2023-09-19 19:12:25 +03:00
fang
4affae8181 eyre: GETting non-existent channels creates them
Previously, a channel could only be created by sending a PUT request,
and a GET request to receive the channel's stream would only succeed
after channel creation had happened that way. This forces client
libraries, that generally have an explicit "set up" step before allowing
normal operation, to do strange things, like sending faux pokes
(commonly hi-ing oneself) before connecting to the channel's stream as
normal.

Here, we update the GET request handling for channels to allow requests
for non-existent channels. When this happens, the channel will be
created, and eyre tracks the request as normal.

We do some... gentle restructuring... of +on-get-request:by-channel to
let the new creation case share code with the "already exists" codepath.
In the process, we find that duct-to-key was never getting updated in
the case where we replace the original channel request/connection with
the new incoming one. We fix this, it's trivial. We also identify two
other areas with vaguely-incorrect behavior, but consider them less
important and out of scope.

We also add a test case for "create channel through GET".
2023-09-19 19:12:25 +03:00
Liam Fitzgerald
df68e62917 gall: wip coop 2023-09-19 15:09:54 +01:00
Pyry Kovanen
e355b5090e
Merge pull request #6783 from urbit/pkova/dear
lull, ames: add %dear task to receive lane from unix
2023-09-19 15:56:43 +03:00
Pyry Kovanen
c846dea16b
Merge pull request #6796 from urbit/develop
Merge develop into next/kelvin/411
2023-09-19 13:56:24 +03:00
fang
b427c9e800 eyre: serve 503 if bound agent is not running
Previously, for endpoints bound to agents, we would pass the request
onto the agent even if the agents wasn't currently running.

Here, we make eyre check to see if the agent is actually running, before
passing the request on. If the bound agent is not running, eyre serves a
503 synchronously instead.

This way, we avoid cluttering up the gall queue for the bound agent.
2023-09-18 15:52:28 +03:00
Liam Fitzgerald
12c9e64297 temp commit 2023-09-17 15:54:43 +01:00
Tinnus Napbus
e9a618e184 kiln: change jump-related @p printing to scow's 2023-09-16 02:53:41 +12:00
Tinnus Napbus
00bc412619 kiln: simplify ++frond call in %kiln-jump mark 2023-09-16 01:34:01 +12:00
Tinnus Napbus
b2a3350afd kiln: %jump-ask mark noun:grab structure mode 2023-09-16 01:31:17 +12:00
Tinnus Napbus
b59525a203 kiln: OTA merge control
- let users disable automatic OTA merging for a sync or globally
- a sync can be set to manual, automatic or global default
- unapproved non-auto updates must be approved by the user
2023-09-15 22:20:42 +12:00
pkova
58698a428c ames: cancel pump timers when toggling to dead flow consolidation 2023-09-14 22:48:58 +03:00
pkova
bf4d7c92e1 ames: make dead flow consolidation toggleable, default off 2023-09-14 18:35:26 +03:00
Liam Fitzgerald
58f2d427ce gall: security primitives for encrypted scry
This commit adds `%tend` `%germ` and `%snip` to the notes that gall can
pass. `%tend` is analogous to `%grow`, except with a security group defined
by .coop.

 ### The coop system
A `$coop` is a path, which defines a security context for the portion of
the namespace that it prefixes. Each `$coop` receives a symmetric key,
which is used to encrypt requests and responses for any key-value pair
belonging to a coop.

 ### Network overview
This design requires a single handshake over ames to inform clients what
key is to be used. However, this handshake can be made less frequent by
including all paths underneath the `%coop` in the response, such that if
the user is requesting sibling paths under the same `%coop`, only one
handshake is required.

 ### Naming
I am utterly detached to all new names introduced, just trying to get
something down

 ### API Design
The most contentious part of this proposal will likely be the split
between `%grow` and `%tend`. I assert (rather weakly mind you) that this
is more ergonomic for the end user, although there's a strong argument
to be made that `%grow` should just take a `(unit coop)`. If this were
the case, however, it would muddy the semantics. If the value is
encrypted, then the ship,desk,case will be in the coop, else it will be
specified in the path.  Worth noting that specifying the
`%coop` and the rest of the path seperately seems like it could be
unintuitive because the path that it will be bound to is actually
`(welp coop path)`

The lifecycles for coops seem straightforward, although worth revisiting
the invariants it maintains, and how it handles those invariants. A list of such:
- No nesting (obviously good)
- Crashing on binding publically into a private coop (crashing is bad,
do we want to deliver a notification? (See footnote 1))
- Crashing on binding into a coop that doesn't exist (same notes as above)

 ### Key generation
Current implementation is obviously stupid, how should i do it?

 ### Footnotes
 1. Why are the remote scry datastructures notes and not gifts? Forgive
 me being out of the loop, but we don't actually use the wire for
 anything anywhere, and remote scry is giving gift anyway.
 2. It's so good to be back
2023-09-14 04:53:11 +01:00
Pyry Kovanen
babfd75daf
roller-rpc: do not assert team:title for http-requests 2023-09-13 14:57:28 +03:00
midden-fabler
dabff19cd9 gall: add scry endpoint for backups 2023-09-06 17:34:34 -04:00
Pyry Kovanen
328e085e41
lick: initialize unix-duct before %born 2023-09-05 16:17:06 +03:00
pkova
6a6e07d49f lull, ames: add %dear task to receive lane from unix 2023-09-04 22:09:52 +03:00
Ted Blackman
f077e48112 ames: fix saxo scry; emit on sponsor change too 2023-09-01 11:28:31 -04:00
Ted Blackman
0c6f3030f3 lull,ames: emit %saxo gift on %born 2023-09-01 11:17:35 -04:00
Tinnus Napbus
c8ab40c87a Merge branch 'next/kelvin/411' into desk-publisher-switcher 2023-08-31 01:44:40 +12:00
Ted Blackman
9d2f40d654 sys.kelvin: zuse 411 2023-08-23 16:39:28 -04:00
pkova
c8379b245a zuse: decrement kelvin from 412 to 411 2023-08-23 21:22:50 +03:00
Pyry Kovanen
4bb9bae2d2
arvo: add provenance when casting forward move 2023-08-23 19:06:14 +03:00
Matthew LeVan
355985fb0e arvo: persistently cache scry type checks 2023-08-23 11:32:14 -04:00
Matthew LeVan
7f91bcdca6 ames: persistently cache ++jim and remove ++dedup-message 2023-08-22 15:50:58 -04:00
Pyry Kovanen
3260e4fe05 eyre: handle old wires correctly in +on-gall-response 2023-08-22 21:37:15 +03:00
Pyry Kovanen
a1f9374145
Merge pull request #6756 from urbit/pkova/dead-flow-fix
ames: fix bug in dead flow consolidation
2023-08-21 18:29:39 +03:00
yosoyubik
8320e7dbf2 ames: update dead flow timers in state 2023-08-21 14:03:38 +03:00
yosoyubik
4da54b9e4d ames: reinitialize recork timer 2023-08-21 14:03:38 +03:00
yosoyubik
e6bc865425 gall: fix error 2023-08-18 16:52:54 +02:00
yosoyubik
7242e56be5 gall: clear leaves.state after handling all leaves
Instead of setting a new timer every time, we wait to hear a new %nack
for a %leave to do so, accumulating any unacked %leaves in the state for
up to ~m2. When the timers comes back, we re-send all outsanting %leaves
and skipp setting up a new timer.
2023-08-18 13:57:16 +02:00
yosoyubik
be0bbc78c5 Merge branch 'yu/decongest-ames-in-develop' into yu/fix-state-migrations 2023-08-18 08:16:26 +02:00
yosoyubik
19f5946e72 ames: only reinitialize congestion if bunted 2023-08-17 15:22:09 +02:00
yosoyubik
def2591812 ames: reinitialize congestion control values 2023-08-17 15:22:03 +02:00
yosoyubik
ce2582cc3a ames: only reinitialize congestion if bunted 2023-08-17 15:13:10 +02:00
yosoyubik
9b1ea79991 ames: reinitialize congestion control values 2023-08-17 15:05:53 +02:00
yosoyubik
cf937374c8 gall: put +on-bad-nonce log under %odd flag
The change introduced in 5422715c9b makes it very frequent for subscribers
to get stale facts on the subscriptions they are trying to leave so to not
clutter their dojo, we put the log under the %odd flag
2023-08-16 14:20:34 +02:00
Joe Bryan
508c5bd53c hoon: fix gol type enforcement for trivial %cnts 2023-08-16 13:46:01 +03:00
yosoyubik
5422715c9b gall: send %cork only if hearing %ack for %leave 2023-08-16 10:47:20 +02:00
yosoyubik
58b678505f roller: fix state migration 2023-08-16 10:23:52 +02:00
Pyry Kovanen
c276ddd476
ames: fix bug in dead flow consolidation 2023-08-15 16:15:55 +03:00
fang
a9e3ebb780
eyre: avoid +got'ing a channel that doesn't exist
+on-gall-response might detect the symptom of a bug, where we are
getting a %fact for a channel that has since been deleted. (Meaning that
subscription should have been cleaned up, and we shouldn't have received
the %fact.) We want to issue a %leave, but need to take care to do so
with the same identity that the subscription was opened on.

Previously, we would forcefully get the identity from the non-existent
channel, resulting in a crash. Now, we encode the identity into the wire
instead, so that we may retrieve it from there, even when the channel is
long gone.
2023-08-10 11:33:08 +02:00
Tinnus Napbus
4440eaced6 kiln: make publisher change requests require approval 2023-08-07 21:24:52 +12:00
Pyry Kovanen
330d134a1c
Merge pull request #6737 from urbit/ja/eyre-login-412
eyre: cosmetic updates to login form
2023-07-28 19:26:19 +03:00
Pyry Kovanen
3cfc3cf235
Merge pull request #6740 from urbit/pkova/bane
lull, ames: add %tame task to delete a route for a ship
2023-07-28 18:59:50 +03:00
Pyry Kovanen
46c567f75f
Merge pull request #6700 from urbit/philip/stale
ames: Don't check for lane staleness
2023-07-28 18:35:02 +03:00
Pyry Kovanen
32665022d2
Merge pull request #6733 from urbit/remove-deprecated-arms
zuse: remove deprecated arms
2023-07-28 18:30:36 +03:00
pkova
facd6994b0 lull, ames: add %tame task to delete a route for a ship 2023-07-28 18:15:04 +03:00
Pyry Kovanen
19d7fe0f85
Merge pull request #6738 from urbit/pkova/dead-flow-consolidation
ames: consolidate dead flows to a single behn timer
2023-07-28 17:32:08 +03:00
James Acklin
4bbe46adc1 eyre: cosmetic updates to login form
Makes cosmetic changes to the login page of eyre. This addresses an issue with insufficient contrast between text elements and their backgrounds in dark mode.
2023-07-28 16:36:53 +03:00
Marcus
ef6965c882 zuse: remove deprecated arms 2023-07-28 16:33:55 +03:00
pkova
82d4e2a265 ames: add comment explaining magic number in +set-wake 2023-07-28 16:33:34 +03:00
pkova
ff21513864 ames: fix indentation in dead flow handling 2023-07-28 16:33:34 +03:00
pkova
45924f7571 ames: store dead flow consolidation timer in state 2023-07-28 16:33:34 +03:00
pkova
d2956a3233 ames: consolidate dead flows to a single behn timer 2023-07-28 16:33:34 +03:00
pkova
7bea0038e5 clay: propagate [~ ~] properly from read-x 2023-07-28 16:32:49 +03:00
Pyry Kovanen
c35aabcebf
Merge pull request #6744 from urbit/develop
Merge develop into next/kelvin/412
2023-07-28 16:32:35 +03:00
Tinnus Napbus
c4b612dac5 gen/hood: add +change-publisher generator 2023-07-28 23:43:17 +12:00
Tinnus Napbus
f1c1205fe2 kiln: let publishers tell subs to switch source
This adds a %kiln-change-source poke that changes the sync source
for all syncs from the given remote ship/desk to a new ship/source.

This poke works remotely iff it comes from the publisher, allowing
publishers to migrate app distribution.

A %kiln-change-publisher poke is also added to kiln which sends this out
to all desk subscribers with the let+1 %w %sing that %kiln uses.
2023-07-28 21:35:38 +12:00
Pyry Kovanen
d52826e570
Merge pull request #6712 from ilyakooo0/iko/sink
%sink
2023-07-24 18:24:13 +03:00
Pyry Kovanen
a061ef1ffc
Merge pull request #6686 from midden-fabler/dojo-errors
dojo: better generator errors
2023-07-24 18:22:04 +03:00
Pyry Kovanen
9ec34d81a5
Merge pull request #6681 from ilyakooo0/iko/noun-grad
Add %noun-autodiff mark with automatic diffing algorithm
2023-07-24 18:09:30 +03:00
Pyry Kovanen
897d00334f
Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-07-24 16:58:13 +03:00
Pyry Kovanen
983cba3724
Merge pull request #6697 from urbit/remove-deprecated-json-calls
json: remove deprecated JSON parser calls
2023-07-24 16:20:27 +03:00
Marcus
be853b5a1a kiln: avoid downloading updates for uninstalled desks 2023-07-24 16:15:48 +03:00
Pyry Kovanen
82f9ed43bc
Merge pull request #6703 from urbit/fix-html-conversions
mar: better html-related conversions
2023-07-24 16:14:49 +03:00
Marcus
71ccdbe4ab json: remove deprecated JSON parser calls 2023-07-24 15:18:11 +03:00
Marcus
a42b74bc5c mar: better HTML-related conversions 2023-07-24 15:16:56 +03:00
silnem2
d6362cb293 dojo: fix gall scries in +to-command 2023-07-24 15:16:04 +03:00
silnem2
b254524aaf kiln: change deprecated %cd scry 2023-07-24 15:10:54 +03:00
silnem2
23bb0eb35e kiln: rewrite +poke-uninstall to unsync suspended desks 2023-07-24 15:10:54 +03:00
pkova
8565fb5f8b Merge branch 'develop' into next/kelvin/412 2023-07-24 14:58:31 +03:00
iko
d9f8074b87 Made it compile 2023-07-19 21:03:23 +03:00
iko
082ef00b83 %sink 2023-07-19 21:03:23 +03:00
Matthew LeVan
46575dc2fe base: add pace to next revision in -runtime-version 2023-07-19 17:10:50 +03:00
Matthew LeVan
cfb51a453e
Merge branch 'develop' into pkova/drop-pokes 2023-07-18 12:54:41 -04:00
Pyry Kovanen
efb92ad0c0 ames: ignore old rifts in +on-take-flub 2023-07-18 19:35:03 +03:00
pkova
f2b0628e10 ci: hopefully fix ci 2023-07-18 18:40:27 +03:00
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
iko
a810e72d6d
Fixed styling 2023-07-10 19:02:48 +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
iko
529ead91a3 Fixed formatting again 2023-07-10 11:01:18 +03:00
iko
8b208451bd noun-autodiff: Added a mark that has diffing 2023-07-10 11:01:18 +03:00
Ted Blackman
5dcb298eec
Merge pull request #6683 from urbit/wicrum/sss-no-timers
sss: rely on ames acks instead of timers
2023-07-09 19:39:48 -04: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
~wicrum-wicrun
92849f3e8f sss: $rule is now horizon and frequency 2023-07-03 15:53:42 +02: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
~wicrum-wicrun
82ea321997 sss: remove blank lines 2023-06-30 15:24:50 +02:00
~wicrum-wicrun
d98dfbe4db sss: rocks.rule=0 now means "store genesis and one snapshot" 2023-06-30 15:11:46 +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
~wicrum-wicrun
6009e5f209 sss: ignore stale on-rock pokes 2023-06-26 16:51:57 +02:00
~wicrum-wicrun
d22245a142 sss: don't regress aeons, just no-op and ack instead 2023-06-26 14:57:03 +02: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
~wicrum-wicrun
b948c5d3e5 sss: accept old rocks if current one is stale 2023-06-23 23:03:49 +02:00
Marcus
7afc79ce1f arvo: fix scry permission check 2023-06-23 17:36:38 -03:00
~wicrum-wicrun
6e5a15afb1 sss: inform subscribers when a path is killed or made private 2023-06-23 22:31:38 +02:00
~wicrum-wicrun
200ef1f3d9 sss: nack if scry response is unwanted 2023-06-23 16:10:52 +02: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
~wicrum-wicrun
c7af7179e7 sss: rely on ames acks instead of timers 2023-06-22 18:53:04 +02: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
edebd0b6d3 vats: add source ship, remove base hash from default output 2023-06-14 16:25:08 -04: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
3007d41d62
Merge pull request #6626 from polrel-witter/develop
shoe: renders blank tape rows
2023-06-08 08:33:51 -07: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