@@ -1,20 +1,25 @@
1/- *astrolabe
1/- *astrolabe
2−/+ naive, default-agent, dbug, agentio
2+/+ *astrolabe, naive, default-agent, dbug, agentio
3/$ udon-to-docu %udon %docu
3/$ udon-to-docu %udon %docu
5+$ versioned-state
5+$ versioned-state
8−+$ state-0
9++$ state-0
10 spa=spawned
11 spa=spawned
13+$ spawned (jug ship ship)
18+$ spawned (jug ship ship)
14+$ card card:agent:gall
19+$ card card:agent:gall
16%- agent:dbug
21%- agent:dbug
17−=| state-0
22+=| state-1
19^- agent:gall
24^- agent:gall
@@ -26,16 +31,18 @@
27 ^- (quip card _this)
32 ^- (quip card _this)
29− [%pass /azimuth-events %agent [our.bowl %azimuth] %watch /event]~
34+ [az-events-card:hc]~
31++ on-save !>(state)
36++ on-save !>(state)
33 |= old-state=vase
38 |= old-state=vase
34 ^- (quip card _this)
39 ^- (quip card _this)
35 =/ old !<(versioned-state old-state)
40 =/ old !<(versioned-state old-state)
36− ?- -.old
41+ =^ cards-0 old
43+ (on-naive-state:hc get-nas:hc)
37− %0 `this(state old)
45+ [cards-0 this(state old)]
39++ on-poke on-poke:def
46++ on-poke on-poke:def
40++ on-watch on-watch:def
47++ on-watch on-watch:def
41++ on-leave on-leave:def
48++ on-leave on-leave:def
@@ -46,15 +53,18 @@
46 ?+ path (on-peek:def path)
53 ?+ path (on-peek:def path)
47 [%x %point @ ~]
54 [%x %point @ ~]
48 ``astrolabe-point+!>((get-point:hc &3.path))
55 ``astrolabe-point+!>((get-point:hc &3.path))
56+ [%x %point @ %spawned ~]
57+ =/ =ship `@p`(slav %p &3.path)
58+ ``astrolabe-point-set+!>((get-spawned-points:hc ship))
60+ =/ =search-text (trip &3.path)
61+ ``astrolabe-point-set+!>((search-opoints:hc search-text))
49 [%x %doc ^]
62 [%x %doc ^]
50 =/ doc-path=^path t.t.path
63 =/ doc-path=^path t.t.path
51 =/ doc (read-doc:hc doc-path)
64 =/ doc (read-doc:hc doc-path)
54 ``json+!>(s+u.doc)
67 ``json+!>(s+u.doc)
56− =/ =ship `@p`(slav %p &3.path)
57− ``astrolabe-point-set+!>((~(get ju spa) ship))
59++ on-agent
69++ on-agent
60 |= [=wire =sign:agent:gall]
70 |= [=wire =sign:agent:gall]
@@ -97,35 +107,34 @@
97++ on-fail on-fail:def
107++ on-fail on-fail:def
100|_ =bowl:gall
111|_ =bowl:gall
101++ scrio ~(scry agentio bowl)
112++ scrio ~(scry agentio bowl)
113+++ az-events-card [%pass /azimuth-events %agent [our.bowl %azimuth] %watch /event]
114+++ get-nas .^(^state:naive %gx (scrio %azimuth /nas/noun))
102−++ put-in-spa
115+++ put-in-opoints
104− ^- _spa
117+ ^- _opoints
105− =/ parent=^ship (^sein:title ship)
118+ (put:ors opoints (to-q ship) ~)
108− (~(put ju spa) parent ship)
109++ on-naive-state
119++ on-naive-state
110 |= nas=^state:naive
120 |= nas=^state:naive
111 ^- (quip card _state)
121 ^- (quip card _state)
112− =+ points=points.nas :: =points, eh?
122+ =+ points=points.nas :: =points, eh?
113− =. spa
123+ =. opoints
115− ^- _spa
125+ ^- _opoints
116− ?~ points spa
126+ ?~ points opoints
117 =/ =ship -.n.points
127 =/ =ship -.n.points
118− :: traverse tree of points and add @ps to spa with ^sein, you know
128+ :: traverse tree of points and add @ps to opoints with ^sein, you know
119− =. spa (put-in-spa ship)
129+ =. opoints (put-in-opoints ship)
120− $(points l.points, spa $(points r.points))
130+ $(points l.points, opoints $(points r.points))
123++ on-naive-diff
133++ on-naive-diff
124 |= =diff:naive
134 |= =diff:naive
125 ^- (quip card _state)
135 ^- (quip card _state)
126− :: =? spa (is-spawn-tx diff)
127− =? spa ?=([%tx [* * * %spawn ship *] *] diff)
136+ =? opoints ?=([%tx [* * * %spawn ship *] *] diff)
128− %- put-in-spa
137+ %- put-in-opoints
129 ship.tx.raw-tx.diff
138 ship.tx.raw-tx.diff
@@ -149,12 +158,81 @@
149 |= ship-name=term
158 |= ship-name=term
150 .^(unpoint %gx (scrio %azimuth /point/[ship-name]/noun))
159 .^(unpoint %gx (scrio %azimuth /point/[ship-name]/noun))
161+++ run-spawned-points
162+ |* [agg=mold targ=ship]
163+ |= f=$-([agg ship] agg)
166+ =+ points=points.nas
173+ =/ gt=? (por:naive targ n)
176+ =? agg =(targ (end (add 2 (xeb (met 3 targ))) n))
178+ =? agg =(targ (^sein:title n))
181+++ get-spawned-points
183+ %- (run-spawned-points (list ship) targ)
184+ |= [agg=(list ship) spawn=ship]
152++ spa-count
187++ spa-count
153− |= =ship
188+ |= targ=ship
154− ^- @ud
189+ %- (run-spawned-points @ud targ)
155− %~ wyt
190+ |= [agg=@ud spawn=ship]
193+++ run-wildcard-search
194+ |* [agg=mold search=search-full =page-info]
195+ |= f=$-([agg @q] agg)
197+ =/ s-syls search-syls.search
199+ =/ s-opts search-opts.search
201+ =+ [llb=.~zod rrb=`@q`(sub (bex 32) 1)]
206+ :: ~& "nothing here, going up"
208+ =* n=@q `@`-.n.opoints
209+ =/ lrb=@q ?: (gth n 0) (sub-d n 1) .~zod
210+ =/ rlb=@q (add-d n 1)
211+ =/ left-view (range-contains-search llb lrb s-opts)
212+ :: ~& "arrived at {<n>}"
213+ :: ~& "left side: {<?:(contains.left-view 'Y' 'N')>} {<llb>} - {<lrb>} contains {<s-opts>}"
214+ =/ right-view (range-contains-search rlb rrb s-opts)
215+ =? agg contains.left-view
216+ $(opoints l.opoints, rrb lrb, s-opts opts.left-view)
217+ =? agg (matches-search s-syls n)
218+ =/ fits (fits-on-page agg-count page-info)
219+ =. agg-count +(agg-count)
220+ ?: fits (f agg n) agg
221+ :: ~& "right side: {<?:(contains.right-view 'Y' 'N')>} {<rlb>} - {<rrb>} contains {<s-opts>}"
222+ =? agg contains.right-view
223+ $(opoints r.opoints, llb rlb, s-opts opts.right-view)
157− (~(get ju spa) ship)
228+ ^- (list ship)
229+ =/ =search-full (search-text-to-search-full search-text)
231+ %- (run-wildcard-search (list @q) search-full *page-info)
232+ |= [agg=(list @q) result=@q]
159++ sponsor-chain
237++ sponsor-chain
160 |= =unpoint
238 |= =unpoint
@@ -162,14 +240,14 @@
162 ?~ unpoint ~
240 ?~ unpoint ~
163 =/ sponsor sponsor.net.u.unpoint
241 =/ sponsor sponsor.net.u.unpoint
164 ?. has.sponsor ~
242 ?. has.sponsor ~
165− [who.sponsor ~] :: todo: lookup parent
243+ [who.sponsor ~] :: todo: lookup parent
167++ probable-dominion
245++ probable-dominion
168 |= =unpoint
246 |= =unpoint
169 ^- dominion:naive
247 ^- dominion:naive
170 ?^ unpoint
248 ?^ unpoint
171 dominion.u.unpoint
249 dominion.u.unpoint
172− %l1 :: todo: lookup parent
250+ %l1 :: todo: lookup parent
174++ read-doc
252++ read-doc