digraph root { graph [_draw_="c 9 -#fffffe00 C 7 -#f8f8f2 P 4 0 0 0 1550.5 2402.5 1550.5 2402.5 0 ", applyCss=true, arrowsize=0.6, bb="0,0,2402.5,1550.5", bgcolor="#f8f8f2", charset="UTF-8", clusterize=true, color="#2c2d33", desaturate=true, fontcolor="#44475a", fontname=Agave, grayscale=false, intention=semi, margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, rankdir=LR, shape=box, splines=spline, style=rounded, truecolor=true, xdotversion=1.7 ]; node [arrowsize=0.6, bgcolor="#f8f8f2", color="#2c2d33", fontcolor="#44475a", fontname=Agave, label="\N", margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, shape=box, splines=true, style=rounded, truecolor=true ]; edge [arrowsize=0.6, bgcolor="#f8f8f2", color="#2c2d33", fontcolor="#44475a", fontname=Agave, fontsize=6.8, margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, shape=box, splines=true, style=rounded, truecolor=true ]; subgraph G_cc_0 { graph [applyCss=true, arrowsize=0.6, bb="", bgcolor="#f8f8f2", charset="UTF-8", clusterize=true, color="#2c2d33", desaturate=true, fontcolor="#44475a", fontname=Agave, grayscale=false, intention=semi, margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, rankdir=LR, shape=box, splines=spline, style=rounded, truecolor=true ]; node [arrowsize=0.6, bgcolor="#f8f8f2", color="#2c2d33", fillcolor="", fontcolor="#44475a", fontname=Agave, fontsize="", height="", href="", label="\N", margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, pos="", shape=box, splines=true, style=rounded, truecolor=true, width="" ]; edge [arrowhead="", arrowsize=0.6, arrowtail="", bgcolor="#f8f8f2", color="#2c2d33", constrained="", dir="", fontcolor="#44475a", fontname=Agave, fontsize=6.8, href="", margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, pos="", reverse="", shape=box, splines=true, style=rounded, tooltip="", truecolor=true, type="" ]; ast_lake [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#eae7e2 P 4 2070.5 1079.5 1700.5 1079.5 1700.5 995.5 2070.5 995.5 ", _ldraw_="F 19 5 -Agave c 7 -#44475a t 1 T 1701.5 1064.3 -1 79 8 -ast-lake F 19 5 -Agave c 7 -#44475a t 0 T 1701.5 1045.3 -1 368 43 -usage: \ ast-lake 【command】 【args...】 F 19 5 -Agave c 7 -#44475a T 1701.5 1024.3 -1 20 5 -•  F 19 14 -Overpass Heavy c 7 -#44475a \ T 1721.5 1024.3 -1 119 12 -123⸨123⸩ F 19 5 -Agave c 7 -#44475a T 1701.5 1002.3 -1 68 11 -• 【xxx ", fillcolor="#eae7e2", fontsize=19, height=1.1667, href="#ast_lake", label=<
ast-lake
usage: ast-lake 【command】 【args...】
• 123⸨123⸩
• 【xxx
>, pos="1885.5,1037.5", shape=plain, style=filled, width=5.1389]; ast_lake__commands_ [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2161 1170.5 2118 1170.5 2118 1158.5 2161 1158.5 ", _ldraw_="F 9.5 5 -Agave c 7 -#44475a t 1 T 2119.5 1162.9 -1 41 9 -commands: ", fillcolor="#ffffff", fontsize=9.5, height=0.16667, href="#ast_lake__commands_", label=<
commands:
>, pos="2139.5,1164.5", shape=plain, style=filled, width=0.59722]; ast_lake -> ast_lake__commands_ [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 42 1981 1084.6 1989.34 1088.87 1997.78 1093.18 2006.28 1097.53 \ 2014.8 1101.89 2023.3 1106.24 2031.77 1110.58 2040.15 1114.87 2048.42 1119.1 2056.54 1123.26 2064.48 1127.33 2072.19 1131.28 2079.66 \ 1135.1 2086.83 1138.78 2093.68 1142.29 2100.17 1145.62 2106.27 1148.75 2111.95 1151.66 2117.16 1154.33 2121.87 1156.75 2126.05 1158.89 \ 2126.95 1157.11 2122.74 1155.01 2118 1152.65 2112.76 1150.04 2107.05 1147.21 2100.92 1144.15 2094.38 1140.9 2087.49 1137.48 2080.27 \ 1133.89 2072.76 1130.16 2065 1126.3 2057.01 1122.33 2048.84 1118.27 2040.52 1114.14 2032.08 1109.95 2023.57 1105.72 2015 1101.47 \ 2006.43 1097.22 1997.88 1092.98 1989.39 1088.76 1981 1084.6 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 1980.81 1084.51 1973.65 1085.37 1970.1 1079.1 1977.26 1078.23 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake@1👉 ast_lake__commands_@1", penwidth=2, pos="s,1970.1,1079.1 1981,1084.6 2036.4,1112.5 2100.4,1144.8 2126.5,1158", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__recent_updates [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#eae7e2 P 4 2172.5 1028.5 2106.5 1028.5 2106.5 1016.5 2172.5 1016.5 ", _ldraw_="F 9.5 5 -Agave c 7 -#44475a t 1 T 2107.5 1020.9 -1 64 14 -recent updates ", fillcolor="#eae7e2", fontsize=9.5, height=0.16667, href="#ast_lake__recent_updates", label=<
recent updates
>, pos="2139.5,1022.5", shape=plain, style=filled, width=0.91667]; ast_lake -> ast_lake__recent_updates [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 42 2082.7 1025.3 2083.99 1025.28 2085.27 1025.26 2086.54 1025.24 \ 2087.8 1025.22 2089.05 1025.19 2090.29 1025.17 2091.51 1025.15 2092.73 1025.13 2093.94 1025.11 2095.13 1025.09 2096.31 1025.07 2097.48 \ 1025.05 2098.64 1025.02 2099.78 1025.01 2100.91 1024.99 2102.03 1024.97 2103.13 1024.95 2104.22 1024.93 2105.3 1024.91 2106.36 1024.9 \ 2106.24 1022.9 2105.19 1023.01 2104.12 1023.11 2103.03 1023.22 2101.94 1023.34 2100.82 1023.45 2099.7 1023.56 2098.56 1023.68 2097.41 \ 1023.8 2096.24 1023.92 2095.07 1024.04 2093.88 1024.16 2092.68 1024.28 2091.47 1024.41 2090.25 1024.53 2089.02 1024.66 2087.77 1024.79 \ 2086.52 1024.91 2085.26 1025.04 2083.98 1025.17 2082.7 1025.3 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2082.58 1025.31 2076.82 1029.65 2070.6 1026 2076.36 1021.66 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake👉 ast_lake__recent_updates", penwidth=2, pos="s,2070.6,1026 2082.7,1025.3 2091.3,1024.8 2099.3,1024.3 2106.3,1023.9", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__info [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2297.5 1550.5 2225.5 1550.5 2225.5 1536.5 2297.5 1536.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2226.5 1546.7 -1 10 4 -info F 4.75 5 -Agave c 7 -#44475a t 0 T 2226.5 1538.7 -1 70 34 -• info \ on the state of ast-lake ", fillcolor="#ffffff", fontsize=4.75, height=0.19444, href="#ast_lake__commands____ast_lake__info", label=<
info
• info on the state of ast-lake
>, pos="2261.5,1543.5", shape=plain, style=filled, width=1]; ast_lake__commands_ -> ast_lake__commands____ast_lake__info [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 7 2140.8 1170.1 2143 1213 2158.4 1470.9 2208.5 1527 2210.7 1529.5 2213.3 1531.6 \ 2216.2 1533.4 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 2225.3 1537.8 2214.34 1537.5 2220.8 1535.62 2216.3 1533.45 2216.3 \ 1533.45 2216.3 1533.45 2220.8 1535.62 2218.26 1529.4 2225.3 1537.8 ", arrowhead=open, arrowsize=1.0, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__info", pos="e,2225.3,1537.8 2140.8,1170.1 2143,1213 2158.4,1470.9 2208.5,1527 2210.7,1529.5 2213.3,1531.6 2216.2,1533.4", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; ast_lake__commands____ast_lake__init [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2290 1518.5 2233 1518.5 2233 1504.5 2290 1504.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2234.5 1514.7 -1 10 4 -init F 4.75 5 -Agave c 7 -#44475a t 0 T 2234.5 1506.7 -1 55 27 -• precreate \ the cache db ", fillcolor="#ffffff", fontsize=4.75, height=0.19444, href="#ast_lake__commands____ast_lake__init", label=<
init
• precreate the cache db
>, pos="2261.5,1511.5", shape=plain, style=filled, width=0.79167]; ast_lake__commands_ -> ast_lake__commands____ast_lake__init [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 7 2140.9 1170 2143.8 1210.7 2162.4 1444.3 2208.5 1495 2212.5 1499.4 2217.8 1502.7 \ 2223.3 1505 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 2232.9 1508.1 2222 1509.31 2228.14 1506.56 2223.38 1505.03 2223.38 \ 1505.03 2223.38 1505.03 2228.14 1506.56 2224.77 1500.74 2232.9 1508.1 ", arrowhead=open, arrowsize=1.0, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__init", pos="e,2232.9,1508.1 2140.9,1170 2143.8,1210.7 2162.4,1444.3 2208.5,1495 2212.5,1499.4 2217.8,1502.7 2223.3,1505", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; ast_lake__commands____ast_lake__reset [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2290 1486 2233 1486 2233 1467 2290 1467 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2234.5 1481.7 -1 12 5 -reset F 4.75 5 -Agave c 7 -#44475a t 0 T 2234.5 1473.7 -1 30 16 -• delete \ list F 4.75 5 -Agave c 7 -#44475a T 2234.5 1468.7 -1 55 27 -• delete all cached data ", fillcolor="#ffffff", fontsize=4.75, height=0.26389, href="#ast_lake__commands____ast_lake__reset", label=<
reset
• delete list
• delete all cached data
>, pos="2261.5,1476.5", shape=plain, style=filled, width=0.79167]; ast_lake__commands_ -> ast_lake__commands____ast_lake__reset [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 7 2141.1 1170.1 2145 1208.1 2167.9 1412.8 2208.5 1458 2212.6 1462.5 2217.8 1465.9 \ 2223.4 1468.4 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 2232.9 1471.9 2221.96 1472.67 2228.21 1470.17 2223.52 1468.44 2223.52 \ 1468.44 2223.52 1468.44 2228.21 1470.17 2225.07 1464.22 2232.9 1471.9 ", arrowhead=open, arrowsize=1.0, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__reset", pos="e,2232.9,1471.9 2141.1,1170.1 2145,1208.1 2167.9,1412.8 2208.5,1458 2212.6,1462.5 2217.8,1465.9 2223.4,1468.4", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; ast_lake__commands____ast_lake__cleanup [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2308 1449 2215 1449 2215 1430 2308 1430 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2216.5 1444.7 -1 16 7 -cleanup F 4.75 5 -Agave c 7 -#44475a t 0 T 2216.5 1436.7 -1 91 43 -• remove \ non existent files from sqlite F 4.75 5 -Agave c 7 -#44475a T 2256 1431.7 -1 12 5 -cache ", fillcolor="#ffffff", fontsize=4.75, height=0.26389, href="#ast_lake__commands____ast_lake__cleanup", label=<
cleanup
• remove non existent files from sqlite
cache
>, pos="2261.5,1439.5", shape=plain, style=filled, width=1.2917]; ast_lake__commands_ -> ast_lake__commands____ast_lake__cleanup [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 7 2140.2 1170.2 2138.9 1201.5 2137.2 1344.2 2208.5 1421 2209.4 1422 2210.3 1422.9 \ 2211.3 1423.7 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 2219.7 1429.5 2208.91 1427.52 2215.59 1426.66 2211.47 1423.82 2211.47 \ 1423.82 2211.47 1423.82 2215.59 1426.66 2214.03 1420.12 2219.7 1429.5 ", arrowhead=open, arrowsize=1.0, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__cleanup", pos="e,2219.7,1429.5 2140.2,1170.2 2138.9,1201.5 2137.2,1344.2 2208.5,1421 2209.4,1422 2210.3,1422.9 2211.3,1423.7", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; ast_lake__commands____ast_lake__restart [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#9dc0a9 P 4 2290 1412 2233 1412 2233 1393 2290 1393 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2234.5 1407.7 -1 16 7 -restart F 4.75 5 -Agave c 7 -#44475a t 0 T 2234.5 1399.7 -1 25 14 -• keep \ list F 4.75 5 -Agave c 7 -#44475a T 2234.5 1394.7 -1 55 27 -• delete all cached data ", fillcolor="#9dc0a9", fontsize=4.75, height=0.26389, href="#ast_lake__commands____ast_lake__restart", label=<
restart
• keep list
• delete all cached data
>, pos="2261.5,1402.5", shape=plain, style=filled, width=0.79167]; ast_lake__commands_ -> ast_lake__commands____ast_lake__restart [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 7 2140.5 1170 2141 1198.1 2146.7 1318.1 2208.5 1383 2212.7 1387.4 2217.9 1390.7 \ 2223.5 1393.3 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 2232.9 1397 2221.95 1397.52 2228.25 1395.17 2223.59 1393.34 2223.59 \ 1393.34 2223.59 1393.34 2228.25 1395.17 2225.24 1389.15 2232.9 1397 ", arrowhead=open, arrowsize=1.0, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__restart", pos="e,2232.9,1397 2140.5,1170 2141,1198.1 2146.7,1318.1 2208.5,1383 2212.7,1387.4 2217.9,1390.7 2223.5,1393.3", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; ast_lake__commands____ast_lake__add [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2314.5 1375 2208.5 1375 2208.5 1232 2314.5 1232 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2209.5 1370.7 -1 7 3 -add F 4.75 5 -Agave c 7 -#44475a t 0 T 2209.5 1362.7 -1 43 22 -• add \ files to list F 4.75 5 -Agave c 7 -#44475a T 2209.5 1357.7 -1 97 46 -• dbPopulateList is a temporary list file, F 4.75 5 -Agave \ c 7 -#44475a T 2227.5 1352.7 -1 61 27 -listing absolute file paths F 4.75 5 -Agave c 7 -#44475a T 2209.5 1348.7 -1 61 30 -• dbPopulateList \ is usually F 4.75 5 -Agave c 7 -#ff79c6 T 2270.5 1348.7 -1 43 21 - /tmp/ast-list.txt  F 4.75 5 -Agave c 7 -#44475a T 2209.5 1342.7 \ -1 59 29 -• add absolute file paths: F 4.75 5 -Agave c 7 -#44475a T 2209.5 1338.7 -1 37 19 -• note: does use F 4.75 5 -Agave \ c 7 -#ff79c6 T 2246.5 1338.7 -1 10 6 - fd  F 4.75 5 -Agave c 7 -#44475a T 2256.5 1338.7 -1 19 8 -. honors F 4.75 5 -Agave c 7 \ -#ff79c6 T 2275.5 1338.7 -1 28 14 - .gitignore  F 4.75 5 -Agave c 7 -#44475a T 2209.5 1332.7 -1 19 11 -• usage: F 4.75 5 -Agave \ c 7 -#ff79c6 T 2209.5 1321.95 -1 50 23 - ast-lake add '*.mdd' F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1317.2 -1 21 10 -'*.json'  \ F 4.75 5 -Agave c 7 -#44475a T 2209.5 1310.7 -1 23 13 -• will add F 4.75 5 -Agave c 7 -#ff79c6 T 2232.5 1310.7 -1 23 12 - **/*\ .mdd  F 4.75 5 -Agave c 7 -#44475a T 2255.5 1310.7 -1 7 3 -and F 4.75 5 -Agave c 7 -#ff79c6 T 2262.5 1310.7 -1 19 10 - *.json  \ F 4.75 5 -Agave c 7 -#44475a T 2281.5 1310.7 -1 16 7 -to list F 4.75 5 -Agave c 7 -#44475a T 2209.5 1304.7 -1 32 17 -• or manually: \ F 4.75 5 -Agave c 7 -#44475a T 2209.5 1299.7 -1 68 33 -• you may edit $dbPopulateList F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1288.95 \ -1 66 30 - # --base-directory $dir fd F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1284.2 -1 46 20 ---absolute-path -tf F 4.75 5 -Agave \ c 7 -#ff79c6 T 2209.5 1279.45 -1 66 31 -\".+【.】(mdd)$\" | rg -v test F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1274.7 -1 59 26 -> $\ dbPopulateList fd -tf F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1269.95 -1 37 16 ---absolute-path F 4.75 5 -Agave c 7 -#ff79c6 T \ 2209.5 1265.2 -1 55 24 -\"$filterFilesPattern\" > F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1260.45 -1 88 39 -$dbPopulateList | rg -v \ node_modules | F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1255.7 -1 79 35 -rg -v test > $dbPopulateList # or F 4.75 5 -Agave c 7 -#\ ff79c6 T 2209.5 1250.95 -1 79 35 -only add arbitrary files: rg TERM F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1246.2 -1 93 41 ---files-with-matches | \ xargs realpath {} F 4.75 5 -Agave c 7 -#ff79c6 T 2209.5 1241.45 -1 43 20 ->> $dbPopulateList  F 4.75 5 -Agave c 7 -#44475a T 2209.5 \ 1234.7 -1 23 13 -• see also F 4.75 5 -Agave c 7 -#ff79c6 T 2232.5 1234.7 -1 43 21 - ast-lake populate  ", fillcolor="#ffffff", fontsize=4.75, height=1.9861, href="#ast_lake__commands____ast_lake__add", label=<
add
• add files to list
• dbPopulateList is a temporary list file,
listing absolute file paths
• dbPopulateList is usually /tmp/ast-list.txt 
• add absolute file paths:
• note: does use fd . honors .gitignore 
• usage:

 ast-lake add '*.mdd'
'*.json' 

• will add **/*.mdd and *.json to list
• or manually:
• you may edit $dbPopulateList

 # --base-directory $dir fd
--absolute-path -tf
".+【.】(mdd)$" | rg -v test
> $dbPopulateList fd -tf
--absolute-path
"$filterFilesPattern" >
$dbPopulateList | rg -v node_modules |
rg -v test > $dbPopulateList # or
only add arbitrary files: rg TERM
--files-with-matches | xargs realpath {}
>> $dbPopulateList 

• see also ast-lake populate 
>, pos="2261.5,1303.5", shape=plain, style=filled, width=1.4722]; ast_lake__commands_ -> ast_lake__commands____ast_lake__add [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 42 2154.2 1179.8 2156.21 1182.2 2158.33 1184.73 2160.55 1187.38 \ 2162.87 1190.14 2165.28 1193.01 2167.77 1195.98 2170.34 1199.03 2172.98 1202.17 2175.69 1205.38 2178.44 1208.66 2181.25 1211.99 \ 2184.1 1215.38 2186.99 1218.81 2189.91 1222.27 2192.84 1225.76 2195.8 1229.27 2198.76 1232.8 2201.73 1236.32 2204.69 1239.84 2207.64 \ 1243.35 2209.16 1242.05 2206.12 1238.61 2203.08 1235.16 2200.03 1231.71 2196.98 1228.26 2193.94 1224.82 2190.92 1221.4 2187.92 1218.01 \ 2184.95 1214.65 2182.02 1211.33 2179.13 1208.07 2176.29 1204.86 2173.52 1201.71 2170.8 1198.64 2168.16 1195.65 2165.6 1192.74 2163.12 \ 1189.93 2160.73 1187.23 2158.45 1184.63 2156.27 1182.15 2154.2 1179.8 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2153.84 1179.38 2146.89 1177.46 2146 1170.3 2152.95 1172.23 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__add", penwidth=2, pos="s,2146,1170.3 2154.2,1179.8 2167.4,1195.2 2188.5,1219.6 2208.4,1242.7", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__populate [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2310 1214 2213 1214 2213 1195 2310 1195 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2214.5 1209.7 -1 19 8 -populate F 4.75 5 -Agave c 7 -#44475a t 0 T 2214.5 1201.7 -1 95 45 -• ensure \ all ast's (from on the list) are F 4.75 5 -Agave c 7 -#44475a T 2250.5 1196.7 -1 23 10 -up to date ", fillcolor="#ffffff", fontsize=4.75, height=0.26389, href="#ast_lake__commands____ast_lake__populate", label=<
populate
• ensure all ast's (from on the list) are
up to date
>, pos="2261.5,1204.5", shape=plain, style=filled, width=1.3472]; ast_lake__commands_ -> ast_lake__commands____ast_lake__populate [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 42 2170.2 1173.9 2173.04 1174.9 2175.96 1175.93 2178.94 1176.97 \ 2181.98 1178.04 2185.06 1179.12 2188.19 1180.21 2191.34 1181.32 2194.52 1182.43 2197.72 1183.54 2200.92 1184.66 2204.12 1185.78 \ 2207.31 1186.89 2210.48 1188 2213.62 1189.1 2216.73 1190.19 2219.8 1191.26 2222.82 1192.32 2225.78 1193.35 2228.67 1194.36 2231.48 \ 1195.35 2232.12 1193.45 2229.27 1192.55 2226.35 1191.63 2223.36 1190.69 2220.31 1189.72 2217.21 1188.75 2214.07 1187.76 2210.89 \ 1186.75 2207.69 1185.75 2204.46 1184.73 2201.23 1183.71 2198 1182.69 2194.77 1181.68 2191.56 1180.66 2188.37 1179.66 2185.22 1178.66 \ 2182.1 1177.67 2179.03 1176.7 2176.02 1175.75 2173.07 1174.81 2170.2 1173.9 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2170.09 1173.87 2163.14 1175.78 2158.7 1170.1 2165.65 1168.18 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__populate", penwidth=2, pos="s,2158.7,1170.1 2170.2,1173.9 2189,1180.2 2213.2,1188.2 2231.8,1194.4", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__query_TERM [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2287.5 1176.5 2235.5 1176.5 2235.5 1152.5 2287.5 1152.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2236.5 1172.7 -1 23 10 -query TERM F 4.75 5 -Agave c 7 -#44475a t 0 T 2236.5 1164.7 -1 48 24 \ -• ast-lake query term F 4.75 5 -Agave c 7 -#44475a T 2236.5 1159.7 -1 50 25 -• TODO term patterns ? F 4.75 5 -Agave c 7 -#\ 44475a T 2236.5 1154.7 -1 46 23 -• TODO regex: ^cs.+$ ", fillcolor="#ffffff", fontsize=4.75, height=0.33333, href="#ast_lake__commands____ast_lake__query_TERM", label=<
query TERM
• ast-lake query term
• TODO term patterns ?
• TODO regex: ^cs.+$
>, pos="2261.5,1164.5", shape=plain, style=filled, width=0.72222]; ast_lake__commands_ -> ast_lake__commands____ast_lake__query_TERM [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 42 2173.4 1164 2176.36 1164.05 2179.38 1164.1 2182.46 1164.15 2185.59 \ 1164.2 2188.75 1164.25 2191.94 1164.3 2195.16 1164.35 2198.39 1164.4 2201.62 1164.46 2204.85 1164.51 2208.07 1164.56 2211.26 1164.61 \ 2214.43 1164.67 2217.56 1164.72 2220.65 1164.77 2223.68 1164.81 2226.65 1164.86 2229.55 1164.91 2232.37 1164.96 2235.1 1165 2235.1 \ 1163 2232.37 1163.04 2229.55 1163.09 2226.65 1163.14 2223.68 1163.19 2220.65 1163.23 2217.56 1163.28 2214.43 1163.33 2211.26 1163.39 \ 2208.07 1163.44 2204.85 1163.49 2201.62 1163.54 2198.39 1163.6 2195.16 1163.65 2191.94 1163.7 2188.75 1163.75 2185.59 1163.8 2182.46 \ 1163.85 2179.38 1163.9 2176.36 1163.95 2173.4 1164 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2173.1 1164 2167.1 1168 2161.1 1164 2167.1 1160 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__query_TERM", penwidth=2, pos="s,2161.1,1164 2173.4,1164 2192.9,1164 2217.2,1164 2235.1,1164", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__queryraw_TERM [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2304.5 1134.5 2218.5 1134.5 2218.5 1120.5 2304.5 1120.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2219.5 1130.7 -1 30 13 -queryraw TERM F 4.75 5 -Agave c 7 -#44475a t 0 T 2219.5 1122.7 -1 84 \ 40 -• same as query, but returns raw JSON ", fillcolor="#ffffff", fontsize=4.75, height=0.19444, href="#ast_lake__commands____ast_lake__queryraw_TERM", label=<
queryraw TERM
• same as query, but returns raw JSON
>, pos="2261.5,1127.5", shape=plain, style=filled, width=1.1944]; ast_lake__commands_ -> ast_lake__commands____ast_lake__queryraw_TERM [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 2171.9 1154.3 2173.64 1153.8 2175.41 1153.28 2177.2 1152.76 \ 2179 1152.24 2180.82 1151.71 2182.66 1151.17 2184.5 1150.63 2186.36 1150.08 2188.22 1149.54 2190.09 1148.99 2191.97 1148.44 2193.84 \ 1147.89 2195.72 1147.33 2197.59 1146.78 2199.46 1146.23 2201.32 1145.69 2203.17 1145.14 2205.02 1144.6 2206.85 1144.06 2208.66 1143.53 \ 2210.12 1143.1 2211.58 1142.67 2213.06 1142.23 2214.54 1141.8 2216.03 1141.36 2217.52 1140.92 2219.02 1140.48 2220.52 1140.05 2222.02 \ 1139.61 2223.52 1139.17 2225.01 1138.74 2226.5 1138.3 2227.98 1137.87 2229.45 1137.44 2230.91 1137.02 2232.36 1136.6 2233.79 1136.18 \ 2235.21 1135.77 2236.61 1135.36 2237.99 1134.96 2237.41 1133.04 2236.04 1133.49 2234.65 1133.94 2233.24 1134.39 2231.82 1134.85 \ 2230.39 1135.31 2228.94 1135.78 2227.48 1136.25 2226.01 1136.72 2224.54 1137.2 2223.06 1137.68 2221.57 1138.16 2220.09 1138.64 2218.6 \ 1139.12 2217.12 1139.6 2215.64 1140.08 2214.16 1140.56 2212.69 1141.04 2211.23 1141.52 2209.77 1142 2208.34 1142.47 2206.54 1143.05 \ 2204.72 1143.64 2202.89 1144.24 2201.06 1144.83 2199.21 1145.44 2197.36 1146.04 2195.5 1146.64 2193.65 1147.25 2191.79 1147.86 2189.93 \ 1148.46 2188.08 1149.07 2186.23 1149.67 2184.39 1150.27 2182.56 1150.86 2180.74 1151.45 2178.94 1152.03 2177.15 1152.61 2175.38 \ 1153.18 2173.63 1153.75 2171.9 1154.3 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2171.58 1154.4 2167.01 1159.98 2160.1 1157.9 2164.67 1152.32 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__queryraw_TERM", penwidth=2, pos="s,2160.1,1157.9 2171.9,1154.3 2183.4,1150.8 2196.5,1146.7 2208.5,1143 2218.1,1140 2228.6,1136.8 2237.7,1134", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__flast [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2287.5 1102 2235.5 1102 2235.5 1083 2287.5 1083 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2236.5 1097.7 -1 12 5 -flast F 4.75 5 -Agave c 7 -#44475a t 0 T 2236.5 1089.7 -1 41 21 -• basically \ a dump F 4.75 5 -Agave c 7 -#44475a T 2236.5 1084.7 -1 50 25 -• print all raw flASTs ", fillcolor="#ffffff", fontsize=4.75, height=0.26389, href="#ast_lake__commands____ast_lake__flast", label=<
flast
• basically a dump
• print all raw flASTs
>, pos="2261.5,1092.5", shape=plain, style=filled, width=0.72222]; ast_lake__commands_ -> ast_lake__commands____ast_lake__flast [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 2155.7 1149.8 2157.75 1148.05 2159.89 1146.23 2162.13 1144.36 \ 2164.46 1142.45 2166.86 1140.49 2169.34 1138.51 2171.89 1136.5 2174.5 1134.47 2177.17 1132.44 2179.9 1130.4 2182.67 1128.37 2185.48 \ 1126.35 2188.33 1124.35 2191.21 1122.38 2194.12 1120.45 2197.05 1118.57 2199.99 1116.73 2202.94 1114.95 2205.89 1113.24 2208.84 \ 1111.6 2210.11 1110.92 2211.39 1110.25 2212.7 1109.6 2214.02 1108.95 2215.36 1108.32 2216.7 1107.7 2218.06 1107.09 2219.43 1106.5 \ 2220.8 1105.91 2222.18 1105.34 2223.56 1104.79 2224.94 1104.24 2226.32 1103.71 2227.7 1103.19 2229.08 1102.68 2230.44 1102.19 2231.81 \ 1101.71 2233.16 1101.24 2234.5 1100.79 2235.83 1100.35 2235.17 1098.45 2233.85 1098.93 2232.51 1099.41 2231.16 1099.91 2229.79 1100.43 \ 2228.42 1100.95 2227.05 1101.49 2225.67 1102.04 2224.29 1102.61 2222.9 1103.19 2221.52 1103.78 2220.14 1104.39 2218.77 1105.01 2217.4 \ 1105.64 2216.04 1106.28 2214.69 1106.93 2213.36 1107.6 2212.03 1108.28 2210.72 1108.98 2209.43 1109.68 2208.16 1110.4 2205.23 1112.11 \ 2202.29 1113.89 2199.37 1115.74 2196.45 1117.65 2193.55 1119.61 2190.68 1121.61 2187.83 1123.64 2185.01 1125.7 2182.24 1127.78 2179.5 \ 1129.88 2176.82 1131.98 2174.19 1134.07 2171.61 1136.15 2169.1 1138.22 2166.67 1140.26 2164.3 1142.26 2162.02 1144.23 2159.82 1146.15 \ 2157.71 1148 2155.7 1149.8 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2155.63 1149.87 2153.92 1156.88 2146.8 1158 2148.5 1150.99 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__flast", penwidth=2, pos="s,2146.8,1158 2155.7,1149.8 2168.9,1138.2 2188.9,1121.9 2208.5,1111 2216.9,1106.3 2226.7,1102.4 2235.5,1099.4", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__nodes [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2282 1064.5 2241 1064.5 2241 1050.5 2282 1050.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2242.5 1060.7 -1 12 5 -nodes F 4.75 5 -Agave c 7 -#44475a t 0 T 2242.5 1052.7 -1 39 20 -• print \ raw nodes ", fillcolor="#ffffff", fontsize=4.75, height=0.19444, href="#ast_lake__commands____ast_lake__nodes", label=<
nodes
• print raw nodes
>, pos="2261.5,1057.5", shape=plain, style=filled, width=0.56944]; ast_lake__commands_ -> ast_lake__commands____ast_lake__nodes [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 2149 1146.8 2150.74 1143.64 2152.62 1140.3 2154.66 1136.81 2156.84 \ 1133.18 2159.16 1129.43 2161.62 1125.59 2164.22 1121.67 2166.95 1117.7 2169.81 1113.7 2172.8 1109.69 2175.91 1105.69 2179.14 1101.72 \ 2182.48 1097.8 2185.95 1093.96 2189.52 1090.2 2193.2 1086.57 2196.98 1083.07 2200.87 1079.73 2204.85 1076.56 2208.92 1073.6 2210.37 \ 1072.62 2211.86 1071.69 2213.38 1070.8 2214.94 1069.95 2216.53 1069.14 2218.13 1068.36 2219.77 1067.62 2221.41 1066.92 2223.07 1066.26 \ 2224.74 1065.63 2226.42 1065.03 2228.1 1064.46 2229.77 1063.93 2231.44 1063.42 2233.1 1062.95 2234.75 1062.5 2236.38 1062.08 2237.98 \ 1061.69 2239.56 1061.32 2241.12 1060.97 2240.68 1059.03 2239.11 1059.4 2237.52 1059.79 2235.89 1060.22 2234.25 1060.67 2232.58 1061.15 \ 2230.91 1061.65 2229.22 1062.19 2227.52 1062.76 2225.83 1063.36 2224.13 1064 2222.44 1064.67 2220.76 1065.37 2219.09 1066.12 2217.44 \ 1066.89 2215.8 1067.71 2214.19 1068.57 2212.61 1069.46 2211.06 1070.4 2209.55 1071.38 2208.08 1072.4 2204 1075.47 2200.03 1078.73 \ 2196.16 1082.16 2192.4 1085.74 2188.75 1089.46 2185.21 1093.29 2181.8 1097.2 2178.49 1101.19 2175.31 1105.22 2172.25 1109.29 2169.32 \ 1113.35 2166.52 1117.4 2163.84 1121.42 2161.3 1125.38 2158.9 1129.27 2156.63 1133.05 2154.5 1136.72 2152.52 1140.25 2150.69 1143.61 \ 2149 1146.8 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2148.95 1146.91 2149.79 1154.07 2143.5 1157.6 2142.66 1150.44 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__nodes", penwidth=2, pos="s,2143.5,1157.6 2149,1146.8 2159.9,1126.3 2181,1092.4 2208.5,1073 2218.1,1066.2 2230.6,1062.3 2240.9,1060", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__mdg [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2306.5 1032 2216.5 1032 2216.5 1013 2306.5 1013 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2217.5 1027.7 -1 7 3 -mdg F 4.75 5 -Agave c 7 -#44475a t 0 T 2217.5 1019.7 -1 32 17 -• TODO \ really? F 4.75 5 -Agave c 7 -#44475a T 2217.5 1014.7 -1 88 42 -• make one big mdg graph from all mdd's ", fillcolor="#ffffff", fontsize=4.75, height=0.26389, href="#ast_lake__commands____ast_lake__mdg", label=<
mdg
• TODO really?
• make one big mdg graph from all mdd's
>, pos="2261.5,1022.5", shape=plain, style=filled, width=1.25]; ast_lake__commands_ -> ast_lake__commands____ast_lake__mdg [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 2145.9 1146.1 2147.35 1141.95 2148.97 1137.49 2150.76 1132.75 \ 2152.73 1127.77 2154.87 1122.57 2157.2 1117.2 2159.7 1111.68 2162.38 1106.04 2165.24 1100.32 2168.29 1094.56 2171.52 1088.79 2174.93 \ 1083.03 2178.54 1077.33 2182.33 1071.71 2186.3 1066.21 2190.47 1060.86 2194.83 1055.7 2199.39 1050.76 2204.13 1046.07 2209.07 1041.66 \ 2209.74 1041.1 2210.43 1040.54 2211.13 1040 2211.84 1039.47 2212.56 1038.96 2213.29 1038.45 2214.03 1037.95 2214.79 1037.47 2215.55 \ 1036.99 2216.32 1036.53 2217.1 1036.07 2217.89 1035.63 2218.68 1035.19 2219.48 1034.77 2220.29 1034.35 2221.11 1033.94 2221.92 1033.55 \ 2222.75 1033.16 2223.58 1032.78 2224.41 1032.41 2223.59 1030.59 2222.75 1030.98 2221.91 1031.38 2221.07 1031.78 2220.23 1032.2 2219.41 \ 1032.63 2218.58 1033.07 2217.76 1033.52 2216.95 1033.98 2216.15 1034.44 2215.35 1034.92 2214.57 1035.41 2213.79 1035.92 2213.02 \ 1036.43 2212.26 1036.95 2211.51 1037.49 2210.77 1038.03 2210.04 1038.59 2209.32 1039.16 2208.62 1039.75 2207.93 1040.34 2202.99 \ 1044.87 2198.26 1049.69 2193.73 1054.74 2189.41 1060.01 2185.29 1065.45 2181.36 1071.04 2177.63 1076.74 2174.09 1082.52 2170.75 \ 1088.35 2167.59 1094.19 2164.62 1100.01 2161.83 1105.78 2159.22 1111.46 2156.8 1117.02 2154.55 1122.44 2152.47 1127.67 2150.58 1132.68 \ 2148.85 1137.45 2147.29 1141.93 2145.9 1146.1 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2145.79 1146.45 2147.81 1153.37 2142.2 1157.9 2140.18 1150.98 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__mdg", penwidth=2, pos="s,2142.2,1157.9 2145.9,1146.1 2154.8,1119.5 2174.9,1069.8 2208.5,1041 2213,1037.1 2218.4,1034 2224,1031.5", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__mosaic [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2278.5 995 2244.5 995 2244.5 976 2278.5 976 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2245.5 990.7 -1 14 6 -mosaic F 4.75 5 -Agave c 7 -#44475a t 0 T 2245.5 982.7 -1 19 11 -• mosaic \ F 4.75 5 -Agave c 7 -#44475a T 2245.5 977.7 -1 32 17 -• TODO really? ", fillcolor="#ffffff", fontsize=4.75, height=0.26389, href="#ast_lake__commands____ast_lake__mosaic", label=<
mosaic
• mosaic
• TODO really?
>, pos="2261.5,985.5", shape=plain, style=filled, width=0.47222]; ast_lake__commands_ -> ast_lake__commands____ast_lake__mosaic [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 2143.3 1145.7 2144.3 1140.47 2145.47 1134.74 2146.84 1128.55 \ 2148.4 1121.97 2150.18 1115.03 2152.18 1107.8 2154.41 1100.31 2156.88 1092.63 2159.6 1084.8 2162.59 1076.88 2165.84 1068.91 2169.38 \ 1060.95 2173.21 1053.04 2177.35 1045.24 2181.79 1037.61 2186.56 1030.18 2191.66 1023.01 2197.1 1016.16 2202.89 1009.67 2209.05 1003.58 \ 2210.53 1002.28 2212.08 1001.04 2213.69 999.87 2215.35 998.76 2217.06 997.71 2218.81 996.71 2220.6 995.78 2222.42 994.9 2224.27 \ 994.07 2226.13 993.3 2228 992.58 2229.88 991.91 2231.76 991.28 2233.63 990.7 2235.49 990.17 2237.33 989.67 2239.15 989.22 2240.94 \ 988.81 2242.69 988.43 2244.4 988.09 2244 986.13 2242.28 986.49 2240.5 986.89 2238.69 987.33 2236.84 987.81 2234.97 988.33 2233.08 \ 988.9 2231.18 989.51 2229.27 990.16 2227.36 990.87 2225.45 991.63 2223.55 992.44 2221.67 993.3 2219.81 994.22 2217.98 995.2 2216.19 \ 996.24 2214.43 997.35 2212.73 998.51 2211.07 999.74 2209.48 1001.04 2207.95 1002.42 2201.79 1008.63 2196.01 1015.24 2190.59 1022.21 \ 2185.52 1029.48 2180.8 1037.01 2176.41 1044.73 2172.33 1052.6 2168.57 1060.58 2165.1 1068.6 2161.91 1076.62 2159 1084.59 2156.35 \ 1092.46 2153.96 1100.18 2151.8 1107.69 2149.88 1114.95 2148.17 1121.91 2146.67 1128.52 2145.36 1134.72 2144.24 1140.46 2143.3 1145.7 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2143.27 1145.86 2146.23 1152.44 2141.3 1157.7 2138.34 1151.12 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__mosaic", penwidth=2, pos="s,2141.3,1157.7 2143.3,1145.7 2149.2,1112.6 2166.2,1042.5 2208.5,1003 2218.3,993.86 2232.9,989.34 2244.2,987.11", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__mprocs [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2286.5 957.5 2236.5 957.5 2236.5 943.5 2286.5 943.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2237.5 953.7 -1 14 6 -mprocs F 4.75 5 -Agave c 7 -#44475a t 0 T 2237.5 945.7 -1 48 24 -• TODO \ support mprocs ", fillcolor="#ffffff", fontsize=4.75, height=0.19444, href="#ast_lake__commands____ast_lake__mprocs", label=<
mprocs
• TODO support mprocs
>, pos="2261.5,950.5", shape=plain, style=filled, width=0.69444]; ast_lake__commands_ -> ast_lake__commands____ast_lake__mprocs [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 2144.6 1145.7 2146.26 1138.63 2148.17 1130.69 2150.31 1121.98 \ 2152.68 1112.62 2155.25 1102.73 2158.02 1092.41 2160.97 1081.77 2164.08 1070.94 2167.35 1060.02 2170.75 1049.13 2174.28 1038.38 \ 2177.91 1027.88 2181.64 1017.74 2185.45 1008.08 2189.33 999.02 2193.25 990.66 2197.21 983.13 2201.19 976.53 2205.16 970.99 2209.11 \ 966.6 2210.22 965.59 2211.39 964.6 2212.6 963.67 2213.85 962.77 2215.13 961.92 2216.44 961.11 2217.79 960.34 2219.16 959.61 2220.55 \ 958.92 2221.96 958.26 2223.39 957.65 2224.83 957.07 2226.28 956.52 2227.75 956.01 2229.21 955.53 2230.68 955.09 2232.15 954.67 2233.61 \ 954.28 2235.07 953.93 2236.53 953.59 2236.07 951.65 2234.61 952 2233.12 952.37 2231.62 952.78 2230.13 953.22 2228.62 953.69 2227.12 \ 954.2 2225.63 954.74 2224.14 955.31 2222.66 955.92 2221.19 956.57 2219.74 957.25 2218.31 957.98 2216.9 958.75 2215.51 959.56 2214.16 \ 960.41 2212.83 961.31 2211.54 962.26 2210.29 963.25 2209.07 964.29 2207.89 965.4 2203.85 969.95 2199.84 975.66 2195.87 982.38 2191.95 \ 990.02 2188.07 998.46 2184.26 1007.6 2180.53 1017.32 2176.88 1027.51 2173.33 1038.06 2169.9 1048.86 2166.59 1059.79 2163.42 1070.75 \ 2160.4 1081.61 2157.55 1092.28 2154.87 1102.63 2152.38 1112.55 2150.1 1121.93 2148.03 1130.65 2146.2 1138.62 2144.6 1145.7 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2144.53 1145.99 2147.12 1152.72 2141.9 1157.7 2139.31 1150.97 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__commands_👉 ast_lake__commands____ast_lake__mprocs", penwidth=2, pos="s,2141.9,1157.7 2144.6,1145.7 2154.6,1101.7 2181.9,991.72 2208.5,966 2216,958.77 2226.6,954.8 2236.3,952.62", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__recent_updates___ast_lake__2025_12_01 [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#eae7e2 P 4 2302 925 2221 925 2221 896 2302 896 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 2222.5 920.7 -1 23 10 -2025-12-01 F 4.75 5 -Agave c 7 -#44475a t 0 T 2222.5 912.7 -1 79 38 -• actualizeNodes: \ chunked parallel F 4.75 5 -Agave c 7 -#44475a T 2250.5 907.7 -1 23 10 -processing F 4.75 5 -Agave c 7 -#44475a T 2222.5 902.7 -1 \ 61 30 -• chunk size: CPU count / 2 F 4.75 5 -Agave c 7 -#44475a T 2222.5 897.7 -1 77 37 -• faster database query processing ", fillcolor="#eae7e2", fontsize=4.75, height=0.40278, href="#ast_lake__recent_updates___ast_lake__2025_12_01", label=<
2025-12-01
• actualizeNodes: chunked parallel
processing
• chunk size: CPU count / 2
• faster database query processing
>, pos="2261.5,910.5", shape=plain, style=filled, width=1.125]; ast_lake__recent_updates -> ast_lake__recent_updates___ast_lake__2025_12_01 [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 2150.1 1005.2 2151.94 1002.23 2153.92 999.09 2156.05 995.8 2158.31 \ 992.38 2160.69 988.86 2163.21 985.23 2165.84 981.54 2168.6 977.78 2171.46 973.99 2174.43 970.17 2177.51 966.35 2180.68 962.53 2183.94 \ 958.76 2187.3 955.02 2190.74 951.36 2194.26 947.78 2197.85 944.3 2201.51 940.94 2205.24 937.72 2209.03 934.65 2209.69 934.14 2210.36 \ 933.63 2211.04 933.13 2211.73 932.63 2212.43 932.14 2213.14 931.66 2213.85 931.18 2214.57 930.7 2215.3 930.23 2216.03 929.77 2216.77 \ 929.31 2217.52 928.86 2218.26 928.41 2219.02 927.97 2219.77 927.53 2220.53 927.1 2221.29 926.68 2222.05 926.26 2222.81 925.85 2223.58 \ 925.44 2222.62 923.68 2221.86 924.11 2221.09 924.54 2220.33 924.98 2219.56 925.42 2218.8 925.87 2218.04 926.33 2217.29 926.79 2216.53 \ 927.26 2215.79 927.74 2215.04 928.22 2214.3 928.7 2213.57 929.19 2212.84 929.69 2212.12 930.2 2211.41 930.71 2210.71 931.22 2210.01 \ 931.74 2209.32 932.27 2208.64 932.8 2207.97 933.35 2204.2 936.51 2200.5 939.83 2196.87 943.28 2193.32 946.85 2189.84 950.52 2186.45 \ 954.26 2183.15 958.07 2179.94 961.92 2176.83 965.8 2173.82 969.69 2170.91 973.57 2168.11 977.43 2165.42 981.24 2162.85 984.99 2160.4 \ 988.66 2158.07 992.23 2155.88 995.69 2153.81 999.02 2151.89 1002.19 2150.1 1005.2 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 2150.07 1005.25 2150.49 1012.45 2144 1015.6 2143.59 1008.4 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#ast_lake__recent_updates👉 ast_lake__recent_updates___ast_lake__2025_12_01", penwidth=2, pos="s,2144,1015.6 2150.1,1005.2 2161.7,985.85 2183.1,954.23 2208.5,934 2212.9,930.47 2218,927.32 2223.1,924.56", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; ast_lake__commands____ast_lake__restart___ast_lake__commands____ast_lake__reset_nodes [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#9dc0a9 P 4 2402.5 1409 2350.5 1409 2350.5 1396 2402.5 1396 ", _ldraw_="F 2.38 5 -Agave c 7 -#44475a t 1 T 2351.5 1406.6 -1 17 11 -reset-nodes F 2.38 5 -Agave c 7 -#44475a t 0 T 2351.5 1400.6 -1 50 36 \ -• cleanup only cached nodes (dev) F 2.38 5 -Agave c 7 -#44475a T 2351.5 1397.6 -1 31 23 -• and recreated them ", fillcolor="#9dc0a9", fontsize=2.375, height=0.18056, href="#ast_lake__commands____ast_lake__restart___ast_lake__commands____ast_lake__reset_nodes", label=<
reset-nodes
• cleanup only cached nodes (dev)
• and recreated them
>, pos="2376.5,1402.5", shape=plain, style=filled, width=0.72222]; ast_lake__commands____ast_lake__restart -> ast_lake__commands____ast_lake__restart___ast_lake__commands____ast_lake__reset_nodes [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 4 2290.1 1402 2305.3 1402 2324.1 1402 2340.3 1402 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 2350.5 1402 2340.5 1406.5 2345.5 1402 2340.5 1402 2340.5 1402 2340.5 \ 1402 2345.5 1402 2340.5 1397.5 2350.5 1402 ", arrowhead=open, arrowsize=1.0, href="#ast_lake__commands____ast_lake__restart👉 ast_lake__commands____ast_lake__restart___ast_lake__commands____ast_lake__reset_nodes", pos="e,2350.5,1402 2290.1,1402 2305.3,1402 2324.1,1402 2340.3,1402", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; } subgraph G_cc_1 { graph [applyCss=true, arrowsize=0.6, bb="", bgcolor="#f8f8f2", charset="UTF-8", clusterize=true, color="#2c2d33", desaturate=true, fontcolor="#44475a", fontname=Agave, grayscale=false, intention=semi, margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, rankdir=LR, shape=box, splines=spline, style=rounded, truecolor=true ]; node [arrowsize=0.6, bgcolor="#f8f8f2", color="#2c2d33", fillcolor="", fontcolor="#44475a", fontname=Agave, fontsize="", height="", href="", label="\N", margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, pos="", shape=box, splines=true, style=rounded, truecolor=true, width="" ]; edge [arrowhead="", arrowsize=0.6, arrowtail="", bgcolor="#f8f8f2", color="#2c2d33", constrained="", dir="", fontcolor="#44475a", fontname=Agave, fontsize=6.8, href="", margin=4.3, overlap=voronoi, pencolor="#2c2d33", penwidth=0.8, pos="", reverse="", shape=box, splines=true, style=rounded, tooltip="", truecolor=true, type="" ]; db_tables [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#f8f3eb P 4 697 219 0 219 0 0 697 0 ", _ldraw_="F 19 5 -Agave c 7 -#44475a t 1 T 1.5 203.3 -1 88 9 -db tables F 19 5 -Agave c 7 -#44475a t 0 T 1.5 184.3 -1 391 40 -These tables \ are in our ast-lake SQLite F 19 5 -Agave c 7 -#44475a T 1.5 165.3 -1 371 38 -database. They hold the state derived F 19 5 -Agave \ c 7 -#44475a T 1.5 146.3 -1 371 38 -from parsing mdd/md/js files into AST F 19 5 -Agave c 7 -#44475a T 1.5 127.3 -1 69 7 -nodes. \ F 19 5 -Agave c 7 -#44475a t 4 T 70.5 127.3 -1 342 35 -Two parallel implementations exist: F 19 5 -Agave c 7 -#44475a t 0 T 412.5 \ 127.3 -1 10 1 - F 19 5 -Agave c 7 -#44475a T 1.5 106.3 -1 30 6 -•  F 19 5 -Agave c 7 -#44475a t 4 T 31.5 106.3 -1 108 11 -Shell-based \ F 19 5 -Agave c 7 -#44475a t 0 T 139.5 106.3 -1 20 2 - ( F 19 5 -Agave c 7 -#ff79c6 T 159.5 106.3 -1 127 15 - ast-lake.sh  F 19 \ 5 -Agave c 7 -#44475a T 286.5 106.3 -1 391 42 -) — older approach using local SQLite + F 19 5 -Agave c 7 -#44475a T 280.5 87.3 \ -1 118 12 -nljson files F 19 5 -Agave c 7 -#44475a T 1.5 68.3 -1 30 6 -•  F 19 5 -Agave c 7 -#44475a t 4 T 31.5 68.3 -1 127 \ 13 -Node.js-based F 19 5 -Agave c 7 -#44475a t 0 T 158.5 68.3 -1 20 2 - ( F 19 5 -Agave c 7 -#ff79c6 T 178.5 68.3 -1 137 16 - ast-lake.mjs  \ F 19 5 -Agave c 7 -#44475a T 315.5 68.3 -1 381 41 -) — newer approach using remote SQLite F 19 5 -Agave c 7 -#44475a T 265.5 \ 49.3 -1 30 3 -via F 19 5 -Agave c 7 -#ff79c6 T 295.5 49.3 -1 137 16 - RemoteSqlite  F 19 5 -Agave c 7 -#44475a T 1.5 27.3 -1 381 \ 39 -Both follow the same pipeline: extract F 19 5 -Agave c 7 -#44475a T 35.5 6.3 -1 313 36 -flast → normalize → store nodes. ", fillcolor="#f8f3eb", fontsize=19, height=3.0417, href="#db_tables", label=<
db tables
These tables are in our ast-lake SQLite
database. They hold the state derived
from parsing mdd/md/js files into AST
nodes. Two parallel implementations exist:
•  Shell-based ( ast-lake.sh ) — older approach using local SQLite +
nljson files
•  Node.js-based ( ast-lake.mjs ) — newer approach using remote SQLite
via RemoteSqlite 
Both follow the same pipeline: extract
flast → normalize → store nodes.
>, pos="348.5,109.5", shape=plain, style=filled, width=9.6806]; db_tables__The_pipeline__how_data_flows_ [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#f8f3eb P 4 1094.5 501 826.5 501 826.5 300 1094.5 300 ", _ldraw_="F 9.5 5 -Agave c 7 -#44475a t 1 T 827.5 492.9 -1 122 27 -The pipeline how data flows F 9.5 5 -Agave c 7 -#ff79c6 t 0 T 827.5 473.9 \ -1 154 41 - File on disk │ ▼ astHole() → F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 464.4 -1 158 37 -astNavigator() — reads \ file, calls F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 454.9 -1 266 61 -language-specific extractor │ \ F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 445.4 -1 104 23 -(extractFlastMarkdown, F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 435.9 -1 253 58 \ -extractFlastJavascript, │ F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 426.4 -1 194 43 -extractFlastJson, \ extractFlastBash, ...) F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 416.9 -1 172 42 -▼ cache_ast_lake_flast — one F 9.5 \ 5 -Agave c 7 -#ff79c6 T 827.5 407.4 -1 172 38 -row per file; id=filepath, value=JSON F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 397.9 \ -1 176 45 -flast array │ ▼ actualizeNodes() → F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 388.4 -1 167 39 -normalizeNodes() — \ extracts symbolic F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 378.9 -1 248 57 -types from flast │ \ F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 369.4 -1 113 25 -(heading, link, comment, F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 359.9 -1 167 \ 39 -FunctionDeclaration, Identifier) ▼ F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 350.4 -1 181 42 -cache_ast_lake_nodes — \ one row F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 340.9 -1 122 27 -per AST node; id=fn:offset F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 331.4 \ -1 167 39 -cache_ast_lake_nodes_ref — same F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 321.9 -1 167 37 -rows, different ref format (\ readable F 9.5 5 -Agave c 7 -#ff79c6 T 827.5 312.4 -1 176 41 -refId) cache_ast_lake_nodes_backup — F 9.5 5 -Agave c 7 -#ff79c6 \ T 827.5 302.9 -1 154 35 -backup of old nodes before update  ", fillcolor="#f8f3eb", fontsize=9.5, height=2.7917, href="#db_tables__The_pipeline__how_data_flows_", label=<
The pipeline how data flows

 File on disk │ ▼ astHole() →
astNavigator() — reads file, calls
language-specific extractor │
(extractFlastMarkdown,
extractFlastJavascript, │
extractFlastJson, extractFlastBash, ...)
▼ cache_ast_lake_flast — one
row per file; id=filepath, value=JSON
flast array │ ▼ actualizeNodes() →
normalizeNodes() — extracts symbolic
types from flast │
(heading, link, comment,
FunctionDeclaration, Identifier) ▼
cache_ast_lake_nodes — one row
per AST node; id=fn:offset
cache_ast_lake_nodes_ref — same
rows, different ref format (readable
refId) cache_ast_lake_nodes_backup —
backup of old nodes before update 

>, pos="960.5,400.5", shape=plain, style=filled, width=3.7222]; db_tables -> db_tables__The_pipeline__how_data_flows_ [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 4 578.93 219.6 658.83 257.68 746.08 299.27 816.85 333.01 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 826.28 337.5 815.32 337.26 821.77 335.35 817.25 333.2 817.25 333.2 \ 817.25 333.2 821.77 335.35 819.19 329.14 826.28 337.5 ", arrowhead=open, arrowsize=1.0, href="#db_tables👉 db_tables__The_pipeline__how_data_flows_", pos="e,826.28,337.5 578.93,219.6 658.83,257.68 746.08,299.27 816.85,333.01", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_ [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 1188.5 281.5 732.5 281.5 732.5 69.5 1188.5 69.5 ", _ldraw_="F 9.5 5 -Agave c 7 -#44475a t 1 T 733.5 273.9 -1 91 20 -cache_ast_lake_flast F 9.5 5 -Agave c 7 -#44475a t 0 T 733.5 264.4 -1 50 \ 11 -Schema from F 9.5 5 -Agave c 7 -#ff79c6 T 783.5 264.4 -1 136 32 - sqlCreateTableCache(tblName)  F 9.5 5 -Agave c 7 -#44475a \ T 919.5 264.4 -1 10 2 -in F 9.5 5 -Agave c 7 -#ff79c6 T 929.5 264.4 -1 77 19 - ast-lake.mjs:51  F 9.5 5 -Agave c 7 -#44475a T \ 1006.5 264.4 -1 181 40 -. All four share the same column layout F 9.5 5 -Agave c 7 -#44475a T 844.5 254.9 -1 19 4 -but F 9.5 5 \ -Agave c 7 -#44475a t 4 T 863.5 254.9 -1 203 45 -each column has different semantics per table F 9.5 5 -Agave c 7 -#44475a t 0 T \ 1066.5 254.9 -1 10 2 - : S 5 -solid c 7 -#2c2d33 p 4 735.5 232.5 735.5 248.5 825.5 248.5 825.5 232.5 F 9.5 5 -Agave c 7 -#44475a \ T 766.5 237.9 -1 28 6 -Column S 5 -solid c 7 -#2c2d33 p 4 827.5 232.5 827.5 248.5 944.5 248.5 944.5 232.5 F 9.5 5 -Agave c 7 -#44475a \ T 876.5 237.9 -1 19 4 -Type S 5 -solid c 7 -#2c2d33 p 4 946.5 232.5 946.5 248.5 1185.5 248.5 1185.5 232.5 F 9.5 5 -Agave c 7 -#44475a \ T 1041 237.9 -1 50 11 -Description S 5 -solid c 7 -#2c2d33 p 4 735.5 214.5 735.5 230.5 825.5 230.5 825.5 214.5 F 9.5 5 -Agave c \ 7 -#ff79c6 T 771 219.9 -1 19 6 - id  S 5 -solid c 7 -#2c2d33 p 4 827.5 214.5 827.5 230.5 944.5 230.5 944.5 214.5 F 9.5 5 -Agave \ c 7 -#44475a T 856.5 219.9 -1 59 13 -TEXT NOT NULL S 5 -solid c 7 -#2c2d33 p 4 946.5 214.5 946.5 230.5 1185.5 230.5 1185.5 214.5 \ F 9.5 5 -Agave c 7 -#44475a T 1041 219.9 -1 50 11 -Primary key S 5 -solid c 7 -#2c2d33 p 4 735.5 196.5 735.5 212.5 825.5 212.5 825.5 \ 196.5 F 9.5 5 -Agave c 7 -#ff79c6 T 764.5 201.9 -1 32 9 - value  S 5 -solid c 7 -#2c2d33 p 4 827.5 196.5 827.5 212.5 944.5 212.5 \ 944.5 196.5 F 9.5 5 -Agave c 7 -#44475a T 876.5 201.9 -1 19 4 -TEXT S 5 -solid c 7 -#2c2d33 p 4 946.5 196.5 946.5 212.5 1185.5 212.5 \ 1185.5 196.5 F 9.5 5 -Agave c 7 -#44475a T 991.5 201.9 -1 149 33 -JSON payload of the node or flast S 5 -solid c 7 -#2c2d33 p 4 \ 735.5 178.5 735.5 194.5 825.5 194.5 825.5 178.5 F 9.5 5 -Agave c 7 -#ff79c6 T 771 183.9 -1 19 6 - mt  S 5 -solid c 7 -#2c2d33 \ p 4 827.5 178.5 827.5 194.5 944.5 194.5 944.5 178.5 F 9.5 5 -Agave c 7 -#44475a T 876.5 183.9 -1 19 4 -TEXT S 5 -solid c 7 -#2c2d33 \ p 4 946.5 178.5 946.5 194.5 1185.5 194.5 1185.5 178.5 F 9.5 5 -Agave c 7 -#44475a T 987 183.9 -1 158 35 -Modification timestamp \ or mime-type S 5 -solid c 7 -#2c2d33 p 4 735.5 160.5 735.5 176.5 825.5 176.5 825.5 160.5 F 9.5 5 -Agave c 7 -#ff79c6 T 769 165.9 \ -1 23 7 - sem  S 5 -solid c 7 -#2c2d33 p 4 827.5 160.5 827.5 176.5 944.5 176.5 944.5 160.5 F 9.5 5 -Agave c 7 -#44475a T 876.5 \ 165.9 -1 19 4 -TEXT S 5 -solid c 7 -#2c2d33 p 4 946.5 160.5 946.5 176.5 1185.5 176.5 1185.5 160.5 F 9.5 5 -Agave c 7 -#44475a T \ 1036.5 165.9 -1 59 13 -Semantic type S 5 -solid c 7 -#2c2d33 p 4 735.5 142.5 735.5 158.5 825.5 158.5 825.5 142.5 F 9.5 5 -Agave \ c 7 -#ff79c6 T 766.5 147.9 -1 28 8 - num1  S 5 -solid c 7 -#2c2d33 p 4 827.5 142.5 827.5 158.5 944.5 158.5 944.5 142.5 F 9.5 5 \ -Agave c 7 -#44475a T 870 147.9 -1 32 7 -INTEGER S 5 -solid c 7 -#2c2d33 p 4 946.5 142.5 946.5 158.5 1185.5 158.5 1185.5 142.5 F \ 9.5 5 -Agave c 7 -#44475a T 982.5 147.9 -1 167 37 -First numeric slot (position or line) S 5 -solid c 7 -#2c2d33 p 4 735.5 124.5 \ 735.5 140.5 825.5 140.5 825.5 124.5 F 9.5 5 -Agave c 7 -#ff79c6 T 766.5 129.9 -1 28 8 - num2  S 5 -solid c 7 -#2c2d33 p 4 827.5 \ 124.5 827.5 140.5 944.5 140.5 944.5 124.5 F 9.5 5 -Agave c 7 -#44475a T 870 129.9 -1 32 7 -INTEGER S 5 -solid c 7 -#2c2d33 p 4 946.5 \ 124.5 946.5 140.5 1185.5 140.5 1185.5 124.5 F 9.5 5 -Agave c 7 -#44475a T 975.5 129.9 -1 181 40 -Second numeric slot (position or \ column) S 5 -solid c 7 -#2c2d33 p 4 735.5 106.5 735.5 122.5 825.5 122.5 825.5 106.5 F 9.5 5 -Agave c 7 -#ff79c6 T 769 111.9 -1 23 \ 7 - ref  S 5 -solid c 7 -#2c2d33 p 4 827.5 106.5 827.5 122.5 944.5 122.5 944.5 106.5 F 9.5 5 -Agave c 7 -#44475a T 876.5 111.9 \ -1 19 4 -TEXT S 5 -solid c 7 -#2c2d33 p 4 946.5 106.5 946.5 122.5 1185.5 122.5 1185.5 106.5 F 9.5 5 -Agave c 7 -#44475a T 1000.5 \ 111.9 -1 131 29 -Reference ID (trail or refId) S 5 -solid c 7 -#2c2d33 p 4 735.5 88.5 735.5 104.5 825.5 104.5 825.5 88.5 F 9.5 5 \ -Agave c 7 -#ff79c6 T 766.5 93.9 -1 28 8 - body  S 5 -solid c 7 -#2c2d33 p 4 827.5 88.5 827.5 104.5 944.5 104.5 944.5 88.5 F 9.5 \ 5 -Agave c 7 -#44475a T 876.5 93.9 -1 19 4 -TEXT S 5 -solid c 7 -#2c2d33 p 4 946.5 88.5 946.5 104.5 1185.5 104.5 1185.5 88.5 F 9.5 \ 5 -Agave c 7 -#44475a T 1034 93.9 -1 64 14 -Node body text F 9.5 5 -Agave c 7 -#44475a T 733.5 77.9 -1 5 1 - F 9.5 5 -Agave c 7 \ -#44475a t 4 T 738.5 77.9 -1 68 15 -Shared indexes: F 9.5 5 -Agave c 7 -#44475a t 0 T 806.5 77.9 -1 5 1 - F 9.5 5 -Agave c 7 -#\ ff79c6 T 811.5 77.9 -1 28 8 - num1  F 9.5 5 -Agave c 7 -#44475a T 839.5 77.9 -1 5 1 -, F 9.5 5 -Agave c 7 -#ff79c6 T 844.5 77.9 \ -1 28 8 - num2  F 9.5 5 -Agave c 7 -#44475a T 872.5 77.9 -1 5 1 -, F 9.5 5 -Agave c 7 -#ff79c6 T 877.5 77.9 -1 23 7 - sem  F \ 9.5 5 -Agave c 7 -#44475a T 900.5 77.9 -1 5 1 -, F 9.5 5 -Agave c 7 -#ff79c6 T 905.5 77.9 -1 23 7 - ref  F 9.5 5 -Agave c 7 -#\ 44475a T 928.5 77.9 -1 50 11 -(each named F 9.5 5 -Agave c 7 -#ff79c6 T 978.5 77.9 -1 86 21 - {table}_idx_{col}  F 9.5 5 -Agave \ c 7 -#44475a T 1064.5 77.9 -1 10 2 -). S 5 -solid c 7 -#282a36 p 4 733.5 70.5 733.5 72.5 1187.5 72.5 1187.5 70.5 ", fillcolor="#ffffff", fontsize=9.5, height=2.9444, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_", label=<
cache_ast_lake_flast
Schema from sqlCreateTableCache(tblName) in ast-lake.mjs:51 . All four share the same column layout
but each column has different semantics per table :
ColumnTypeDescription
 id TEXT NOT NULLPrimary key
 value TEXTJSON payload of the node or flast
 mt TEXTModification timestamp or mime-type
 sem TEXTSemantic type
 num1 INTEGERFirst numeric slot (position or line)
 num2 INTEGERSecond numeric slot (position or column)
 ref TEXTReference ID (trail or refId)
 body TEXTNode body text
Shared indexes:  num1 , num2 , sem , ref (each named {table}_idx_{col} ).
>, pos="960.5,175.5", shape=plain, style=filled, width=6.3333]; db_tables -> db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_ [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 4 696.61 147.58 705.28 148.52 713.9 149.45 722.45 150.37 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 732.45 151.45 722.02 154.85 727.48 150.91 722.51 150.38 722.51 \ 150.38 722.51 150.38 727.48 150.91 722.99 145.9 732.45 151.45 ", arrowhead=open, arrowsize=1.0, href="#db_tables👉 db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_", pos="e,732.45,151.45 696.61,147.58 705.28,148.52 713.9,149.45 722.45,150.37", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; db_tables__linetime_ [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#f8f3eb P 4 1028.5 51 892.5 51 892.5 36 1028.5 36 ", _ldraw_="F 14 5 -Agave c 7 -#44475a T 960.5 39.8 0 136 20 -db_tables__linetime_ ", fillcolor="#f8f3eb", height=0.20833, href="#db_tables__linetime_", pos="960.5,43.5", shape=plain, style=filled, width=1.8889]; db_tables -> db_tables__linetime_ [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 708.82 63.46 710.01 63.34 711.21 63.22 712.4 63.1 713.59 62.98 \ 714.78 62.86 715.97 62.74 717.16 62.63 718.35 62.51 719.53 62.39 720.72 62.27 721.9 62.16 723.09 62.04 724.27 61.93 725.45 61.81 \ 726.63 61.7 727.81 61.58 728.99 61.47 730.16 61.35 731.34 61.24 732.51 61.13 740.62 60.36 748.82 59.62 757.09 58.88 765.42 58.17 \ 773.79 57.47 782.19 56.78 790.59 56.11 798.97 55.46 807.33 54.83 815.65 54.21 823.9 53.62 832.06 53.04 840.13 52.48 848.09 51.94 \ 855.91 51.41 863.59 50.91 871.09 50.43 878.41 49.96 885.53 49.52 892.44 49.1 892.3 47.1 885.41 47.6 878.29 48.12 870.97 48.66 863.47 \ 49.23 855.8 49.82 847.98 50.42 840.03 51.05 831.96 51.7 823.8 52.37 815.55 53.05 807.25 53.76 798.89 54.48 790.51 55.23 782.12 55.98 \ 773.73 56.76 765.37 57.55 757.04 58.36 748.78 59.18 740.59 60.02 732.49 60.87 731.31 61 730.14 61.12 728.96 61.25 727.79 61.38 726.61 \ 61.5 725.43 61.63 724.25 61.76 723.07 61.89 721.89 62.02 720.71 62.14 719.52 62.27 718.34 62.4 717.15 62.53 715.96 62.67 714.78 \ 62.8 713.59 62.93 712.4 63.06 711.2 63.19 710.01 63.33 708.82 63.46 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 708.61 63.48 703.07 68.1 696.68 64.77 702.22 60.15 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#db_tables👉 db_tables__linetime_", penwidth=2, pos="s,696.68,64.765 708.82,63.46 716.78,62.613 724.68,61.791 732.5,61 786.17,55.565 847.14,51.093 892.37,48.102", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; db_tables__repo_voting_ [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#f8f3eb P 4 1038.5 18 882.5 18 882.5 3 1038.5 3 ", _ldraw_="F 14 5 -Agave c 7 -#44475a T 960.5 6.8 0 156 23 -db_tables__repo_voting_ ", fillcolor="#f8f3eb", height=0.20833, href="#db_tables__repo_voting_", pos="960.5,10.5", shape=plain, style=filled, width=2.1667]; db_tables -> db_tables__repo_voting_ [_draw_="S 15 -setlinewidth(2) S 7 -tapered c 9 -#fffffe00 C 7 -#2c2d33 P 82 708.49 30.6 709.7 30.42 710.91 30.24 712.12 30.05 713.33 29.88 \ 714.54 29.7 715.74 29.52 716.95 29.34 718.15 29.17 719.36 28.99 720.56 28.82 721.76 28.65 722.96 28.47 724.16 28.3 725.36 28.13 \ 726.55 27.97 727.75 27.8 728.94 27.63 730.14 27.47 731.33 27.3 732.52 27.14 740.01 26.14 747.58 25.19 755.22 24.29 762.92 23.43 \ 770.66 22.61 778.42 21.83 786.2 21.09 793.99 20.4 801.75 19.74 809.49 19.12 817.19 18.53 824.84 17.98 832.41 17.46 839.9 16.98 847.29 \ 16.53 854.57 16.1 861.73 15.71 868.74 15.35 875.61 15.01 882.3 14.71 882.2 12.71 875.5 13.09 868.64 13.51 861.62 13.95 854.47 14.43 \ 847.19 14.93 839.79 15.47 832.31 16.04 824.73 16.64 817.09 17.28 809.4 17.96 801.66 18.67 793.89 19.41 786.12 20.2 778.34 21.03 \ 770.58 21.89 762.84 22.8 755.15 23.75 747.52 24.74 739.96 25.78 732.48 26.86 731.29 27.04 730.1 27.22 728.91 27.4 727.72 27.58 726.52 \ 27.76 725.33 27.94 724.13 28.12 722.93 28.31 721.74 28.49 720.54 28.68 719.34 28.87 718.14 29.06 716.93 29.25 715.73 29.44 714.53 \ 29.63 713.32 29.82 712.11 30.01 710.91 30.21 709.7 30.4 708.49 30.6 ", _tdraw_="S 15 -setlinewidth(2) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 4 708.49 30.6 703.2 35.5 696.64 32.5 701.93 27.6 ", arrowsize=1.0, arrowtail=diamond, constrained=false, dir=back, href="#db_tables👉 db_tables__repo_voting_", penwidth=2, pos="s,696.64,32.496 708.49,30.599 716.56,29.334 724.57,28.132 732.5,27 782.07,19.925 838.2,15.934 882.25,13.707", reverse=false, style=tapered, tooltip="*= consistsOf", type=consistsOf]; "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_flast_" [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 1964.5 698.5 1544.5 698.5 1544.5 506.5 1964.5 506.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 1545.5 694.7 -1 46 20 -cache_ast_lake_flast F 4.75 5 -Agave c 7 -#44475a t 0 T 1545.5 689.95 \ -1 3 1 - F 4.75 5 -Agave c 7 -#44475a t 4 T 1548.5 689.95 -1 12 5 -Role: F 4.75 5 -Agave c 7 -#44475a t 0 T 1560.5 689.95 -1 88 \ 41 - Raw flattened AST cache — one row per F 4.75 5 -Agave c 7 -#44475a T 1545.5 685.2 -1 88 39 -file. Stores the complete AST \ produced F 4.75 5 -Agave c 7 -#44475a T 1557.5 680.45 -1 79 35 -by the language-specific extractor. S 5 -solid c 7 -#2c2d33 p 4 \ 1547.5 663.5 1547.5 674.5 1624.5 674.5 1624.5 663.5 F 4.75 5 -Agave c 7 -#44475a T 1579 667.7 -1 14 6 -Column S 5 -solid c 7 -#2c2d33 \ p 4 1626.5 663.5 1626.5 674.5 1811.5 674.5 1811.5 663.5 F 4.75 5 -Agave c 7 -#44475a T 1669.5 668.7 -1 55 24 -How it's populated (\ from F 4.75 5 -Agave c 7 -#ff79c6 T 1724.5 668.7 -1 41 20 - actualizeNodes()  F 4.75 5 -Agave c 7 -#44475a T 1765.5 668.7 -1 3 \ 1 -) S 5 -solid c 7 -#2c2d33 p 4 1813.5 663.5 1813.5 674.5 1961.5 674.5 1961.5 663.5 F 4.75 5 -Agave c 7 -#44475a T 1877 667.7 -1 \ 21 9 -Semantics S 5 -solid c 7 -#2c2d33 p 4 1547.5 650.5 1547.5 661.5 1624.5 661.5 1624.5 650.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1581 \ 654.7 -1 10 6 - id  S 5 -solid c 7 -#2c2d33 p 4 1626.5 650.5 1626.5 661.5 1811.5 661.5 1811.5 650.5 F 4.75 5 -Agave c 7 -#ff79c6 \ T 1676 655.7 -1 40 14 - row【0】  F 4.75 5 -Agave c 7 -#44475a T 1716 655.7 -1 46 22 -— the file path (fn) S 5 -solid c 7 \ -#2c2d33 p 4 1813.5 650.5 1813.5 661.5 1961.5 661.5 1961.5 650.5 F 4.75 5 -Agave c 7 -#44475a T 1843.5 654.7 -1 88 39 -Full filesystem \ path to the source file S 5 -solid c 7 -#2c2d33 p 4 1547.5 627.5 1547.5 648.5 1624.5 648.5 1624.5 627.5 F 4.75 5 -Agave c 7 -#ff79c6 \ T 1578 636.7 -1 16 9 - value  S 5 -solid c 7 -#2c2d33 p 4 1626.5 627.5 1626.5 648.5 1811.5 648.5 1811.5 627.5 F 4.75 5 -Agave \ c 7 -#ff79c6 T 1657 637.7 -1 40 14 - row【1】  F 4.75 5 -Agave c 7 -#44475a T 1697 637.7 -1 3 3 -— F 4.75 5 -Agave c 7 -#ff79c6 \ T 1700 637.7 -1 50 26 - JSON.parse(row【1】)  F 4.75 5 -Agave c 7 -#44475a T 1750 637.7 -1 3 3 -→ F 4.75 5 -Agave c 7 -#ff79c6 \ T 1753 637.7 -1 28 14 - data.flast  S 5 -solid c 7 -#2c2d33 p 4 1813.5 627.5 1813.5 648.5 1961.5 648.5 1961.5 627.5 F 4.75 5 -Agave \ c 7 -#44475a T 1850 641.7 -1 75 33 -Full JSON array of all AST nodes F 4.75 5 -Agave c 7 -#44475a T 1850 636.7 -1 66 29 -extracted \ from the file (the F 4.75 5 -Agave c 7 -#44475a T 1869 631.7 -1 37 16 -\"flattened AST\") S 5 -solid c 7 -#2c2d33 p 4 1547.5 614.5 \ 1547.5 625.5 1624.5 625.5 1624.5 614.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1581 618.7 -1 10 6 - mt  S 5 -solid c 7 -#2c2d33 p 4 1626.5 \ 614.5 1626.5 625.5 1811.5 625.5 1811.5 614.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1666 619.7 -1 40 14 - row【2】  F 4.75 5 -Agave \ c 7 -#44475a T 1706 619.7 -1 66 31 -— file modification timestamp S 5 -solid c 7 -#2c2d33 p 4 1813.5 614.5 1813.5 625.5 1961.5 \ 625.5 1961.5 614.5 F 4.75 5 -Agave c 7 -#44475a T 1843.5 618.7 -1 88 39 -ISO timestamp of last file modification F 4.75 5 -Agave \ c 7 -#44475a T 1545.5 607.7 -1 3 1 - F 4.75 5 -Agave c 7 -#44475a t 4 T 1548.5 607.7 -1 43 19 -How it's populated: F 4.75 5 -Agave \ c 7 -#44475a t 0 T 1591.5 607.7 -1 25 11 - Written by F 4.75 5 -Agave c 7 -#ff79c6 T 1616.5 607.7 -1 41 20 - astNavigator.mjs  \ F 4.75 5 -Agave c 7 -#44475a T 1657.5 607.7 -1 7 3 -via F 4.75 5 -Agave c 7 -#ff79c6 T 1664.5 607.7 -1 55 26 - cacheFlast(fnIn, \ data)  F 4.75 5 -Agave c 7 -#44475a T 1719.5 607.7 -1 41 18 -(line 1571), using F 4.75 5 -Agave c 7 -#ff79c6 T 1760.5 607.7 -1 \ 39 19 - initSqliteCache  F 4.75 5 -Agave c 7 -#44475a T 1799.5 607.7 -1 10 4 -from F 4.75 5 -Agave c 7 -#ff79c6 T 1809.5 607.7 \ -1 28 14 - sqlito.mjs  F 4.75 5 -Agave c 7 -#44475a T 1837.5 607.7 -1 12 5 -. The F 4.75 5 -Agave c 7 -#ff79c6 T 1849.5 607.7 \ -1 28 14 - data.value  F 4.75 5 -Agave c 7 -#44475a T 1877.5 607.7 -1 86 38 -is the array of fragments produced by F 4.75 5 -Agave \ c 7 -#44475a T 1545.5 602.95 -1 34 15 -extractors like F 4.75 5 -Agave c 7 -#ff79c6 T 1579.5 602.95 -1 50 24 - extractFlastMarkdown  \ F 4.75 5 -Agave c 7 -#44475a T 1629.5 602.95 -1 3 1 -, F 4.75 5 -Agave c 7 -#ff79c6 T 1632.5 602.95 -1 55 26 - extractFlastJavascript  \ F 4.75 5 -Agave c 7 -#44475a T 1687.5 602.95 -1 16 7 -, etc. F 4.75 5 -Agave c 7 -#44475a t 4 T 1703.5 602.95 -1 30 13 -Query pattern \ F 4.75 5 -Agave c 7 -#44475a t 0 T 1733.5 602.95 -1 10 4 - (in F 4.75 5 -Agave c 7 -#ff79c6 T 1743.5 602.95 -1 41 20 - actualizeNodes()\   F 4.75 5 -Agave c 7 -#44475a T 1784.5 602.95 -1 5 2 -): F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 598.2 -1 61 28 - SELECT id, value, \ mt FROM F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 593.45 -1 93 41 -cache_ast_lake_flast WHERE unixepoch(mt) F 4.75 5 -Agave c 7 -#\ ff79c6 T 1545.5 588.7 -1 30 14 ->   F 4.75 5 -Agave c 7 -#44475a T 1545.5 583.95 -1 84 37 -Only changed files (newer \ mtime) are F 4.75 5 -Agave c 7 -#44475a T 1545.5 579.2 -1 30 13 -reprocessed. F 4.75 5 -Agave c 7 -#44475a t 4 T 1575.5 579.2 \ -1 46 20 -Node value structure F 4.75 5 -Agave c 7 -#44475a t 0 T 1621.5 579.2 -1 91 40 - (each element in the JSON flast array): \ F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 574.45 -1 25 12 - { \"id\": F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 569.7 -1 46 20 -\"node-id\", \"\ dim\": F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 564.95 -1 23 11 -【\"file\", F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 560.2 -1 32 14 -\"\ listItem.0\", F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 555.45 -1 46 21 -\"property.key\"】, F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 \ 550.7 -1 19 8 -\"type\": F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 545.95 -1 95 42 -\"heading|link|code|paragraph|list|...\", F 4.75 \ 5 -Agave c 7 -#ff79c6 T 1545.5 541.2 -1 41 18 -\"code\": \"raw text F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 536.45 -1 48 21 -content\", \"\ loc\": { F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 531.7 -1 41 18 -\"line\": { \"s\": 1, F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 526.95 -1 \ 46 20 -\"e\": 3 }, \"column\": F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 522.2 -1 46 20 -{ \"s\": 1, \"e\": 80 } F 4.75 5 -Agave c 7 -#ff79c6 \ T 1545.5 517.45 -1 57 25 -}, \"symbName\": null, F 4.75 5 -Agave c 7 -#ff79c6 T 1545.5 512.7 -1 48 22 -\"symbRangeL\": null }  \ S 5 -solid c 7 -#282a36 p 4 1545.5 507.5 1545.5 509.5 1963.5 509.5 1963.5 507.5 ", fillcolor="#ffffff", fontsize=4.75, height=2.6667, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_flast_", label=<
cache_ast_lake_flast
Role: Raw flattened AST cache — one row per
file. Stores the complete AST produced
by the language-specific extractor.
ColumnHow it's populated (from actualizeNodes() )Semantics
 id  row【0】 — the file path (fn)Full filesystem path to the source file
 value  row【1】  JSON.parse(row【1】)  data.flast Full JSON array of all AST nodes
extracted from the file (the
"flattened AST")
 mt  row【2】 — file modification timestampISO timestamp of last file modification
How it's populated: Written by astNavigator.mjs via cacheFlast(fnIn, data) (line 1571), using initSqliteCache from sqlito.mjs . The data.value is the array of fragments produced by
extractors like extractFlastMarkdown , extractFlastJavascript , etc. Query pattern (in actualizeNodes() ):
 SELECT id, value, mt FROM
cache_ast_lake_flast WHERE unixepoch(mt)
> <lastSync> 

Only changed files (newer mtime) are
reprocessed. Node value structure (each element in the JSON flast array):
 { "id":
"node-id", "dim":
【"file",
"listItem.0",
"property.key"】,
"type":
"heading|link|code|paragraph|list|...",
"code": "raw text
content", "loc": {
"line": { "s": 1,
"e": 3 }, "column":
{ "s": 1, "e": 80 }
}, "symbName": null,
"symbRangeL": null } 

>, pos="1754.5,602.5", shape=plain, style=filled, width=5.8333]; db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_ -> "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_flast_" [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 10 1180.6 282.12 1183.4 285.33 1186 288.62 1188.5 292 1243.7 366.79 1159.5 431.53 \ 1224.5 498 1303.9 579.25 1426.9 607.07 1534.3 613.85 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 1544.3 614.43 1534.06 618.34 1539.31 614.14 1534.32 613.85 1534.32 \ 613.85 1534.32 613.85 1539.31 614.14 1534.58 609.36 1544.3 614.43 ", arrowhead=open, arrowsize=1.0, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_👉 db_tables__\ cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__cache_ast_\ lake_flast_", pos="e,1544.3,614.43 1180.6,282.12 1183.4,285.33 1186,288.62 1188.5,292 1243.7,366.79 1159.5,431.53 1224.5,498 1303.9,579.25 1426.9,607.07 \ 1534.3,613.85", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_" [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 1913 488.5 1596 488.5 1596 88.5 1913 88.5 ", _ldraw_="F 4.75 5 -Agave c 7 -#44475a t 1 T 1597.5 484.7 -1 46 20 -cache_ast_lake_nodes F 4.75 5 -Agave c 7 -#44475a t 0 T 1597.5 479.95 \ -1 3 1 - F 4.75 5 -Agave c 7 -#44475a t 4 T 1600.5 479.95 -1 12 5 -Role: F 4.75 5 -Agave c 7 -#44475a t 0 T 1612.5 479.95 -1 88 \ 41 - Individual AST node storage — one row F 4.75 5 -Agave c 7 -#44475a T 1597.5 475.2 -1 68 30 -per symbolic node. Produced \ by F 4.75 5 -Agave c 7 -#ff79c6 T 1665.5 475.2 -1 41 20 - normalizeNodes()  F 4.75 5 -Agave c 7 -#44475a T 1706.5 475.2 -1 5 2 \ -in F 4.75 5 -Agave c 7 -#ff79c6 T 1711.5 475.2 -1 41 20 - actualizeNodes()  F 4.75 5 -Agave c 7 -#44475a T 1752.5 475.2 -1 88 \ 39 -(ast-lake.mjs:183-266), which extracts F 4.75 5 -Agave c 7 -#44475a T 1597.5 470.45 -1 10 4 -only F 4.75 5 -Agave c 7 -#ff79c6 \ T 1607.5 470.45 -1 34 17 - symbolicTypes  F 4.75 5 -Agave c 7 -#44475a T 1641.5 470.45 -1 57 25 -(heading, link, comment, F 4.75 \ 5 -Agave c 7 -#44475a T 1597.5 465.7 -1 86 38 -FunctionDeclaration, Identifier) from F 4.75 5 -Agave c 7 -#44475a T 1707.5 460.95 \ -1 23 10 -the flast. S 5 -solid c 7 -#2c2d33 p 4 1599.5 439.5 1599.5 455.5 1625.5 455.5 1625.5 439.5 F 4.75 5 -Agave c 7 -#44475a \ T 1605.5 446.2 -1 14 6 -Column S 5 -solid c 7 -#2c2d33 p 4 1627.5 439.5 1627.5 455.5 1710.5 455.5 1710.5 439.5 F 4.75 5 -Agave c \ 7 -#44475a T 1644 448.7 -1 43 19 -How it's populated F 4.75 5 -Agave c 7 -#44475a T 1644 443.7 -1 50 22 -(ast-lake.mjs:516-561) \ S 5 -solid c 7 -#2c2d33 p 4 1712.5 439.5 1712.5 455.5 1910.5 455.5 1910.5 439.5 F 4.75 5 -Agave c 7 -#44475a T 1801 446.2 -1 21 \ 9 -Semantics S 5 -solid c 7 -#2c2d33 p 4 1599.5 426.5 1599.5 437.5 1625.5 437.5 1625.5 426.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1607.5 \ 430.7 -1 10 6 - id  S 5 -solid c 7 -#2c2d33 p 4 1627.5 426.5 1627.5 437.5 1710.5 437.5 1710.5 426.5 F 4.75 5 -Agave c 7 -#ff79c6 \ T 1636 430.7 -1 66 31 - `${node.fn}:${node.offset}`  S 5 -solid c 7 -#2c2d33 p 4 1712.5 426.5 1712.5 437.5 1910.5 437.5 1910.5 \ 426.5 F 4.75 5 -Agave c 7 -#44475a T 1752.5 431.7 -1 66 31 -File path + offset position → F 4.75 5 -Agave c 7 -#ff79c6 T 1818.5 \ 431.7 -1 52 25 - buildNodeAbsoluteId()  S 5 -solid c 7 -#2c2d33 p 4 1599.5 408.5 1599.5 424.5 1625.5 424.5 1625.5 408.5 F 4.75 \ 5 -Agave c 7 -#ff79c6 T 1604.5 415.2 -1 16 9 - value  S 5 -solid c 7 -#2c2d33 p 4 1627.5 408.5 1627.5 424.5 1710.5 424.5 1710.5 \ 408.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1644 415.2 -1 50 24 - JSON.stringify(node)  S 5 -solid c 7 -#2c2d33 p 4 1712.5 408.5 1712.5 \ 424.5 1910.5 424.5 1910.5 408.5 F 4.75 5 -Agave c 7 -#44475a T 1773 417.7 -1 77 34 -Full normalized node as JSON (see F 4.75 5 \ -Agave c 7 -#44475a T 1793 412.7 -1 37 16 -structure below) S 5 -solid c 7 -#2c2d33 p 4 1599.5 390.5 1599.5 406.5 1625.5 406.5 1625.5 \ 390.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1607.5 397.2 -1 10 6 - mt  S 5 -solid c 7 -#2c2d33 p 4 1627.5 390.5 1627.5 406.5 1710.5 406.5 \ 1710.5 390.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1658.5 397.2 -1 21 11 - node.mt  S 5 -solid c 7 -#2c2d33 p 4 1712.5 390.5 1712.5 406.5 \ 1910.5 406.5 1910.5 390.5 F 4.75 5 -Agave c 7 -#44475a T 1772 399.7 -1 79 35 -Modification time (symbMt from git F 4.75 5 -Agave \ c 7 -#44475a T 1787.5 394.7 -1 48 21 -blame, or file mtime) S 5 -solid c 7 -#2c2d33 p 4 1599.5 377.5 1599.5 388.5 1625.5 388.5 1625.5 \ 377.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1606.5 381.7 -1 12 7 - sem  S 5 -solid c 7 -#2c2d33 p 4 1627.5 377.5 1627.5 388.5 1710.5 \ 388.5 1710.5 377.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1656.5 381.7 -1 25 13 - node.type  S 5 -solid c 7 -#2c2d33 p 4 1712.5 377.5 \ 1712.5 388.5 1910.5 388.5 1910.5 377.5 F 4.75 5 -Agave c 7 -#44475a T 1717.5 382.7 -1 23 10 -Node type: F 4.75 5 -Agave c 7 -#ff79c6 \ T 1740.5 382.7 -1 25 13 - \"heading\"  F 4.75 5 -Agave c 7 -#44475a T 1765.5 382.7 -1 3 1 -, F 4.75 5 -Agave c 7 -#ff79c6 T 1768.5 \ 382.7 -1 19 10 - \"link\"  F 4.75 5 -Agave c 7 -#44475a T 1787.5 382.7 -1 3 1 -, F 4.75 5 -Agave c 7 -#ff79c6 T 1790.5 382.7 -1 \ 25 13 - \"comment\"  F 4.75 5 -Agave c 7 -#44475a T 1815.5 382.7 -1 3 1 -, F 4.75 5 -Agave c 7 -#ff79c6 T 1818.5 382.7 -1 52 25 \ - \"FunctionDeclaration\"  F 4.75 5 -Agave c 7 -#44475a T 1870.5 382.7 -1 3 1 -, F 4.75 5 -Agave c 7 -#ff79c6 T 1873.5 382.7 -1 \ 32 16 - \"Identifier\"  S 5 -solid c 7 -#2c2d33 p 4 1599.5 364.5 1599.5 375.5 1625.5 375.5 1625.5 364.5 F 4.75 5 -Agave c 7 -#ff79c6 \ T 1605.5 368.7 -1 14 8 - num1  S 5 -solid c 7 -#2c2d33 p 4 1627.5 364.5 1627.5 375.5 1710.5 375.5 1710.5 364.5 F 4.75 5 -Agave \ c 7 -#ff79c6 T 1638 368.7 -1 62 24 - node.position【0】  S 5 -solid c 7 -#2c2d33 p 4 1712.5 364.5 1712.5 375.5 1910.5 375.5 \ 1910.5 364.5 F 4.75 5 -Agave c 7 -#44475a T 1770.5 368.7 -1 82 36 -Line number in source file (1-based) S 5 -solid c 7 -#2c2d33 \ p 4 1599.5 351.5 1599.5 362.5 1625.5 362.5 1625.5 351.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1605.5 355.7 -1 14 8 - num2  S 5 -solid \ c 7 -#2c2d33 p 4 1627.5 351.5 1627.5 362.5 1710.5 362.5 1710.5 351.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1638 355.7 -1 62 24 - node.position【1】  \ S 5 -solid c 7 -#2c2d33 p 4 1712.5 351.5 1712.5 362.5 1910.5 362.5 1910.5 351.5 F 4.75 5 -Agave c 7 -#44475a T 1768.5 355.7 -1 86 \ 38 -Column number in source file (1-based) S 5 -solid c 7 -#2c2d33 p 4 1599.5 323.5 1599.5 349.5 1625.5 349.5 1625.5 323.5 F 4.75 \ 5 -Agave c 7 -#ff79c6 T 1606.5 335.2 -1 12 7 - ref  S 5 -solid c 7 -#2c2d33 p 4 1627.5 323.5 1627.5 349.5 1710.5 349.5 1710.5 \ 323.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1644 335.2 -1 50 24 - buildNodeRefId(node)  S 5 -solid c 7 -#2c2d33 p 4 1712.5 323.5 1712.5 \ 349.5 1910.5 349.5 1910.5 323.5 F 4.75 5 -Agave c 7 -#44475a T 1767.5 342.7 -1 75 33 -For headings: last trail segment F 4.75 5 \ -Agave c 7 -#44475a T 1767.5 337.7 -1 88 39 -(heading text). For links: nomen (link F 4.75 5 -Agave c 7 -#44475a T 1767.5 332.7 \ -1 86 38 -label). Defines the short ref used in F 4.75 5 -Agave c 7 -#44475a T 1794.5 327.7 -1 34 15 -voting queries. S 5 -solid \ c 7 -#2c2d33 p 4 1599.5 295.5 1599.5 321.5 1625.5 321.5 1625.5 295.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1605.5 307.2 -1 14 8 - body  \ S 5 -solid c 7 -#2c2d33 p 4 1627.5 295.5 1627.5 321.5 1710.5 321.5 1710.5 295.5 F 4.75 5 -Agave c 7 -#ff79c6 T 1632.5 309.7 -1 73 \ 33 - node.outerCode || node.code || F 4.75 5 -Agave c 7 -#ff79c6 T 1665.5 304.7 -1 7 4 -''  S 5 -solid c 7 -#2c2d33 p 4 1712.5 \ 295.5 1712.5 321.5 1910.5 321.5 1910.5 295.5 F 4.75 5 -Agave c 7 -#44475a T 1769.5 314.7 -1 79 35 -Full text content of the node. \ For F 4.75 5 -Agave c 7 -#44475a T 1769.5 309.7 -1 84 37 -headings: the entire heading subtree F 4.75 5 -Agave c 7 -#44475a T \ 1769.5 304.7 -1 79 35 -text. For links: the markdown link F 4.75 5 -Agave c 7 -#44475a T 1803.5 299.7 -1 16 7 -syntax. F 4.75 5 \ -Agave c 7 -#44475a T 1597.5 288.7 -1 3 1 - F 4.75 5 -Agave c 7 -#44475a t 4 T 1600.5 288.7 -1 70 31 -Normalized node value structure \ F 4.75 5 -Agave c 7 -#44475a t 0 T 1670.5 288.7 -1 39 17 - (the JSON in the F 4.75 5 -Agave c 7 -#ff79c6 T 1709.5 288.7 -1 16 9 \ - value  F 4.75 5 -Agave c 7 -#44475a T 1725.5 288.7 -1 19 8 -column): F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 283.95 -1 25 12 - { \"\ fn\": F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 279.2 -1 100 44 -\"/home/.../repo/repolero/paper/file.mdd\", F 4.75 5 -Agave c 7 -#\ ff79c6 T 1597.5 274.45 -1 21 9 -\"trail\": F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 269.7 -1 48 22 -【\"getting-started\", F 4.75 5 \ -Agave c 7 -#ff79c6 T 1597.5 264.95 -1 46 21 -\"installation\"】, F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 260.2 -1 48 21 -\"type\": \"\ heading\", F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 255.45 -1 21 9 -\"nomen\": F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 250.7 -1 41 18 \ -\"Installation\", F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 245.95 -1 28 12 -\"code\": \"## F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 241.2 \ -1 39 17 -Installation\", F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 236.45 -1 46 20 -\"symbName\": null, F 4.75 5 -Agave c 7 -#ff79c6 \ T 1597.5 231.7 -1 30 13 -\"symbBlame\": F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 226.95 -1 34 16 -【\"abc123def\", F 4.75 5 -Agave c \ 7 -#ff79c6 T 1597.5 222.2 -1 39 18 -\"456ghi789\"】, F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 217.45 -1 43 19 -\"outerCode\": \"full \ F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 212.7 -1 46 20 -subtree text...\", F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 207.95 -1 57 27 \ -\"position\": 【42, 1】, F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 203.2 -1 61 29 -\"lineRange\": 【42, 85】, F 4.75 5 -Agave \ c 7 -#ff79c6 T 1597.5 198.45 -1 37 16 -\"offset\": 42, F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 193.7 -1 23 10 -\"symbMt\": F 4.75 \ 5 -Agave c 7 -#ff79c6 T 1597.5 188.95 -1 59 26 -\"2025-06-15T10:30:00Z\", F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 184.2 -1 28 12 \ -\"symbUser\": F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 179.45 -1 55 24 -\"author@example.com\", F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 \ 174.7 -1 14 6 -\"mt\": F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 169.95 -1 57 26 -\"2025-06-15T10:30:00Z\" }  F 4.75 5 -Agave c 7 -#44475a \ T 1597.5 165.2 -1 3 1 - F 4.75 5 -Agave c 7 -#44475a t 4 T 1600.5 165.2 -1 57 25 -Key normalization details F 4.75 5 -Agave c 7 \ -#44475a t 0 T 1657.5 165.2 -1 14 6 - (from F 4.75 5 -Agave c 7 -#ff79c6 T 1671.5 165.2 -1 41 20 - normalizeNodes()  F 4.75 5 \ -Agave c 7 -#44475a T 1712.5 165.2 -1 48 21 -at ast-lake.mjs:183): F 4.75 5 -Agave c 7 -#44475a T 1597.5 158.7 -1 7 6 -•  F \ 4.75 5 -Agave c 7 -#44475a t 4 T 1604.5 158.7 -1 19 8 -headings F 4.75 5 -Agave c 7 -#44475a t 0 T 1623.5 158.7 -1 5 2 - : F 4.75 \ 5 -Agave c 7 -#ff79c6 T 1628.5 158.7 -1 41 20 - processHeading()  F 4.75 5 -Agave c 7 -#44475a T 1669.5 158.7 -1 93 41 -extracts \ level and pure text; breadcrumb F 4.75 5 -Agave c 7 -#44475a T 1597.5 153.95 -1 52 23 -trail tracks hierarchy; F 4.75 5 -Agave \ c 7 -#ff79c6 T 1649.5 153.95 -1 59 28 - currentLevel > lastLevel  F 4.75 5 -Agave c 7 -#44475a T 1708.5 153.95 -1 16 7 -pushes, \ F 4.75 5 -Agave c 7 -#ff79c6 T 1724.5 153.95 -1 61 29 - currentLevel <= lastLevel  F 4.75 5 -Agave c 7 -#44475a T 1785.5 153.95 \ -1 10 4 -pops F 4.75 5 -Agave c 7 -#44475a T 1597.5 149.7 -1 7 6 -•  F 4.75 5 -Agave c 7 -#44475a t 4 T 1604.5 149.7 -1 12 5 \ -links F 4.75 5 -Agave c 7 -#44475a t 0 T 1616.5 149.7 -1 5 2 - : F 4.75 5 -Agave c 7 -#ff79c6 T 1621.5 149.7 -1 48 23 - parseMarkdownLink()\   F 4.75 5 -Agave c 7 -#44475a T 1669.5 149.7 -1 19 8 -extracts F 4.75 5 -Agave c 7 -#ff79c6 T 1688.5 149.7 -1 53 20 - 【label】(\ url)  F 4.75 5 -Agave c 7 -#44475a T 1741.5 149.7 -1 3 1 -; F 4.75 5 -Agave c 7 -#ff79c6 T 1744.5 149.7 -1 25 13 - outerCode  \ F 4.75 5 -Agave c 7 -#44475a T 1769.5 149.7 -1 46 20 -= url; nomen = label F 4.75 5 -Agave c 7 -#44475a T 1597.5 144.7 -1 7 6 -•  \ F 4.75 5 -Agave c 7 -#44475a t 4 T 1604.5 144.7 -1 21 9 -git blame F 4.75 5 -Agave c 7 -#44475a t 0 T 1625.5 144.7 -1 5 2 - : F \ 4.75 5 -Agave c 7 -#ff79c6 T 1630.5 144.7 -1 25 13 - symbBlame  F 4.75 5 -Agave c 7 -#44475a T 1655.5 144.7 -1 79 35 -array of \ commit hashes for lines in F 4.75 5 -Agave c 7 -#ff79c6 T 1734.5 144.7 -1 28 14 - symbRangeL  F 4.75 5 -Agave c 7 -#44475a T 1762.5 \ 144.7 -1 3 1 -; F 4.75 5 -Agave c 7 -#ff79c6 T 1765.5 144.7 -1 19 10 - symbMt  F 4.75 5 -Agave c 7 -#44475a T 1784.5 144.7 -1 \ 59 26 -= most recent blame mtime; F 4.75 5 -Agave c 7 -#ff79c6 T 1843.5 144.7 -1 23 12 - symbUser  F 4.75 5 -Agave c 7 -#44475a \ T 1866.5 144.7 -1 46 20 -= most recent author F 4.75 5 -Agave c 7 -#44475a T 1597.5 139.7 -1 59 29 -• Only nodes with types in \ F 4.75 5 -Agave c 7 -#ff79c6 T 1656.5 139.7 -1 34 17 - symbolicTypes  F 4.75 5 -Agave c 7 -#44475a T 1690.5 139.7 -1 88 39 -are \ kept; all others (paragraph, list, F 4.75 5 -Agave c 7 -#44475a T 1597.5 134.95 -1 91 40 -code without heading context, etc.) are \ F 4.75 5 -Agave c 7 -#44475a T 1674 130.2 -1 28 12 -filtered out F 4.75 5 -Agave c 7 -#44475a T 1597.5 123.7 -1 3 1 - F 4.75 5 \ -Agave c 7 -#44475a t 4 T 1600.5 123.7 -1 30 13 -Query pattern F 4.75 5 -Agave c 7 -#44475a t 0 T 1630.5 123.7 -1 46 20 - (voting \ dashboard): F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 118.95 -1 73 33 - SELECT n.id, n.body, n.num1 as F 4.75 5 -Agave c 7 -#ff79c6 \ T 1597.5 114.2 -1 57 25 -headingLevel, r.ref FROM F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 109.45 -1 77 34 -cache_ast_lake_nodes n \ INNER JOIN F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 104.7 -1 84 37 -cache_ast_lake_nodes_ref r USING(id) F 4.75 5 -Agave c 7 -#ff79c6 \ T 1597.5 99.95 -1 82 36 -INNER JOIN repo_voting v ON v.ref = F 4.75 5 -Agave c 7 -#ff79c6 T 1597.5 95.2 -1 68 31 -r.ref WHERE n.sem = '\ heading'  S 5 -solid c 7 -#282a36 p 4 1597.5 89.5 1597.5 91.5 1912.5 91.5 1912.5 89.5 ", fillcolor="#ffffff", fontsize=4.75, height=5.5556, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_", label=<
cache_ast_lake_nodes
Role: Individual AST node storage — one row
per symbolic node. Produced by normalizeNodes() in actualizeNodes() (ast-lake.mjs:183-266), which extracts
only symbolicTypes (heading, link, comment,
FunctionDeclaration, Identifier) from
the flast.
ColumnHow it's populated
(ast-lake.mjs:516-561)
Semantics
 id  `${node.fn}:${node.offset}` File path + offset position → buildNodeAbsoluteId() 
 value  JSON.stringify(node) Full normalized node as JSON (see
structure below)
 mt  node.mt Modification time (symbMt from git
blame, or file mtime)
 sem  node.type Node type: "heading" , "link" , "comment" , "FunctionDeclaration" , "Identifier" 
 num1  node.position【0】 Line number in source file (1-based)
 num2  node.position【1】 Column number in source file (1-based)
 ref  buildNodeRefId(node) For headings: last trail segment
(heading text). For links: nomen (link
label). Defines the short ref used in
voting queries.
 body  node.outerCode || node.code ||
'' 
Full text content of the node. For
headings: the entire heading subtree
text. For links: the markdown link
syntax.
Normalized node value structure (the JSON in the value column):
 { "fn":
"/home/.../repo/repolero/paper/file.mdd",
"trail":
【"getting-started",
"installation"】,
"type": "heading",
"nomen":
"Installation",
"code": "##
Installation",
"symbName": null,
"symbBlame":
【"abc123def",
"456ghi789"】,
"outerCode": "full
subtree text...",
"position": 【42, 1】,
"lineRange": 【42, 85】,
"offset": 42,
"symbMt":
"2025-06-15T10:30:00Z",
"symbUser":
"author@example.com",
"mt":
"2025-06-15T10:30:00Z" } 

Key normalization details (from normalizeNodes() at ast-lake.mjs:183):
•  headings : processHeading() extracts level and pure text; breadcrumb
trail tracks hierarchy; currentLevel > lastLevel pushes, currentLevel <= lastLevel pops
•  links : parseMarkdownLink() extracts 【label】(url) ; outerCode = url; nomen = label
•  git blame : symbBlame array of commit hashes for lines in symbRangeL ; symbMt = most recent blame mtime; symbUser = most recent author
• Only nodes with types in symbolicTypes are kept; all others (paragraph, list,
code without heading context, etc.) are
filtered out
Query pattern (voting dashboard):
 SELECT n.id, n.body, n.num1 as
headingLevel, r.ref FROM
cache_ast_lake_nodes n INNER JOIN
cache_ast_lake_nodes_ref r USING(id)
INNER JOIN repo_voting v ON v.ref =
r.ref WHERE n.sem = 'heading' 

>, pos="1754.5,288.5", shape=plain, style=filled, width=4.4028]; db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_ -> "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_" [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 4 1188.7 208.42 1315.3 226.48 1470.2 248.58 1585.7 265.06 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 1595.7 266.49 1585.16 269.53 1590.75 265.78 1585.8 265.07 1585.8 \ 265.07 1585.8 265.07 1590.75 265.78 1586.44 260.62 1595.7 266.49 ", arrowhead=open, arrowsize=1.0, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_👉 db_tables__\ cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__cache_ast_\ lake_nodes_", pos="e,1595.7,266.49 1188.7,208.42 1315.3,226.48 1470.2,248.58 1585.7,265.06", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_ref_" [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2274.5 70 1234.5 70 1234.5 55 2274.5 55 ", _ldraw_="F 14 5 -Agave c 7 -#44475a T 1754.5 58.8 0 1040 154 -db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_\ ref____cache_ast_lake_nodes_backup____db_tables__cache_ast_lake_nodes_ref_ ", fillcolor="#ffffff", height=0.20833, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_ref_", pos="1754.5,62.5", shape=plain, style=filled, width=14.444]; db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_ -> "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_ref_" [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 7 1188.7 88.11 1200.7 85.03 1212.7 82.28 1224.5 80 1350.5 55.64 1496.4 52.79 \ 1603 55.24 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 1613.2 55.49 1603.09 59.74 1608.2 55.37 1603.2 55.25 1603.2 55.25 \ 1603.2 55.25 1608.2 55.37 1603.31 50.75 1613.2 55.49 ", arrowhead=open, arrowsize=1.0, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_👉 db_tables__\ cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__cache_ast_\ lake_nodes_ref_", pos="e,1613.2,55.494 1188.7,88.111 1200.7,85.025 1212.7,82.284 1224.5,80 1350.5,55.637 1496.4,52.792 1603,55.241", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_backup_" [_draw_="S 17 -setlinewidth(0.8) c 9 -#fffffe00 C 7 -#ffffff P 4 2284.5 37 1224.5 37 1224.5 22 2284.5 22 ", _ldraw_="F 14 5 -Agave c 7 -#44475a T 1754.5 25.8 0 1060 157 -db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_\ ref____cache_ast_lake_nodes_backup____db_tables__cache_ast_lake_nodes_backup_ ", fillcolor="#ffffff", height=0.20833, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_backup_", pos="1754.5,29.5", shape=plain, style=filled, width=14.722]; db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_ -> "db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__\ cache_ast_lake_nodes_backup_" [_draw_="S 17 -setlinewidth(0.8) S 6 -dashed c 7 -#2c2d33 B 7 1169.5 69.94 1195.9 57.23 1216.5 47.99 1224.5 46 1377.9 7.71 1564 13.66 1669.6 \ 21.68 ", _hdraw_="S 17 -setlinewidth(0.8) S 5 -solid c 7 -#2c2d33 C 7 -#2c2d33 P 9 1679.9 22.48 1669.58 26.19 1674.92 22.09 1669.93 21.7 1669.93 21.7 \ 1669.93 21.7 1674.92 22.09 1670.28 17.22 1679.9 22.48 ", arrowhead=open, arrowsize=1.0, href="#db_tables__cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup_👉 db_tables__\ cache_ast_lake_flast____cache_ast_lake_nodes____cache_ast_lake_nodes_ref____cache_ast_lake_nodes_backup____db_tables__cache_ast_\ lake_nodes_backup_", pos="e,1679.9,22.482 1169.5,69.938 1195.9,57.229 1216.5,47.989 1224.5,46 1377.9,7.715 1564,13.657 1669.6,21.676", reverse=false, style=dashed, tooltip="-> isAnInputTo", type=isAnInputTo]; } }