The 20 designs that were produced in ATWL (conditions C2, C3, C6, C6++ and C7; two tasks; two models) were analysed with the 25 binary features of the paper (Section VI-C, Table XI), which are computed deterministically from the ATWL text by a released script, with the ATWL syntax checker, and with a few size descriptors. The same features were computed for the 54 workflows of the library (as of 2 October 2026), so the designs can be placed against the library. C1 and C4 produced no ATWL and C5 has no separate representation, so they are not covered here; the prose designs of C1 and C4 are covered by the coding analysis.
The features describe what an ATWL description makes explicit. They do not measure the quality of a design, and they cannot compare designs with and without ATWL.
Summary
- Validity. 7 of the 20 designs have errors reported by the ATWL syntax checker (library: 0 of 54): 0 of 4 in C2, 0 of 4 in C3, 2 of 4 in C6, 2 of 4 in C6++ and 3 of 4 in C7; 6 of the 10 Terra designs and 1 of the 10 Sonnet designs. All are dangling references (98) or duplicate artifacts (2), mostly assign targets that are never declared.
- Against the library. The designs have on average 10.4 of the 25 features present, the library 7.4. 10 features differ at q < 0.05 (Fisher exact test, Benjamini–Hochberg): more frequent in the designs are E05, E10, I05, T01, T02, T04, H01 and H03, less frequent I03 and I06. The median Jaccard similarity of the features of a design to its most similar library workflow is 0.53, against 0.58 between library workflows, so the designs are not outliers.
- Conditions. Mean features present: C2 7.5, C3 9.75, C6 10.5, C6++ 12.75, C7 11.5. The overall test (randomisation of condition labels within blocks, 20,000 permutations) gives p = 0.11. With four blocks the result is descriptive; no single feature differs between conditions after correction.
- Factors. On the Jaccard distance of the feature profiles, model explains 15% (p = 0.0015), task 13% (p = 0.006) and condition 15% (p = 0.94). Model and task shape the profiles more than condition does.
- Exploratory contrast (post hoc). Designs made directly with the ATWL materials (C2 and C3, n = 8) against designs derived from the model's prose design (C6, C6++ and C7, n = 12): the derived designs have more transforms (36.9 against 21.5), more checker errors (7 of 12 against 0 of 8) and more features present (11.6 against 8.6). The grouping was defined after seeing the data (see the limits below).
The 25 features
| ID | Family | Feature | Reading |
|---|---|---|---|
| E01 | Emergent transitions | generate-knowledge -> define-unit | decision re-specifies units |
| E02 | Emergent transitions | generate-knowledge -> characterise | decision re-specifies features |
| E03 | Emergent transitions | visualise -> generate-knowledge (unmediated jump) | decision or specification straight from a view (consumer has no pattern or model input) |
| E04 | Emergent transitions | visualise+abstract+contextualise -> define-unit | units are defined from a view, its interpretation, or the arrangement it is based on |
| E05 | Emergent transitions | build-model -> characterise | model output is used as features |
| E06 | Emergent transitions | generate-knowledge -> visualise | decision re-specifies a view |
| E07 | Emergent transitions | generate-knowledge -> contextualise | decision re-specifies the arrangement |
| E08 | Emergent transitions | generate-knowledge -> build-model | decision re-specifies the model |
| E09 | Emergent transitions | generate-knowledge -> abstract | knowledge or specification steers what is interpreted (guided abstraction) |
| E10 | Emergent transitions | assess -> define-unit | judgement of results redefines the working set |
| E11 | Emergent transitions | build-model -> define-unit | model output defines units (rules, sampled patches) |
| I01 | Iteration targets | units redefined in a loop | an assign in a loop updates an entities artifact |
| I02 | Iteration targets | features redefined in a loop | an assign in a loop updates a feature artifact |
| I03 | Iteration targets | arrangement redefined in a loop | an assign in a loop updates an arrangement artifact |
| I04 | Iteration targets | model refined in a loop | an assign in a loop updates a model artifact |
| I05 | Iteration targets | specification revised in a loop | an assign in a loop updates a specification artifact |
| I06 | Iteration targets | patterns revised in a loop | an assign in a loop updates a pattern artifact |
| I07 | Iteration targets | knowledge accumulated in a loop | an assign in a loop updates a knowledge artifact |
| T01 | Structure | two or more given datasets | two or more given entities artifacts |
| T02 | Structure | units that are groups or clusters | a derived entities artifact with internal structure group (cluster, container) |
| T03 | Structure | several views used together | a human or hybrid abstract or assess takes two or more visualisation artifacts as inputs |
| T04 | Structure | two or more sequential loops | two or more top-level (non-nested) loops |
| H01 | Human activity | contains a hybrid transform | at least one transform with actor hybrid (human-guided computation) |
| H02 | Human activity | a priori configuration | a human or hybrid generate-knowledge outside any loop produces a specification and has no assess, visualise or abstract predecessor (the analyst configures the analysis from the data and prior knowledge) |
| H03 | Human activity | human provides initial knowledge | a given knowledge artifact, or a human or hybrid generate-knowledge producing knowledge without an assess, visualise or abstract predecessor |
Definitions and library support are in selected_features_2026-10-02.csv; the 54 × 25 matrix of the library is in selected_features_matrix_2026-10-02.csv. H03 is optional in the paper.
Designs by condition
Table 2. Means of the four blocks (task × model) per condition
| Measure | C2 | C3 | C6 | C6++ | C7 |
|---|---|---|---|---|---|
| Features present, all 25 | 7.50 | 9.75 | 10.50 | 12.75 | 11.50 |
| Emergent transitions (11) | 2.00 | 4.00 | 4.00 | 5.25 | 4.75 |
| Iteration targets (7) | 1.75 | 2.00 | 1.50 | 2.50 | 2.25 |
| Structure (4) | 2.25 | 2.75 | 3.25 | 3.00 | 2.50 |
| Human activity (3) | 1.50 | 1.00 | 1.75 | 2.00 | 2.00 |
| Transforms | 18.8 | 24.2 | 35.2 | 43.8 | 31.8 |
| Transforms (contracted) | 15 | 18.5 | 23.5 | 26.5 | 23 |
| Loops | 1.75 | 2.75 | 2.25 | 4.25 | 2.75 |
| Human share of transforms | 0.28 | 0.42 | 0.30 | 0.35 | 0.28 |
| Hybrid share of transforms | 0.13 | 0.05 | 0.09 | 0.07 | 0.17 |
| Designs with checker errors (of 4) | 0 | 0 | 2 | 2 | 3 |
| Mean checker warnings | 0.75 | 0.75 | 7.00 | 12.75 | 7.25 |
| Jaccard similarity to the most similar library workflow | 0.48 | 0.60 | 0.53 | 0.58 | 0.52 |
C2: ATWL specification and one example. C3: adds the 54-workflow library in ATWL form. C6: faithful ATWL translation of the model's own C4 prose design. C6++: attempted implementation of the C6 self-critique. C7: fresh ATWL redesign from the same prose design. An undeclared assign target takes the category of the artifact assigned to it for the features (affects I01, I04, I05 and I07 in 8 designs).
Table 3. Paired contrasts between conditions (paired by block)
| Contrast | What it contrasts | Mean difference in features present | Blocks more / fewer / equal |
|---|---|---|---|
| C3 - C2 | library in ATWL form (and not only the example) | +2.25 | 3 / 1 / 0 |
| C6 - C2 | prose library then faithful translation vs no library | +3.00 | 3 / 0 / 1 |
| C6 - C3 | prose-library translation vs ATWL-library design | +0.75 | 3 / 1 / 0 |
| C7 - C6 | fresh redesign vs faithful translation | +1.00 | 2 / 2 / 0 |
| C7 - C3 | prose-library redesign vs ATWL-library design | +1.75 | 2 / 1 / 1 |
| C6++ - C6 | implemented self-critique vs the translation | +2.25 | 4 / 0 / 0 |
Single features that differ in three or more blocks: E01 (generate-knowledge -> define-unit) in C3 - C2; E08 (generate-knowledge -> build-model) in C3 - C2; E10 (assess -> define-unit) in C7 - C3; I07 (knowledge accumulated in a loop) in C6++ - C6. None is significant after correction.
Table 4. Model and task
| Grouping | Value | Designs | Features present | Transforms | Loops | Human share | Hybrid share | With checker errors |
|---|---|---|---|---|---|---|---|---|
| model | Sonnet | 10 | 9.6 | 34.0 | 3.1 | 0.39 | 0.06 | 1 |
| model | Terra | 10 | 11.2 | 27.5 | 2.4 | 0.27 | 0.15 | 6 |
| task | VAST | 10 | 11.1 | 31.3 | 2.6 | 0.35 | 0.11 | 4 |
| task | VIS | 10 | 9.7 | 30.2 | 2.9 | 0.30 | 0.10 | 3 |
Table 5. Factors on the feature profiles (PERMANOVA on the Jaccard distance)
| Factor | Groups | Pseudo-F | Share of variance (R²) | p (permutation) |
|---|---|---|---|---|
| condition | 5 | 0.66 | 15% | 0.935 |
| model | 2 | 3.22 | 15% | 0.0015 |
| task | 2 | 2.78 | 13% | 0.0057 |
Table 6. Exploratory contrast (post hoc): designed directly with ATWL materials against derived from the prose design
| Characteristic | C2 + C3 (n = 8) | C6 + C6++ + C7 (n = 12) | p, workflows treated as independent | Mean difference over blocks | p, exact within blocks |
|---|---|---|---|---|---|
| workflows with checker errors | 0 of 8 | 7 of 12 | 0.015 | 0.583 | 0.0060 |
| transforms | 21.5 | 36.9 | <0.001 | 15.4 | <0.001 |
| transforms (contracted) | 16.8 | 24.3 | 0.0095 | 7.58 | <0.001 |
| loops | 2.25 | 3.08 | 0.077 | 0.833 | 0.143 |
| features present (of 25) | 8.62 | 11.6 | 0.019 | 2.96 | 0.026 |
| checker warnings | 0.75 | 9 | 0.040 | 8.25 | 0.011 |
The within-block p-values randomise the group labels within the four blocks (exact, all 104 assignments). The direction is the same in all four blocks. Within the derived group all 6 Terra designs have checker errors against 1 of 6 Sonnet designs; the 4 directly designed Terra designs have none.
Designs against the library
Table 7. Prevalence of each feature in the 54 library workflows and in the 20 designs
| ID | Feature | Library (of 54) | Designs (of 20) | q (Benjamini–Hochberg) |
|---|---|---|---|---|
| E01 | generate-knowledge -> define-unit | 29 (54%) | 13 (65%) | 0.576 |
| E02 | generate-knowledge -> characterise | 23 (43%) | 11 (55%) | 0.576 |
| E03 | visualise -> generate-knowledge (unmediated jump) | 19 (35%) | 7 (35%) | 1.000 |
| E04 | visualise+abstract+contextualise -> define-unit | 22 (41%) | 5 (25%) | 0.448 |
| E05 | build-model -> characterise | 13 (24%) | 14 (70%) | 0.0038 |
| E06 | generate-knowledge -> visualise | 13 (24%) | 4 (20%) | 1.000 |
| E07 | generate-knowledge -> contextualise | 11 (20%) | 0 (0%) | 0.067 |
| E08 | generate-knowledge -> build-model | 11 (20%) | 9 (45%) | 0.090 |
| E09 | generate-knowledge -> abstract | 4 (7%) | 3 (15%) | 0.557 |
| E10 | assess -> define-unit | 3 (6%) | 10 (50%) | <0.001 |
| E11 | build-model -> define-unit | 3 (6%) | 4 (20%) | 0.154 |
| I01 | units redefined in a loop | 19 (35%) | 5 (25%) | 0.683 |
| I02 | features redefined in a loop | 23 (43%) | 5 (25%) | 0.338 |
| I03 | arrangement redefined in a loop | 16 (30%) | 0 (0%) | 0.011 |
| I04 | model refined in a loop | 8 (15%) | 4 (20%) | 0.787 |
| I05 | specification revised in a loop | 35 (65%) | 20 (100%) | 0.0056 |
| I06 | patterns revised in a loop | 24 (44%) | 1 (5%) | 0.0056 |
| I07 | knowledge accumulated in a loop | 7 (13%) | 5 (25%) | 0.448 |
| T01 | two or more given datasets | 18 (33%) | 13 (65%) | 0.046 |
| T02 | units that are groups or clusters | 20 (37%) | 16 (80%) | 0.0056 |
| T03 | several views used together | 27 (50%) | 8 (40%) | 0.683 |
| T04 | two or more sequential loops | 14 (26%) | 18 (90%) | <0.001 |
| H01 | contains a hybrid transform | 19 (35%) | 17 (85%) | 0.0011 |
| H02 | a priori configuration | 10 (19%) | 2 (10%) | 0.618 |
| H03 | human provides initial knowledge | 8 (15%) | 14 (70%) | <0.001 |
Shaded rows: q < 0.05 (Fisher exact test). Design counts are not independent of one another: designs share model and task, C6, C6++ and C7 share a prose design.
Features by condition

Limits
- The features measure what an ATWL description makes explicit, not the quality of a design. Quality needs expert ratings or implementation attempts.
- Feature counts depend on workflow size. In the library, size correlates with I02 (Spearman 0.54), T04 (0.50) and I05 (0.48). Designs derived from a prose design are longer, so their higher counts are confounded with size; no size adjustment was made.
- The designs are not independent: blocks share model and task, C6 and C7 share a prose design, and C6++ continues C6. Four blocks make every condition result descriptive. The exploratory contrast was defined after seeing the data, and its six characteristics are not corrected for multiple comparisons in the table (after Bonferroni correction for six tests, errors, transforms and contracted transforms stay below 0.05, warnings and features present do not).
- The parser behind the features and the checker was developed on the library; designs written by an LLM may contain constructs it reads incompletely.
- The ATWL designs differ little from one another on the 25 features, and the features cannot compare ATWL with no ATWL. That comparison is made on the prose designs in the coding analysis.
Files
ATWL_designed_workflows_features.xlsx
Features, descriptors and checker results of the 20 designs; comparison with the library. Sheets: Summary, Features, Library vs designed, By condition, model, task, Descriptors and checker.
ATWL_designed_conditions.xlsx
Differences between conditions: feature × condition counts, families, paired contrasts, factors, exploratory contrast, contrast by block, proximity to the library.
designed_features.csv
20 designs × 25 binary features.
web_checker_results_designed.json · library
Output of the validation function of the ATWL syntax checker for the designs and for the library.
The features, descriptors and tests were computed with the scripts designed_report.py, condition_analysis.py and run_web_checker.js of the ATWL Workflow Lens package (folder atwl_tools).