Philip Monk
3b41a8be15
gall: no-op on duplicate watch-ack
...
fixes #2070
2019-12-10 18:49:50 -08:00
Philip Monk
68279d91e4
gall: remove message type from wire
...
%leave over the network didn't work because we included the message type
in the wire from gall, so the duct for the initial %watch and the %leave
were different. We need to know the message type so we can route the
acknowledgment as %poke-ack, %watch-ack, or no-op.
This moves this piece of information to a piece of state, where we queue
up the message types per [duct wire]. Ames guarantees that
acknowledgments will come in order.
This also includes an easy state adapter. The more interesting part of
the upgrade is that we likely have outstanding subscriptions with the
old wire format. The disadvantage of storing information in wires is
that it can't be upgraded in +load. So, here we listen for updates on
the old wire format, and when we get them we kill the old subscription,
so that it will be recreated with the new wire format.
As an aside, this is a good example of what we mean when we say
subscriptions may be killed at any time, so apps must handle this case.
Finally, this fixes the "attributing" ship to ~zod for agent requests.
This information was ignored for agent requests, but including it causes
spurious duct mismatches.
2019-12-10 19:32:26 +08:00
Philip Monk
38197fc79d
gen: add comments on new generators
2019-12-03 16:41:29 -08:00
Philip Monk
2954ed0b55
gall: correctly construct wire for ap-specific-take
2019-12-02 23:46:15 -08:00
Philip Monk
9186f232f1
gall: kick after sending leave
2019-12-02 20:09:36 -08:00
Philip Monk
096273cf4a
gall: add state upgrade for %pack
2019-12-02 03:20:34 -08:00
Philip Monk
9a94c35d4d
gall: acutally delete outgoing on watch-ack
2019-11-26 18:18:44 -08:00
Philip Monk
bf55197baf
ames: backpressure fixes
2019-11-26 14:56:20 -08:00
Philip Monk
bdbd35fcf3
gall: virtualize scry
...
Compare +mute and +mule. Those pass through scry, which doesn't allow us to
catch crashes due to blocking scry. If you intercept scry, you can't preserve
the type polymorphically. By monomorphizing, we are able to do so safely.
2019-11-21 14:47:06 -08:00
Philip Monk
b8903e9a6f
gall: fix ap-kill-down
...
This broke when %kick was handled by resubscribing on your own ship
because it processed the %kick before the %leave. For example, `@t`404
at the dojo would put the dojo in an unworkable state.
You want the %leave to be processed first because you can't do a
"resubscribe" in response to that.
2019-11-20 13:24:19 -08:00
Philip Monk
a5412f01de
Merge branch 'alef-testnet-merge' into philip/mall-real
2019-11-19 13:03:07 -08:00
Philip Monk
6a406e6b29
gall: mall -> gall
2019-11-18 20:36:21 -08:00
Philip Monk
ae295d445a
mall: rm old apps for easier merging
2019-11-09 16:53:42 -08:00
Philip Monk
bcd7c5e82d
Merge branch 'master' into philip/mall-real
2019-11-09 16:47:41 -08:00
Joe Bryan
d852d4f159
gall: restores "not-running" printf
2019-11-05 13:04:27 -08:00
Joe Bryan
1b187657cb
gall: adds %goad task force agent rebuilds
2019-11-05 13:04:27 -08:00
Philip Monk
82513c27fc
Merge branch 'master' into philip/mall-real
2019-11-04 19:35:24 -08:00
Joe Bryan
ec32a76596
gall: fix virtualization of agent compilation
2019-11-04 15:29:17 -08:00
Ted Blackman
19c4bf7110
alef,gall: %clog notice and handling
2019-11-03 20:35:45 -05:00
Ted Blackman
3ecfbd6a68
fixed merge; sync and hi work again
2019-11-03 00:07:51 -04:00
Ted Blackman
22ef92053a
gall and ames: |hi works, fixed alef nack-trace bug
2019-11-02 20:52:48 -04:00
Ted Blackman
6f2ebe8ebd
gall: deleted +ap-track-queue, boot completes
2019-11-01 16:18:51 -04:00
Ted Blackman
f7c1af8dec
pill compiles, but apps unlink on boot
2019-11-01 15:06:09 -04:00
Ted Blackman
21dabb8895
big merge, including some Alef and Zuse work
2019-10-30 16:12:57 -04:00
Jared Tobin
7f124db8d9
Merge branch 'philip/jael-ames-full' ( #1882 )
...
* philip/jael-ames-full:
jael: provide edge-triggered breach notification
Signed-off-by: Jared Tobin <jared@tlon.io>
2019-10-25 14:05:01 +08:00
Philip Monk
9ddc04143a
jael: provide edge-triggered breach notification
...
Until now, clients of Jael have had to store the first-seen rift if they
want to reliably detect breaches. Otherwise, they would get a false
positive if they heard an old message about a breach (eg if you kick
azimuth-tracker). Clay and Gall did this correctly, but Ames did not.
Jael already maintains this state, so I added a notification to the
existing subscription that happens whenever it notices a breach (a diff
or full where the new rift is greater than the old one).
Because this is an issue on the live network, I wrote state adapters
for Gall and Clay. The Gall one just removes the rift from our state,
but the Clay one is much more involved because we have to upgrade
instances of the clad monad that are possibly in progress.
Specifically, since more input is possible than before, we must wrap any
in-progress instances of the monad in a function that handles the
potential new input from Jael. This temporarily preservers a copy of
the old kernel, but only until the current commit/merge/update has
completed.
The real solution for Clay is to factor out those IO-heavy instances to
userspace tapp/async/imp/threads, and if an upgrade happens in the
middle, you should simply restart them.
Fixes #1852
2019-10-23 21:40:34 -07:00
Jared Tobin
bdfc270b2f
gall: fix bug in +ap-peek
...
fc7901d2
refactored much of +ap-peek, but introduced a bug in the
process. The relevant diff from that commit is as follows:
- =/ =path [ren tyl]
- =/ =vase !>((slag p.u.cug path))
- (ap-slam q.u.cug p.arm vase)
+ =/ index p.u.maybe-arm
+ =/ term q.u.maybe-arm
+ =/ =vase
+ =/ =path [term tyl]
+ =/ raw (slag index path)
+ !> raw
+ (ap-slam term p.arm vase)
Note that [ren tyl] was replaced with [term tyl], where 'term' and 'ren'
are not equal. This commit merely rights that wrong.
2019-10-22 15:22:30 +08:00
Philip Monk
87f689f443
custody: add more types
2019-10-21 15:41:28 -07:00
Joe Bryan
ef959e0c52
gall: clear caches in response to memory pressure
2019-10-01 15:04:07 -07:00
Jared Tobin
21c3119660
gall: remove %gall-booting printf
...
%gall currently prints
[%gall-booting <app> p=<ship> q=<desk>]
whenever it receives a %conf (i.e., when it boots an app). This turns
up in many of the places the old, less-informative '%mo-not-running'
printf did, but it's of similarly little use, and mainly serves to
create redundant line noise. This commit just removes it.
2019-09-30 01:58:28 +04:00
Jared Tobin
2add146302
Merge branch 'reclamation' ( #1773 )
...
* reclamation:
solid pill
arvo: wires up %trim memory-pressure event stubs
u3: wires up the %trim event in the daemon
u3: adds %trim memory-pressure notification "effect"
u3: tweaks |mass output (and fixes inadvertent truncation)
u3: refactors periodic memory reclamation
u3: factors out u3a_idle() to measure free-lists in a road
u3: adds and uses u3a_full/heap/temp road macros
u3: cleans up whitespace, removes dead code in allocator
2019-09-29 21:30:56 +04:00
Jared Tobin
5c99f33271
Merge branch 'ted/verb' ( #1754 )
...
* ted/verb:
update pill
hood: |knob {tag} {level} to set dill verbosity
dill: set verbosity by error tag
2019-09-29 21:09:05 +04:00
Joe Bryan
3dd9bd7111
arvo: wires up %trim memory-pressure event stubs
2019-09-27 13:02:11 -07:00
Ted Blackman
f2073dbc34
dill: set verbosity by error tag
2019-09-27 13:55:14 -04:00
Philip Monk
a4dcad7d46
gall: unsubscribe after breach
...
fixes #1431
2019-09-24 15:00:16 -07:00
Philip Monk
bc1ba10a11
mall: compiles and runs app, but type hole
2019-09-04 12:49:16 -07:00
Ted Blackman
ca00d89286
%lost ames gift and stub handlers in vanes
2019-08-27 20:12:56 -07:00
Jared Tobin
b8d1dc9220
gall: fix issue id in comment
...
The comment was pointing at the wrong GitHub issue.
2019-08-27 14:10:11 -02:30
Philip Monk
4e62ce2905
gall: handle foreign coup success
2019-08-27 10:00:08 -02:30
Philip Monk
3e6625d20f
gall: only print peek bad result if bad
2019-08-27 09:59:56 -02:30
Jared Tobin
48901a3ded
gall: fix obvious nest-failing tisdot
2019-08-22 12:33:24 -02:30
Jared Tobin
d2d5d663d8
gall: change '-state' to '-core' for +mo and +ap
2019-08-22 12:33:24 -02:30
Jared Tobin
2b04b43262
zuse, gall: deprecate 'club'
...
Replaces with 'agent-action'.
2019-08-22 12:33:24 -02:30
Jared Tobin
38efc5e902
zuse, gall, eyre: deprecate 'cush'
...
Replaces with 'internal-task'.
2019-08-22 12:33:24 -02:30
Jared Tobin
ef99074304
zuse, gall, eyre, dojo: deprecate 'cuft'
...
Replaces it with the more informative name 'internal-gift'.
2019-08-22 12:33:24 -02:30
Jared Tobin
2fdb26096a
gall: remove slam-related printfs
2019-08-22 12:33:24 -02:30
Jared Tobin
624660ac60
gall: remove deprecated 'mak' from 'agents'
2019-08-22 12:33:23 -02:30
Jared Tobin
f435716406
gall: use less vertical spacing throughout
2019-08-22 12:33:23 -02:30
Jared Tobin
6a1478d8d9
gall: add comment re: unpopulated wex
2019-08-22 12:33:23 -02:30
Jared Tobin
cc7ac3cb2d
gall: use less vertical separation when wuthepping
2019-08-22 12:33:23 -02:30
Jared Tobin
a2d21debf5
gall: fix whitespace
2019-08-22 12:33:23 -02:30
Jared Tobin
04bff8ea96
gall: don't define 'move' as a pair
2019-08-22 12:33:23 -02:30
Jared Tobin
9ce3445e60
gall: don't give faces to tags
2019-08-22 12:33:22 -02:30
Jared Tobin
09103d59fd
gall: gut some unused stuff
...
Gets rid of 'voltage', 'security-control', and 'privilege', all of which
were either superfluous or were not actually used anywhere.
2019-08-22 12:33:22 -02:30
Jared Tobin
84924e6093
gall: indent multiline arm comments appropriately
2019-08-22 12:33:22 -02:30
Jared Tobin
f2c0cfd045
gall: use type spear inline
2019-08-22 12:33:22 -02:30
Jared Tobin
0cab280e70
gall: improve comment formatting
...
One-liners should not terminate with a full stop.
2019-08-22 12:33:22 -02:30
Jared Tobin
67ddf7cfbc
gall: replace 'gall' with 'state' throughout
...
Previously 'gall' had shadowed the rather-important definition in %zuse,
which is probably pushing the shadowing convention a little far.
2019-08-22 12:33:22 -02:30
Jared Tobin
575aeb3b2e
gall: miscellaneous formatting fixes
2019-08-22 12:33:22 -02:30
Jared Tobin
97de72d2ce
gall: remove %sunk, fix 'ship-state' in %wash case
2019-08-22 12:33:20 -02:30
Jared Tobin
7dc02ded4a
gall: some renaming, comments
2019-08-22 12:33:20 -02:30
Jared Tobin
92fbc80ea6
gall: more lighter-than-eyre compatibility
2019-08-22 12:33:20 -02:30
Jared Tobin
2c6281c0b4
gall: remove references to %hiss
2019-08-22 12:33:20 -02:30
Jared Tobin
90e14d62f2
gall: additional comments
2019-08-22 12:33:20 -02:30
Jared Tobin
d618ac2904
gall: reshuffle some +mo content
2019-08-22 12:33:20 -02:30
Jared Tobin
d9f32fe898
gall: add commentary
2019-08-22 12:33:20 -02:30
Jared Tobin
3aab487036
gall: formatting fix
2019-08-22 12:33:19 -02:30
Jared Tobin
d94bd429c2
gall: improve naming of various concepts
2019-08-22 12:33:19 -02:30
Jared Tobin
7e3a110c58
gall: be less skittish about using tisdot.
2019-08-22 12:33:19 -02:30
Jared Tobin
9ddf8982cf
gall: fix '%as' typo
...
Additionally chops out an arguably-excessive tisfas.
2019-08-22 12:33:19 -02:30
Jared Tobin
3d0137687f
gall: clear out some printfs
...
All of these were used for debugging.
2019-08-22 12:33:19 -02:30
Jared Tobin
c512eba4b1
gall: fix +ap-abed bug
...
This was simply due to mistranslating the previous code.
2019-08-22 12:33:19 -02:30
Jared Tobin
d19047aba6
gall: rename 'ship-state' to 'apps'
2019-08-22 12:33:18 -02:30
Jared Tobin
38474fbadf
gall: miscellaneous cleanup
2019-08-22 12:33:18 -02:30
Jared Tobin
aec215b3a8
gall: replace 'dude' with 'term' throughout
...
'dude' may be useful as a value-level mnemonic, but adds no useful
information at the type level.
2019-08-22 12:33:18 -02:30
Jared Tobin
efb93fea34
gall: miscellaneous minor fixes
2019-08-22 12:33:18 -02:30
Jared Tobin
fc7901d2d1
gall: miscellaneous large-scale cleaning
2019-08-22 12:19:16 -02:30
Jared Tobin
c221c2c5ae
gall: type and non-+mo/+ap arm cleanup
2019-08-22 12:19:05 -02:30
Jared Tobin
09c3fbf52c
gall: another cleanup pass over +ap
2019-08-22 12:19:01 -02:30
Jared Tobin
4dc990b22d
gall: simplify bone/duct map names
2019-08-22 12:18:24 -02:30
Jared Tobin
ce960c9f56
gall: misc. cleanup of +ap state and arms
2019-08-22 12:18:16 -02:30
Jared Tobin
730a443e68
gall: kill +mo-conf, plus misc cleaning
...
+mo-conf was superfluous, and has thus been removed.
2019-08-22 12:17:21 -02:30
Jared Tobin
ffae93ba1a
gall: more cleanup to +ap arms
2019-08-22 12:17:14 -02:30
Jared Tobin
953627cec3
gall: initial syntax pass over +ap
2019-08-22 12:17:08 -02:30
Jared Tobin
dbc946a1fd
gall: some lark replacements
2019-08-22 12:17:05 -02:30
Jared Tobin
8b9a208f0f
gall: misc cleanup to +mo
2019-08-22 12:16:59 -02:30
Jared Tobin
ca20beb37f
gall: simplify sofa
2019-08-22 12:16:49 -02:30
Jared Tobin
59455b38ac
gall: cleanup pass over +mo
2019-08-22 12:16:42 -02:30
Jared Tobin
832245e1e5
gall: get rid of context lark
2019-08-22 12:16:38 -02:30
Jared Tobin
9fa4f44b8c
gall: fix path in +mo-cyst
2019-08-22 12:16:16 -02:30
Jared Tobin
fbc5b351fc
gall: shadow in +mo-receive-core
2019-08-22 12:15:51 -02:30
Jared Tobin
c37f725658
gall: misc cleanup to +mo-receive-core and related
2019-08-22 12:15:46 -02:30
Jared Tobin
b3365693e0
zuse, gall: simplify +task, fix %conf in %gall
2019-08-22 12:14:05 -02:30
Jared Tobin
1d28214c1b
gall: preliminary +call cleanup
2019-08-22 12:12:44 -02:30
Jared Tobin
78a1aeea33
gall: clean up +mo-{clip, club, gawk, gawd}
2019-08-22 12:12:40 -02:30
Jared Tobin
4d8212ebf8
gall: clean up +mo-claw, +mo-beak
2019-08-22 12:12:36 -02:30
Jared Tobin
a46234d60b
gall: clean up +mo-cook
2019-08-22 12:12:31 -02:30
Jared Tobin
8473697d19
gall: refactor +mo-cyst
...
Splits one very long arm into numerous shorter ones.
2019-08-22 12:12:25 -02:30
Jared Tobin
a2fd2e0ed7
gall: clean up +mo-{bale, ball, come, chew}
2019-08-22 12:12:20 -02:30
Jared Tobin
77b3eb6b4a
gall: clean up +mo-{boot, away, awed}
...
Also removes the superfluous +mo-baal and +mo-baba, most of the
implementations of which can be replaced with simple stdlib functions.
2019-08-22 12:12:10 -02:30
Jared Tobin
45185774e5
gall: clean up +mo-receive-core, +mo-born
2019-08-22 12:12:02 -02:30
Jared Tobin
8bc397423e
gall: clean up +mo-{conf, pass, give, okay}
2019-08-22 12:11:57 -02:30
Jared Tobin
a0bad41a08
gall: clean up +mo-abed, +mo-abet
2019-08-22 12:11:49 -02:30
Jared Tobin
d51b1ced4a
gall: use 'mo-state' for door name
2019-08-22 12:11:33 -02:30
Jared Tobin
569488cddb
gall: rename 'moz' to 'moves'
2019-08-22 12:11:25 -02:30
Jared Tobin
0eb5f864c8
gall: add alias for inferred bowl type
2019-08-22 12:11:01 -02:30
Jared Tobin
1b911be80d
gall: light type refactoring
...
Mostly modernises syntax. Also adds a couple of useful types ('whey'
and 'coke') that were previously defined inline.
2019-08-22 12:10:45 -02:30
Ted Blackman
fc9104cb47
Merge branch 'master' into alef-testnet (might not work)
2019-08-19 14:43:39 -07:00
Ted Blackman
370213bb65
add gall %wash to clear caches
2019-08-10 14:24:31 -07:00
Ted Blackman
3f5a96485b
printing cleanup
2019-08-10 11:48:40 -07:00
Philip Monk
c453450d9c
add |moon, |moon-cycle-keys, and |moon-breach
2019-08-07 17:59:01 -07:00
Philip Monk
eed4c6a236
add rekey to jael
2019-08-07 15:15:25 -07:00
Philip Monk
6eb4d9389d
remove snapshot scaffolding
2019-08-07 13:54:47 -07:00
Philip Monk
6212422015
kale -> jael
2019-08-06 15:42:37 -07:00
Ted Blackman
1d62f1eecc
Merge branch 'philip/kale' into alef-testnet
2019-08-01 15:56:23 -07:00
Ted Blackman
9670408a06
Merge branch 'master' into alef-breach
2019-07-29 00:27:58 -07:00
Ted Blackman
5b0ee61a64
Boots without error and sends and receives talk messages
2019-07-28 23:37:49 -07:00
Philip Monk
efd37a1e3c
simplify kale/azimuth-tracker subscription semantics
2019-07-27 21:01:55 -07:00
Philip Monk
dd76358f6a
%breach-hi works with kale
2019-07-26 20:45:45 -07:00
Ted Blackman
de9ff11560
|hi ~nec successful
2019-07-25 14:50:08 -07:00
Ted Blackman
6c22beea8c
Merge branch 'master' into alef-breach
2019-07-22 11:46:40 -07:00
Philip Monk
994472ece1
azimuth-tracker sends to kale
2019-07-18 17:08:01 -07:00
Philip Monk
408b72b68e
fixed up kale
2019-07-18 15:26:15 -07:00
Joe Bryan
f89a7457ab
fixes a bug in %gall preventing cross-ship cross-app communication
2019-07-16 09:52:32 -02:30
Ted Blackman
793fc5c213
all vanes compile, at least individually
2019-07-15 14:23:34 -07:00
Ted Blackman
1ad2712870
Merge branch 'alef' into alef2
2019-07-11 14:26:22 -07:00
Fang
12b8134c33
Merge branch 'v0.8.0rc' into gut-by
2019-07-10 01:49:07 +02:00
Joe Bryan
62522f87c1
renames %lient to %iris
2019-07-03 17:08:23 -07:00
Joe Bryan
f31b12c964
renames %rver to %eyre
2019-07-03 16:02:49 -07:00
Fang
eb6c8a45ce
Replace (fall (~(get by
calls with (~(gut by
2019-06-30 18:13:34 +02:00
Ted Blackman
3a1a3e30cc
gall compiles
2019-06-28 18:13:32 -07:00
Jared Tobin
b3901ab42f
Add 'pkg/arvo/' from commit 'c20e2a185f131ff3f5d3961829bd7a3fe0f227f8'
...
git-subtree-dir: pkg/arvo
git-subtree-mainline: 9c8f40bf6c
git-subtree-split: c20e2a185f
2019-06-28 12:48:05 +08:00