Repository navigation
Commit cbbd28b
viewer: make addresses, tables and charts usable for analysis (#6)
* cli: name the missing snapshot and the stray key in errors
A dataset in an ingest project whose snapshot apply does not write (a
lookup table filled in by a script afterwards) passed validation, since
ingest snapshots appear at apply time, and then failed the build with an
internal error carrying the stat call's ENOENT. It is now a validation
error naming the dataset, its path and what to do.
Schema errors for an additional property now name the key. "must NOT
have additional properties" alone sent a reader hunting; the key usually
gives the cause away, as when an unquoted comma in a flow-mapping title
splits it into a second key. The missing-snapshot pointer for
dataset-only projects also narrows from /datasets to the entry.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* viewer: copy, explorer links, column labels, SQL, CSV and filter
A dashboard over wallets, contracts and transactions could not be read
or checked: every hex value was shortened with the full one only in a
tooltip, nothing linked anywhere, headers were SQL aliases, and an
unexplained dot marked amount columns.
- Every hex cell has a copy button for the full value; a panel's
columns.<name>.full shows it unshortened.
- chain_sources[].explorer_url links address, transaction and block
cells. Addresses are detected from their values, tx_hash and
block_number by name; a 32-byte value is never guessed to be a
transaction, since it may be any id.
- columns.<name>.label, .description and .kind on a panel. A header
with a description is underlined and explains itself on hover; an
amount column explains its decimals. The dot is gone.
- Each panel links to its SQL in the source bundle, tables and charts
download their rows as CSV with exact values, and a table over ten
rows gets a filter.
- Bar charts with up to 30 bars label every bar, tilted when crowded;
past that the axis is a scale and labels thin out as before.
- A KPI beside a table or chart keeps its own height instead of
stretching into an empty card; two KPIs side by side still level.
explorer_url and the SQL paths are written into the dashboard doc, not
release.json, so they count toward the content digest. Releases built
before this render as they did, without the new links.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* docs: list panel columns and the layout rules
The Presentation paragraph listed the panel options without columns, and
capabilities did not say how bar labels and KPI height now behave.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* viewer: link only web explorers and the release's own SQL
Validation holds explorer_url to http(s), but the viewer renders whatever
dashboard JSON it is served, and a release's JSON can be edited after
the build: a javascript: base would have become a clickable script.
explorerHref now refuses a base that is not http(s), and a panel's SQL
link renders only for a path inside the release's source/ directory.
security.md says what the viewer turns into links and why a cell value
cannot carry a scheme into one.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* docs: viewer/dist is built, not committed
compatibility.md still described the bundle as committed under
viewer/dist/, which .gitignore has excluded since the bundle and its
sources could drift. Match the README: pnpm build produces it, and
build refuses to write a release without it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>1 parent a2f2022 commit cbbd28b
15 files changed
Lines changed: 971 additions & 118 deletions
File tree
- docs
- schemas
- src
- project
- publish
- tests
- cli
- viewer
- viewer/src
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
| 81 | + | |
81 | 82 | | |
82 | 83 | | |
83 | 84 | | |
| |||
150 | 151 | | |
151 | 152 | | |
152 | 153 | | |
153 | | - | |
154 | | - | |
155 | | - | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
156 | 157 | | |
157 | 158 | | |
158 | 159 | | |
159 | 160 | | |
160 | 161 | | |
161 | 162 | | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
162 | 187 | | |
163 | 188 | | |
164 | 189 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
| 37 | + | |
38 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
39 | 43 | | |
40 | 44 | | |
41 | 45 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
53 | | - | |
54 | | - | |
| 53 | + | |
| 54 | + | |
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
60 | | - | |
| 60 | + | |
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
53 | 64 | | |
54 | 65 | | |
55 | 66 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
107 | 107 | | |
108 | 108 | | |
109 | 109 | | |
110 | | - | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
111 | 128 | | |
112 | 129 | | |
113 | 130 | | |
| |||
132 | 149 | | |
133 | 150 | | |
134 | 151 | | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
135 | 158 | | |
136 | 159 | | |
137 | 160 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
32 | 41 | | |
33 | 42 | | |
34 | 43 | | |
| |||
37 | 46 | | |
38 | 47 | | |
39 | 48 | | |
| 49 | + | |
40 | 50 | | |
41 | 51 | | |
42 | 52 | | |
| |||
61 | 71 | | |
62 | 72 | | |
63 | 73 | | |
| 74 | + | |
64 | 75 | | |
65 | 76 | | |
66 | 77 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
34 | 40 | | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
| 41 | + | |
| 42 | + | |
41 | 43 | | |
42 | 44 | | |
43 | 45 | | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
44 | 61 | | |
45 | 62 | | |
46 | 63 | | |
| |||
66 | 83 | | |
67 | 84 | | |
68 | 85 | | |
69 | | - | |
70 | | - | |
| 86 | + | |
| 87 | + | |
71 | 88 | | |
72 | 89 | | |
73 | 90 | | |
| |||
154 | 171 | | |
155 | 172 | | |
156 | 173 | | |
157 | | - | |
| 174 | + | |
158 | 175 | | |
159 | 176 | | |
160 | 177 | | |
161 | 178 | | |
162 | 179 | | |
163 | 180 | | |
164 | 181 | | |
165 | | - | |
| 182 | + | |
166 | 183 | | |
167 | 184 | | |
168 | 185 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
150 | 150 | | |
151 | 151 | | |
152 | 152 | | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
153 | 168 | | |
154 | 169 | | |
155 | 170 | | |
| |||
307 | 322 | | |
308 | 323 | | |
309 | 324 | | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
310 | 337 | | |
311 | 338 | | |
312 | 339 | | |
| |||
315 | 342 | | |
316 | 343 | | |
317 | 344 | | |
| 345 | + | |
318 | 346 | | |
319 | 347 | | |
320 | 348 | | |
321 | 349 | | |
| 350 | + | |
322 | 351 | | |
323 | 352 | | |
324 | 353 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
54 | 57 | | |
55 | 58 | | |
56 | 59 | | |
| |||
63 | 66 | | |
64 | 67 | | |
65 | 68 | | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
66 | 143 | | |
67 | 144 | | |
68 | 145 | | |
| |||
0 commit comments