@crvouga/atlas 1.14.0 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/dist/reports/src/evidence-detail.d.ts +19 -0
  3. package/dist/reports/src/evidence-detail.js +31 -4
  4. package/dist/reports/src/evidence-types.d.ts +2 -2
  5. package/dist/reports/src/layer-merge.js +4 -3
  6. package/dist/reports/src/layer-store.d.ts +1 -1
  7. package/dist/reports/src/layer-store.js +4 -2
  8. package/dist/reports/src/layer-types.d.ts +2 -0
  9. package/dist/reports/src/run-compare.d.ts +182 -0
  10. package/dist/reports/src/run-compare.js +329 -0
  11. package/dist/reports/src/test-catalog.d.ts +8 -0
  12. package/dist/reports/src/test-catalog.js +14 -1
  13. package/dist/schema/src/api.d.ts +4 -0
  14. package/dist/schema/src/api.js +7 -3
  15. package/docs/reference/reports.md +354 -3
  16. package/docs/ui.md +30 -1
  17. package/llms-full.txt +30 -1
  18. package/package.json +1 -1
  19. package/packages/schema/schemas/effective-delta.schema.json +2 -2
  20. package/packages/schema/schemas/effective-evidence.schema.json +2 -2
  21. package/packages/schema/schemas/evidence-page.schema.json +1 -1
  22. package/packages/schema/schemas/layer-rows.schema.json +1 -1
  23. package/packages/schema/schemas/report-run.schema.json +25 -3
  24. package/packages/schema/schemas/report-runs.schema.json +1 -1
  25. package/packages/schema/schemas/review-collection.schema.json +1 -1
  26. package/packages/schema/schemas/review-manifest.schema.json +1 -1
  27. package/packages/schema/schemas/test-catalog.schema.json +1 -1
  28. package/packages/schema/schemas/test-history.schema.json +2 -2
  29. package/packages/server/openapi.json +39 -17
  30. package/packages/visualizer/src/explorer/ComparePair.tsx +597 -0
  31. package/packages/visualizer/src/explorer/CompareView.tsx +340 -0
  32. package/packages/visualizer/src/explorer/Explorer.tsx +6 -2
  33. package/packages/visualizer/src/explorer/RunsView.tsx +10 -0
  34. package/packages/visualizer/src/explorer/playlist.tsx +1 -1
  35. package/packages/visualizer/src/explorer/search.ts +15 -3
@@ -194,7 +194,7 @@
194
194
  },
195
195
  "available": {
196
196
  "type": "boolean",
197
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
197
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
198
198
  },
199
199
  "scope": {
200
200
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -219,7 +219,7 @@
219
219
  },
220
220
  "available": {
221
221
  "type": "boolean",
222
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
222
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
223
223
  },
224
224
  "scope": {
225
225
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -975,7 +975,7 @@
975
975
  },
976
976
  "available": {
977
977
  "type": "boolean",
978
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
978
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
979
979
  },
980
980
  "scope": {
981
981
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -273,7 +273,7 @@
273
273
  },
274
274
  "available": {
275
275
  "type": "boolean",
276
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
276
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
277
277
  },
278
278
  "scope": {
279
279
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -926,7 +926,7 @@
926
926
  },
927
927
  "available": {
928
928
  "type": "boolean",
929
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
929
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
930
930
  },
931
931
  "scope": {
932
932
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -10728,7 +10728,7 @@
10728
10728
  },
10729
10729
  "available": {
10730
10730
  "type": "boolean",
10731
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
10731
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
10732
10732
  },
10733
10733
  "scope": {
10734
10734
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -11207,7 +11207,7 @@
11207
11207
  },
11208
11208
  "available": {
11209
11209
  "type": "boolean",
11210
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
11210
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
11211
11211
  },
11212
11212
  "scope": {
11213
11213
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -11721,7 +11721,7 @@
11721
11721
  },
11722
11722
  "available": {
11723
11723
  "type": "boolean",
11724
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
11724
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
11725
11725
  },
11726
11726
  "scope": {
11727
11727
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -12200,7 +12200,7 @@
12200
12200
  },
12201
12201
  "available": {
12202
12202
  "type": "boolean",
12203
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
12203
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
12204
12204
  },
12205
12205
  "scope": {
12206
12206
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -15608,7 +15608,7 @@
15608
15608
  },
15609
15609
  "available": {
15610
15610
  "type": "boolean",
15611
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
15611
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
15612
15612
  },
15613
15613
  "scope": {
15614
15614
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -16102,7 +16102,7 @@
16102
16102
  },
16103
16103
  "available": {
16104
16104
  "type": "boolean",
16105
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
16105
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
16106
16106
  },
16107
16107
  "scope": {
16108
16108
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -18712,7 +18712,7 @@
18712
18712
  },
18713
18713
  "available": {
18714
18714
  "type": "boolean",
18715
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
18715
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
18716
18716
  },
18717
18717
  "scope": {
18718
18718
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -19194,7 +19194,7 @@
19194
19194
  },
19195
19195
  "available": {
19196
19196
  "type": "boolean",
19197
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
19197
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
19198
19198
  },
19199
19199
  "scope": {
19200
19200
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -19836,7 +19836,7 @@
19836
19836
  },
19837
19837
  "available": {
19838
19838
  "type": "boolean",
19839
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
19839
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
19840
19840
  },
19841
19841
  "scope": {
19842
19842
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -21065,7 +21065,7 @@
21065
21065
  },
21066
21066
  "available": {
21067
21067
  "type": "boolean",
21068
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
21068
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
21069
21069
  },
21070
21070
  "scope": {
21071
21071
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -22214,7 +22214,7 @@
22214
22214
  },
22215
22215
  "available": {
22216
22216
  "type": "boolean",
22217
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
22217
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
22218
22218
  },
22219
22219
  "scope": {
22220
22220
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -22867,7 +22867,7 @@
22867
22867
  },
22868
22868
  "available": {
22869
22869
  "type": "boolean",
22870
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
22870
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
22871
22871
  },
22872
22872
  "scope": {
22873
22873
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -23897,7 +23897,7 @@
23897
23897
  "type": "integer",
23898
23898
  "minimum": 0,
23899
23899
  "maximum": 9007199254740991,
23900
- "description": "References that name no bytes"
23900
+ "description": "References that name no bytes, or bytes the layer does not hold"
23901
23901
  }
23902
23902
  },
23903
23903
  "required": [
@@ -24356,7 +24356,7 @@
24356
24356
  },
24357
24357
  "available": {
24358
24358
  "type": "boolean",
24359
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
24359
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
24360
24360
  },
24361
24361
  "scope": {
24362
24362
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -25649,7 +25649,7 @@
25649
25649
  "type": "integer",
25650
25650
  "minimum": 0,
25651
25651
  "maximum": 9007199254740991,
25652
- "description": "References that name no bytes"
25652
+ "description": "References that name no bytes, or bytes the layer does not hold"
25653
25653
  }
25654
25654
  },
25655
25655
  "required": [
@@ -25802,7 +25802,7 @@
25802
25802
  },
25803
25803
  "available": {
25804
25804
  "type": "boolean",
25805
- "description": "False when the reference names no bytes (no bundle key, address or inline text)"
25805
+ "description": "False when the reference names no bytes: no bundle key, address or inline text, or a bundle key that the layer's own bundle does not hold"
25806
25806
  },
25807
25807
  "scope": {
25808
25808
  "description": "What this recording shows as its producer declared it: its own `scope`, else its attempt's, check's, part's or layer's. Absent: the scope is unknown, never live, physical or audible",
@@ -25908,6 +25908,28 @@
25908
25908
  ],
25909
25909
  "additionalProperties": {}
25910
25910
  }
25911
+ },
25912
+ "kind": {
25913
+ "description": "The kind of the part that held it. With the producer, environment and parameters it is the condition the result was recorded under. Absent from an older server",
25914
+ "type": "string"
25915
+ },
25916
+ "parameters": {
25917
+ "description": "The other choices that made it its own result (a device size, a locale…). Absent when there are none, and from an older server",
25918
+ "type": "object",
25919
+ "propertyNames": {
25920
+ "type": "string"
25921
+ },
25922
+ "additionalProperties": {
25923
+ "type": "string"
25924
+ }
25925
+ },
25926
+ "specRevision": {
25927
+ "description": "The fingerprint of its spec file the layer recorded. Absent means not recorded, never \"the same\"",
25928
+ "type": "string"
25929
+ },
25930
+ "recordedTitle": {
25931
+ "description": "The title this run's layer gave the check. `title` is the check's newest title in the whole history; this is the wording as recorded. Absent from an older server",
25932
+ "type": "string"
25911
25933
  }
25912
25934
  },
25913
25935
  "required": [
@@ -25982,7 +26004,7 @@
25982
26004
  "type": "integer",
25983
26005
  "minimum": 0,
25984
26006
  "maximum": 9007199254740991,
25985
- "description": "References that name no bytes"
26007
+ "description": "References that name no bytes, or bytes the layer does not hold"
25986
26008
  }
25987
26009
  },
25988
26010
  "required": [