markform 0.1.3 → 0.1.4
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.
- package/README.md +81 -28
- package/dist/ai-sdk.d.mts +2 -2
- package/dist/ai-sdk.mjs +5 -5
- package/dist/{apply-00UmzDKL.mjs → apply-C54EMAJ1.mjs} +371 -26
- package/dist/bin.mjs +6 -6
- package/dist/{cli-D--Lel-e.mjs → cli-BhWhn6L9.mjs} +383 -87
- package/dist/cli.mjs +6 -6
- package/dist/{coreTypes-BXhhz9Iq.d.mts → coreTypes-cbNTYAcb.d.mts} +1878 -325
- package/dist/{coreTypes-Dful87E0.mjs → coreTypes-pyctKRgc.mjs} +79 -5
- package/dist/index.d.mts +142 -5
- package/dist/index.mjs +5 -5
- package/dist/session-B_stoXQn.mjs +4 -0
- package/dist/{session-Bqnwi9wp.mjs → session-uF0e6m6k.mjs} +9 -5
- package/dist/{shared-N_s1M-_K.mjs → shared-BqPnYXrn.mjs} +82 -1
- package/dist/shared-CZsyShck.mjs +3 -0
- package/dist/{src-Dm8jZ5dl.mjs → src-BNh7Cx9P.mjs} +801 -121
- package/docs/markform-apis.md +194 -0
- package/{DOCS.md → docs/markform-reference.md} +111 -50
- package/{SPEC.md → docs/markform-spec.md} +342 -91
- package/examples/celebrity-deep-research/celebrity-deep-research.form.md +196 -141
- package/examples/earnings-analysis/earnings-analysis.form.md +236 -226
- package/examples/movie-research/movie-research-basic.form.md +25 -21
- package/examples/movie-research/movie-research-deep.form.md +74 -62
- package/examples/movie-research/movie-research-minimal.form.md +25 -11
- package/examples/simple/simple-mock-filled.form.md +93 -29
- package/examples/simple/simple-skipped-filled.form.md +91 -29
- package/examples/simple/simple-with-skips.session.yaml +93 -25
- package/examples/simple/simple.form.md +74 -20
- package/examples/simple/simple.session.yaml +98 -25
- package/examples/startup-deep-research/startup-deep-research.form.md +108 -81
- package/examples/startup-research/startup-research-mock-filled.form.md +43 -43
- package/examples/startup-research/startup-research.form.md +24 -24
- package/package.json +18 -19
- package/dist/session-DdAtY2Ni.mjs +0 -4
- package/dist/shared-D7gf27Tr.mjs +0 -3
|
@@ -18,33 +18,33 @@ Fill all fields using interactive prompts - no LLM API key needed.
|
|
|
18
18
|
|
|
19
19
|
{% field-group id="basic_fields" title="Basic Fields" %}
|
|
20
20
|
|
|
21
|
-
{%
|
|
21
|
+
{% field kind="string" id="name" label="Name" role="user" required=true minLength=2 maxLength=50 placeholder="Enter your name" examples=["John Smith", "Jane Doe"] %}
|
|
22
22
|
```value
|
|
23
23
|
Alice Johnson
|
|
24
24
|
```
|
|
25
|
-
{% /
|
|
25
|
+
{% /field %}
|
|
26
26
|
|
|
27
27
|
{% instructions ref="name" %}
|
|
28
28
|
Enter your full name (2-50 characters).
|
|
29
29
|
{% /instructions %}
|
|
30
30
|
|
|
31
|
-
{%
|
|
31
|
+
{% field kind="string" id="email" label="Email" role="user" required=true pattern="^[^@]+@[^@]+\\.[^@]+$" placeholder="email@example.com" examples=["alice@company.com", "bob@example.org"] %}
|
|
32
32
|
```value
|
|
33
33
|
alice@example.com
|
|
34
34
|
```
|
|
35
|
-
{% /
|
|
35
|
+
{% /field %}
|
|
36
36
|
|
|
37
|
-
{%
|
|
37
|
+
{% field kind="number" id="age" label="Age" role="user" required=true min=0 max=150 integer=true placeholder="25" examples=["18", "30", "45"] %}
|
|
38
38
|
```value
|
|
39
39
|
32
|
|
40
40
|
```
|
|
41
|
-
{% /
|
|
41
|
+
{% /field %}
|
|
42
42
|
|
|
43
|
-
{%
|
|
43
|
+
{% field kind="number" id="score" label="Score" role="user" min=0.0 max=100.0 placeholder="85.5" examples=["75.0", "90.5", "100.0"] %}
|
|
44
44
|
```value
|
|
45
45
|
87.5
|
|
46
46
|
```
|
|
47
|
-
{% /
|
|
47
|
+
{% /field %}
|
|
48
48
|
|
|
49
49
|
{% instructions ref="score" %}
|
|
50
50
|
Enter a score between 0 and 100 (optional).
|
|
@@ -54,13 +54,13 @@ Enter a score between 0 and 100 (optional).
|
|
|
54
54
|
|
|
55
55
|
{% field-group id="list_fields" title="List Fields" %}
|
|
56
56
|
|
|
57
|
-
{%
|
|
57
|
+
{% field kind="string_list" id="tags" label="Tags" role="user" required=true minItems=1 maxItems=5 itemMinLength=2 uniqueItems=true %}
|
|
58
58
|
```value
|
|
59
59
|
typescript
|
|
60
60
|
testing
|
|
61
61
|
forms
|
|
62
62
|
```
|
|
63
|
-
{% /
|
|
63
|
+
{% /field %}
|
|
64
64
|
|
|
65
65
|
{% instructions ref="tags" %}
|
|
66
66
|
Add 1-5 unique tags (each at least 2 characters).
|
|
@@ -70,43 +70,43 @@ Add 1-5 unique tags (each at least 2 characters).
|
|
|
70
70
|
|
|
71
71
|
{% field-group id="selection_fields" title="Selection Fields" %}
|
|
72
72
|
|
|
73
|
-
{%
|
|
73
|
+
{% field kind="single_select" id="priority" label="Priority" role="user" required=true %}
|
|
74
74
|
- [ ] Low {% #low %}
|
|
75
75
|
- [x] Medium {% #medium %}
|
|
76
76
|
- [ ] High {% #high %}
|
|
77
|
-
{% /
|
|
77
|
+
{% /field %}
|
|
78
78
|
|
|
79
|
-
{%
|
|
79
|
+
{% field kind="multi_select" id="categories" label="Categories" role="user" required=true minSelections=1 maxSelections=3 %}
|
|
80
80
|
- [x] Frontend {% #frontend %}
|
|
81
81
|
- [x] Backend {% #backend %}
|
|
82
82
|
- [ ] Database {% #database %}
|
|
83
83
|
- [ ] DevOps {% #devops %}
|
|
84
|
-
{% /
|
|
84
|
+
{% /field %}
|
|
85
85
|
|
|
86
86
|
{% /field-group %}
|
|
87
87
|
|
|
88
88
|
{% field-group id="checkbox_fields" title="Checkbox Fields" %}
|
|
89
89
|
|
|
90
|
-
{% checkboxes id="tasks_multi" label="Tasks (Multi Mode)" role="user" checkboxMode="multi" required=true %}
|
|
90
|
+
{% field kind="checkboxes" id="tasks_multi" label="Tasks (Multi Mode)" role="user" checkboxMode="multi" required=true %}
|
|
91
91
|
- [x] Research {% #research %}
|
|
92
92
|
- [x] Design {% #design %}
|
|
93
93
|
- [x] Implement {% #implement %}
|
|
94
94
|
- [-] Test {% #test %}
|
|
95
|
-
{% /
|
|
95
|
+
{% /field %}
|
|
96
96
|
|
|
97
97
|
{% instructions ref="tasks_multi" %}
|
|
98
98
|
Track task progress. All must reach done or na state to complete.
|
|
99
99
|
{% /instructions %}
|
|
100
100
|
|
|
101
|
-
{% checkboxes id="tasks_simple" label="Agreements (Simple Mode)" role="user" checkboxMode="simple" required=true %}
|
|
101
|
+
{% field kind="checkboxes" id="tasks_simple" label="Agreements (Simple Mode)" role="user" checkboxMode="simple" required=true %}
|
|
102
102
|
- [x] I have read the guidelines {% #read_guidelines %}
|
|
103
103
|
- [x] I agree to the terms {% #agree_terms %}
|
|
104
|
-
{% /
|
|
104
|
+
{% /field %}
|
|
105
105
|
|
|
106
|
-
{% checkboxes id="confirmations" label="Confirmations (Explicit Mode)" role="user" checkboxMode="explicit" required=true %}
|
|
106
|
+
{% field kind="checkboxes" id="confirmations" label="Confirmations (Explicit Mode)" role="user" checkboxMode="explicit" required=true %}
|
|
107
107
|
- [y] Data has been backed up {% #backed_up %}
|
|
108
108
|
- [n] Stakeholders notified {% #notified %}
|
|
109
|
-
{% /
|
|
109
|
+
{% /field %}
|
|
110
110
|
|
|
111
111
|
{% instructions ref="confirmations" %}
|
|
112
112
|
Answer yes or no for each confirmation. All must be explicitly answered.
|
|
@@ -116,23 +116,23 @@ Answer yes or no for each confirmation. All must be explicitly answered.
|
|
|
116
116
|
|
|
117
117
|
{% field-group id="url_fields" title="URL Fields" %}
|
|
118
118
|
|
|
119
|
-
{%
|
|
119
|
+
{% field kind="url" id="website" label="Website" role="user" required=true placeholder="https://example.com" examples=["https://github.com/user/repo", "https://company.com"] %}
|
|
120
120
|
```value
|
|
121
121
|
https://alice.dev
|
|
122
122
|
```
|
|
123
|
-
{% /
|
|
123
|
+
{% /field %}
|
|
124
124
|
|
|
125
125
|
{% instructions ref="website" %}
|
|
126
126
|
Enter your website URL (must be http or https).
|
|
127
127
|
{% /instructions %}
|
|
128
128
|
|
|
129
|
-
{%
|
|
129
|
+
{% field kind="url_list" id="references" label="References" role="user" minItems=1 maxItems=5 uniqueItems=true placeholder="https://docs.example.com" examples=["https://wikipedia.org/wiki/Example", "https://docs.github.com/en"] %}
|
|
130
130
|
```value
|
|
131
131
|
https://docs.example.com/guide
|
|
132
132
|
https://github.com/example/project
|
|
133
133
|
https://medium.com/article-about-forms
|
|
134
134
|
```
|
|
135
|
-
{% /
|
|
135
|
+
{% /field %}
|
|
136
136
|
|
|
137
137
|
{% instructions ref="references" %}
|
|
138
138
|
Add 1-5 unique reference URLs for sources or documentation.
|
|
@@ -140,30 +140,94 @@ Add 1-5 unique reference URLs for sources or documentation.
|
|
|
140
140
|
|
|
141
141
|
{% /field-group %}
|
|
142
142
|
|
|
143
|
+
{% field-group id="date_fields" title="Date and Year Fields" %}
|
|
144
|
+
|
|
145
|
+
{% field kind="date" id="event_date" label="Event Date" role="user" required=true min="2020-01-01" max="2030-12-31" %}
|
|
146
|
+
```value
|
|
147
|
+
2025-06-15
|
|
148
|
+
```
|
|
149
|
+
{% /field %}
|
|
150
|
+
|
|
151
|
+
{% instructions ref="event_date" %}
|
|
152
|
+
Enter the event date (YYYY-MM-DD format, between 2020 and 2030).
|
|
153
|
+
{% /instructions %}
|
|
154
|
+
|
|
155
|
+
{% field kind="year" id="founded_year" label="Founded Year" role="user" required=true min=1900 max=2030 %}
|
|
156
|
+
```value
|
|
157
|
+
2020
|
|
158
|
+
```
|
|
159
|
+
{% /field %}
|
|
160
|
+
|
|
161
|
+
{% instructions ref="founded_year" %}
|
|
162
|
+
Enter the year the company was founded (1900-2030).
|
|
163
|
+
{% /instructions %}
|
|
164
|
+
|
|
165
|
+
{% /field-group %}
|
|
166
|
+
|
|
167
|
+
{% field-group id="table_fields" title="Table Fields" %}
|
|
168
|
+
|
|
169
|
+
{% field kind="table" id="team_members" label="Team Members" role="user" minRows=0 maxRows=5
|
|
170
|
+
columnIds=["name", "role", "start_date"]
|
|
171
|
+
columnTypes=[{type: "string", required: true}, "string", "date"] %}
|
|
172
|
+
| Name | Role | Start Date |
|
|
173
|
+
|------|------|------------|
|
|
174
|
+
| Alice | Engineer | 2024-01-15 |
|
|
175
|
+
| Bob | Designer | 2023-06-01 |
|
|
176
|
+
{% /field %}
|
|
177
|
+
|
|
178
|
+
{% instructions ref="team_members" %}
|
|
179
|
+
Add team members with their name (required), role, and start date.
|
|
180
|
+
{% /instructions %}
|
|
181
|
+
|
|
182
|
+
{% field kind="table" id="project_tasks" label="Project Tasks" role="user" minRows=0 maxRows=10
|
|
183
|
+
columnIds=["task", "estimate_hrs", "link"]
|
|
184
|
+
columnTypes=[{type: "string", required: true}, "number", "url"] %}
|
|
185
|
+
| Task | Estimate (hrs) | Link |
|
|
186
|
+
|------|----------------|------|
|
|
187
|
+
{% /field %}
|
|
188
|
+
|
|
189
|
+
{% instructions ref="project_tasks" %}
|
|
190
|
+
Optionally add project tasks with estimated hours and reference links.
|
|
191
|
+
{% /instructions %}
|
|
192
|
+
|
|
193
|
+
{% /field-group %}
|
|
194
|
+
|
|
143
195
|
{% field-group id="optional_fields" title="Optional Fields" %}
|
|
144
196
|
|
|
145
|
-
{%
|
|
197
|
+
{% field kind="string" id="notes" label="Notes" role="user" %}
|
|
146
198
|
```value
|
|
147
199
|
This is a test note.
|
|
148
200
|
```
|
|
149
|
-
{% /
|
|
201
|
+
{% /field %}
|
|
150
202
|
|
|
151
203
|
{% instructions ref="notes" %}
|
|
152
204
|
Add any relevant notes or observations (optional).
|
|
153
205
|
{% /instructions %}
|
|
154
206
|
|
|
155
|
-
{%
|
|
207
|
+
{% field kind="number" id="optional_number" label="Optional Number" role="user" %}{% /field %}
|
|
156
208
|
|
|
157
|
-
{%
|
|
209
|
+
{% field kind="url" id="related_url" label="Related URL" role="user" %}
|
|
158
210
|
```value
|
|
159
211
|
https://markform.dev/docs
|
|
160
212
|
```
|
|
161
|
-
{% /
|
|
213
|
+
{% /field %}
|
|
162
214
|
|
|
163
215
|
{% instructions ref="related_url" %}
|
|
164
216
|
Optionally add a URL to related documentation or resources.
|
|
165
217
|
{% /instructions %}
|
|
166
218
|
|
|
219
|
+
{% field kind="date" id="optional_date" label="Optional Date" role="user" %}{% /field %}
|
|
220
|
+
|
|
221
|
+
{% instructions ref="optional_date" %}
|
|
222
|
+
Optionally add a date (YYYY-MM-DD format).
|
|
223
|
+
{% /instructions %}
|
|
224
|
+
|
|
225
|
+
{% field kind="year" id="optional_year" label="Optional Year" role="user" %}{% /field %}
|
|
226
|
+
|
|
227
|
+
{% instructions ref="optional_year" %}
|
|
228
|
+
Optionally add a year.
|
|
229
|
+
{% /instructions %}
|
|
230
|
+
|
|
167
231
|
{% /field-group %}
|
|
168
232
|
|
|
169
233
|
{% note id="note-review" ref="simple_test" role="user" %}
|
|
@@ -18,33 +18,33 @@ Fill all fields using interactive prompts - no LLM API key needed.
|
|
|
18
18
|
|
|
19
19
|
{% field-group id="basic_fields" title="Basic Fields" %}
|
|
20
20
|
|
|
21
|
-
{%
|
|
21
|
+
{% field kind="string" id="name" label="Name" maxLength=50 minLength=2 required=true role="user" placeholder="Enter your name" examples=["John Smith", "Jane Doe"] %}
|
|
22
22
|
```value
|
|
23
23
|
Test User
|
|
24
24
|
```
|
|
25
|
-
{% /
|
|
25
|
+
{% /field %}
|
|
26
26
|
|
|
27
27
|
{% instructions ref="name" %}
|
|
28
28
|
Enter your full name (2-50 characters).
|
|
29
29
|
{% /instructions %}
|
|
30
30
|
|
|
31
|
-
{%
|
|
31
|
+
{% field kind="string" id="email" label="Email" pattern="^[^@]+@[^@]+\\.[^@]+$" required=true role="user" placeholder="email@example.com" examples=["alice@company.com", "bob@example.org"] %}
|
|
32
32
|
```value
|
|
33
33
|
test@example.com
|
|
34
34
|
```
|
|
35
|
-
{% /
|
|
35
|
+
{% /field %}
|
|
36
36
|
|
|
37
|
-
{%
|
|
37
|
+
{% field kind="number" id="age" integer=true label="Age" max=150 min=0 required=true role="user" placeholder="25" examples=["18", "30", "45"] %}
|
|
38
38
|
```value
|
|
39
39
|
25
|
|
40
40
|
```
|
|
41
|
-
{% /
|
|
41
|
+
{% /field %}
|
|
42
42
|
|
|
43
|
-
{%
|
|
43
|
+
{% field kind="number" id="score" label="Score" max=100 min=0 role="user" state="skipped" placeholder="85.5" examples=["75.0", "90.5", "100.0"] %}
|
|
44
44
|
```value
|
|
45
45
|
%SKIP% (Not needed for this test)
|
|
46
46
|
```
|
|
47
|
-
{% /
|
|
47
|
+
{% /field %}
|
|
48
48
|
|
|
49
49
|
{% instructions ref="score" %}
|
|
50
50
|
Enter a score between 0 and 100 (optional).
|
|
@@ -54,12 +54,12 @@ Enter a score between 0 and 100 (optional).
|
|
|
54
54
|
|
|
55
55
|
{% field-group id="list_fields" title="List Fields" %}
|
|
56
56
|
|
|
57
|
-
{%
|
|
57
|
+
{% field kind="string_list" id="tags" itemMinLength=2 label="Tags" maxItems=5 minItems=1 required=true role="user" uniqueItems=true %}
|
|
58
58
|
```value
|
|
59
59
|
typescript
|
|
60
60
|
testing
|
|
61
61
|
```
|
|
62
|
-
{% /
|
|
62
|
+
{% /field %}
|
|
63
63
|
|
|
64
64
|
{% instructions ref="tags" %}
|
|
65
65
|
Add 1-5 unique tags (each at least 2 characters).
|
|
@@ -69,43 +69,43 @@ Add 1-5 unique tags (each at least 2 characters).
|
|
|
69
69
|
|
|
70
70
|
{% field-group id="selection_fields" title="Selection Fields" %}
|
|
71
71
|
|
|
72
|
-
{%
|
|
72
|
+
{% field kind="single_select" id="priority" label="Priority" required=true role="user" %}
|
|
73
73
|
- [ ] Low {% #low %}
|
|
74
74
|
- [ ] Medium {% #medium %}
|
|
75
75
|
- [x] High {% #high %}
|
|
76
|
-
{% /
|
|
76
|
+
{% /field %}
|
|
77
77
|
|
|
78
|
-
{%
|
|
78
|
+
{% field kind="multi_select" id="categories" label="Categories" maxSelections=3 minSelections=1 required=true role="user" %}
|
|
79
79
|
- [x] Frontend {% #frontend %}
|
|
80
80
|
- [x] Backend {% #backend %}
|
|
81
81
|
- [ ] Database {% #database %}
|
|
82
82
|
- [ ] DevOps {% #devops %}
|
|
83
|
-
{% /
|
|
83
|
+
{% /field %}
|
|
84
84
|
|
|
85
85
|
{% /field-group %}
|
|
86
86
|
|
|
87
87
|
{% field-group id="checkbox_fields" title="Checkbox Fields" %}
|
|
88
88
|
|
|
89
|
-
{% checkboxes id="tasks_multi" label="Tasks (Multi Mode)" required=true role="user" %}
|
|
89
|
+
{% field kind="checkboxes" id="tasks_multi" label="Tasks (Multi Mode)" required=true role="user" %}
|
|
90
90
|
- [x] Research {% #research %}
|
|
91
91
|
- [x] Design {% #design %}
|
|
92
92
|
- [x] Implement {% #implement %}
|
|
93
93
|
- [-] Test {% #test %}
|
|
94
|
-
{% /
|
|
94
|
+
{% /field %}
|
|
95
95
|
|
|
96
96
|
{% instructions ref="tasks_multi" %}
|
|
97
97
|
Track task progress. All must reach done or na state to complete.
|
|
98
98
|
{% /instructions %}
|
|
99
99
|
|
|
100
|
-
{% checkboxes checkboxMode="simple" id="tasks_simple" label="Agreements (Simple Mode)" required=true role="user" %}
|
|
100
|
+
{% field kind="checkboxes" checkboxMode="simple" id="tasks_simple" label="Agreements (Simple Mode)" required=true role="user" %}
|
|
101
101
|
- [x] I have read the guidelines {% #read_guidelines %}
|
|
102
102
|
- [x] I agree to the terms {% #agree_terms %}
|
|
103
|
-
{% /
|
|
103
|
+
{% /field %}
|
|
104
104
|
|
|
105
|
-
{% checkboxes checkboxMode="explicit" id="confirmations" label="Confirmations (Explicit Mode)" required=true role="user" %}
|
|
105
|
+
{% field kind="checkboxes" checkboxMode="explicit" id="confirmations" label="Confirmations (Explicit Mode)" required=true role="user" %}
|
|
106
106
|
- [y] Data has been backed up {% #backed_up %}
|
|
107
107
|
- [n] Stakeholders notified {% #notified %}
|
|
108
|
-
{% /
|
|
108
|
+
{% /field %}
|
|
109
109
|
|
|
110
110
|
{% instructions ref="confirmations" %}
|
|
111
111
|
Answer yes or no for each confirmation. All must be explicitly answered.
|
|
@@ -115,21 +115,21 @@ Answer yes or no for each confirmation. All must be explicitly answered.
|
|
|
115
115
|
|
|
116
116
|
{% field-group id="url_fields" title="URL Fields" %}
|
|
117
117
|
|
|
118
|
-
{%
|
|
118
|
+
{% field kind="url" id="website" label="Website" required=true role="user" placeholder="https://example.com" examples=["https://github.com/user/repo", "https://company.com"] %}
|
|
119
119
|
```value
|
|
120
120
|
https://test.example.com
|
|
121
121
|
```
|
|
122
|
-
{% /
|
|
122
|
+
{% /field %}
|
|
123
123
|
|
|
124
124
|
{% instructions ref="website" %}
|
|
125
125
|
Enter your website URL (must be http or https).
|
|
126
126
|
{% /instructions %}
|
|
127
127
|
|
|
128
|
-
{%
|
|
128
|
+
{% field kind="url_list" id="references" label="References" maxItems=5 minItems=1 role="user" uniqueItems=true placeholder="https://docs.example.com" examples=["https://wikipedia.org/wiki/Example", "https://docs.github.com/en"] %}
|
|
129
129
|
```value
|
|
130
130
|
https://docs.example.com
|
|
131
131
|
```
|
|
132
|
-
{% /
|
|
132
|
+
{% /field %}
|
|
133
133
|
|
|
134
134
|
{% instructions ref="references" %}
|
|
135
135
|
Add 1-5 unique reference URLs for sources or documentation.
|
|
@@ -137,30 +137,92 @@ Add 1-5 unique reference URLs for sources or documentation.
|
|
|
137
137
|
|
|
138
138
|
{% /field-group %}
|
|
139
139
|
|
|
140
|
+
{% field-group id="date_fields" title="Date and Year Fields" %}
|
|
141
|
+
|
|
142
|
+
{% field kind="date" id="event_date" label="Event Date" max="2030-12-31" min="2020-01-01" required=true role="user" %}
|
|
143
|
+
```value
|
|
144
|
+
2025-03-15
|
|
145
|
+
```
|
|
146
|
+
{% /field %}
|
|
147
|
+
|
|
148
|
+
{% instructions ref="event_date" %}
|
|
149
|
+
Enter the event date (YYYY-MM-DD format, between 2020 and 2030).
|
|
150
|
+
{% /instructions %}
|
|
151
|
+
|
|
152
|
+
{% field kind="year" id="founded_year" label="Founded Year" max=2030 min=1900 required=true role="user" %}
|
|
153
|
+
```value
|
|
154
|
+
2021
|
|
155
|
+
```
|
|
156
|
+
{% /field %}
|
|
157
|
+
|
|
158
|
+
{% instructions ref="founded_year" %}
|
|
159
|
+
Enter the year the company was founded (1900-2030).
|
|
160
|
+
{% /instructions %}
|
|
161
|
+
|
|
162
|
+
{% /field-group %}
|
|
163
|
+
|
|
164
|
+
{% field-group id="table_fields" title="Table Fields" %}
|
|
165
|
+
|
|
166
|
+
{% field kind="table" id="team_members" label="Team Members" role="user" minRows=0 maxRows=5 state="skipped"
|
|
167
|
+
columnIds=["name", "role", "start_date"]
|
|
168
|
+
columnTypes=[{type: "string", required: true}, "string", "date"] %}
|
|
169
|
+
| Name | Role | Start Date |
|
|
170
|
+
|------|------|------------|
|
|
171
|
+
{% /field %}
|
|
172
|
+
|
|
173
|
+
{% instructions ref="team_members" %}
|
|
174
|
+
Add team members with their name (required), role, and start date.
|
|
175
|
+
{% /instructions %}
|
|
176
|
+
|
|
177
|
+
{% field kind="table" id="project_tasks" label="Project Tasks" role="user" minRows=0 maxRows=10 state="skipped"
|
|
178
|
+
columnIds=["task", "estimate_hrs", "link"]
|
|
179
|
+
columnTypes=[{type: "string", required: true}, "number", "url"] %}
|
|
180
|
+
| Task | Estimate (hrs) | Link |
|
|
181
|
+
|------|----------------|------|
|
|
182
|
+
{% /field %}
|
|
183
|
+
|
|
184
|
+
{% instructions ref="project_tasks" %}
|
|
185
|
+
Optionally add project tasks with estimated hours and reference links.
|
|
186
|
+
{% /instructions %}
|
|
187
|
+
|
|
188
|
+
{% /field-group %}
|
|
189
|
+
|
|
140
190
|
{% field-group id="optional_fields" title="Optional Fields" %}
|
|
141
191
|
|
|
142
|
-
{%
|
|
192
|
+
{% field kind="string" id="notes" label="Notes" role="user" state="skipped" %}
|
|
143
193
|
```value
|
|
144
194
|
%SKIP% (No notes required)
|
|
145
195
|
```
|
|
146
|
-
{% /
|
|
196
|
+
{% /field %}
|
|
147
197
|
|
|
148
198
|
{% instructions ref="notes" %}
|
|
149
199
|
Add any relevant notes or observations (optional).
|
|
150
200
|
{% /instructions %}
|
|
151
201
|
|
|
152
|
-
{%
|
|
202
|
+
{% field kind="number" id="optional_number" label="Optional Number" role="user" state="skipped" %}{% /field %}
|
|
153
203
|
|
|
154
|
-
{%
|
|
204
|
+
{% field kind="url" id="related_url" label="Related URL" role="user" state="skipped" %}
|
|
155
205
|
```value
|
|
156
206
|
%SKIP% (No related URL needed)
|
|
157
207
|
```
|
|
158
|
-
{% /
|
|
208
|
+
{% /field %}
|
|
159
209
|
|
|
160
210
|
{% instructions ref="related_url" %}
|
|
161
211
|
Optionally add a URL to related documentation or resources.
|
|
162
212
|
{% /instructions %}
|
|
163
213
|
|
|
214
|
+
{% field kind="date" id="optional_date" label="Optional Date" role="user" state="skipped" %}{% /field %}
|
|
215
|
+
|
|
216
|
+
{% instructions ref="optional_date" %}
|
|
217
|
+
Optionally add a date (YYYY-MM-DD format).
|
|
218
|
+
{% /instructions %}
|
|
219
|
+
|
|
220
|
+
{% field kind="year" id="optional_year" label="Optional Year" role="user" state="skipped" %}{% /field %}
|
|
221
|
+
|
|
222
|
+
{% instructions ref="optional_year" %}
|
|
223
|
+
Optionally add a year.
|
|
224
|
+
{% /instructions %}
|
|
225
|
+
|
|
164
226
|
{% /field-group %}
|
|
165
227
|
|
|
166
228
|
{% note id="note-summary" ref="simple_test" role="user" %}
|
|
@@ -39,40 +39,40 @@ turns:
|
|
|
39
39
|
message: Required field "Email" is empty
|
|
40
40
|
severity: required
|
|
41
41
|
priority: 1
|
|
42
|
-
- ref:
|
|
42
|
+
- ref: event_date
|
|
43
43
|
scope: field
|
|
44
44
|
reason: required_missing
|
|
45
|
-
message: Required field "
|
|
45
|
+
message: Required field "Event Date" is empty
|
|
46
46
|
severity: required
|
|
47
47
|
priority: 1
|
|
48
|
-
- ref:
|
|
48
|
+
- ref: founded_year
|
|
49
49
|
scope: field
|
|
50
50
|
reason: required_missing
|
|
51
|
-
message: Required field "
|
|
51
|
+
message: Required field "Founded Year" is empty
|
|
52
52
|
severity: required
|
|
53
53
|
priority: 1
|
|
54
|
-
- ref:
|
|
54
|
+
- ref: name
|
|
55
55
|
scope: field
|
|
56
56
|
reason: required_missing
|
|
57
|
-
message: Required field "
|
|
57
|
+
message: Required field "Name" is empty
|
|
58
58
|
severity: required
|
|
59
59
|
priority: 1
|
|
60
|
-
- ref:
|
|
60
|
+
- ref: priority
|
|
61
61
|
scope: field
|
|
62
62
|
reason: required_missing
|
|
63
|
-
message:
|
|
63
|
+
message: Required field "Priority" has no selection
|
|
64
64
|
severity: required
|
|
65
65
|
priority: 1
|
|
66
|
-
- ref:
|
|
66
|
+
- ref: tags
|
|
67
67
|
scope: field
|
|
68
68
|
reason: required_missing
|
|
69
|
-
message:
|
|
69
|
+
message: Required field "Tags" is empty
|
|
70
70
|
severity: required
|
|
71
71
|
priority: 1
|
|
72
|
-
- ref:
|
|
72
|
+
- ref: tasks_multi
|
|
73
73
|
scope: field
|
|
74
74
|
reason: required_missing
|
|
75
|
-
message:
|
|
75
|
+
message: All items in "Tasks (Multi Mode)" must be completed
|
|
76
76
|
severity: required
|
|
77
77
|
priority: 1
|
|
78
78
|
apply:
|
|
@@ -93,6 +93,12 @@ turns:
|
|
|
93
93
|
- op: set_string
|
|
94
94
|
field_id: email
|
|
95
95
|
value: test@example.com
|
|
96
|
+
- op: set_date
|
|
97
|
+
field_id: event_date
|
|
98
|
+
value: 2025-03-15
|
|
99
|
+
- op: set_year
|
|
100
|
+
field_id: founded_year
|
|
101
|
+
value: 2021
|
|
96
102
|
- op: set_string
|
|
97
103
|
field_id: name
|
|
98
104
|
value: Test User
|
|
@@ -111,34 +117,56 @@ turns:
|
|
|
111
117
|
design: done
|
|
112
118
|
implement: done
|
|
113
119
|
test: na
|
|
114
|
-
- op: set_checkboxes
|
|
115
|
-
field_id: tasks_simple
|
|
116
|
-
values:
|
|
117
|
-
read_guidelines: done
|
|
118
|
-
agree_terms: done
|
|
119
|
-
- op: set_url
|
|
120
|
-
field_id: website
|
|
121
|
-
value: https://test.example.com
|
|
122
120
|
after:
|
|
123
|
-
required_issue_count:
|
|
124
|
-
markdown_sha256:
|
|
121
|
+
required_issue_count: 2
|
|
122
|
+
markdown_sha256: b5b261b437d0ea9762f342d8a6e1f44ece1b1f0ae0bd4a8709e8ba84625ecae3
|
|
125
123
|
answered_field_count: 10
|
|
126
124
|
skipped_field_count: 0
|
|
127
125
|
- turn: 2
|
|
128
126
|
inspect:
|
|
129
127
|
issues:
|
|
128
|
+
- ref: tasks_simple
|
|
129
|
+
scope: field
|
|
130
|
+
reason: required_missing
|
|
131
|
+
message: All items in "Agreements (Simple Mode)" must be checked (2 unchecked)
|
|
132
|
+
severity: required
|
|
133
|
+
priority: 1
|
|
134
|
+
- ref: website
|
|
135
|
+
scope: field
|
|
136
|
+
reason: required_missing
|
|
137
|
+
message: Required field "Website" is empty
|
|
138
|
+
severity: required
|
|
139
|
+
priority: 1
|
|
130
140
|
- ref: notes
|
|
131
141
|
scope: field
|
|
132
142
|
reason: optional_empty
|
|
133
143
|
message: Optional field has no value
|
|
134
144
|
severity: recommended
|
|
135
145
|
priority: 3
|
|
146
|
+
- ref: optional_date
|
|
147
|
+
scope: field
|
|
148
|
+
reason: optional_empty
|
|
149
|
+
message: Optional field has no value
|
|
150
|
+
severity: recommended
|
|
151
|
+
priority: 3
|
|
136
152
|
- ref: optional_number
|
|
137
153
|
scope: field
|
|
138
154
|
reason: optional_empty
|
|
139
155
|
message: Optional field has no value
|
|
140
156
|
severity: recommended
|
|
141
157
|
priority: 3
|
|
158
|
+
- ref: optional_year
|
|
159
|
+
scope: field
|
|
160
|
+
reason: optional_empty
|
|
161
|
+
message: Optional field has no value
|
|
162
|
+
severity: recommended
|
|
163
|
+
priority: 3
|
|
164
|
+
- ref: project_tasks
|
|
165
|
+
scope: field
|
|
166
|
+
reason: optional_empty
|
|
167
|
+
message: Optional field has no value
|
|
168
|
+
severity: recommended
|
|
169
|
+
priority: 3
|
|
142
170
|
- ref: references
|
|
143
171
|
scope: field
|
|
144
172
|
reason: optional_empty
|
|
@@ -159,14 +187,34 @@ turns:
|
|
|
159
187
|
priority: 3
|
|
160
188
|
apply:
|
|
161
189
|
patches:
|
|
190
|
+
- op: set_checkboxes
|
|
191
|
+
field_id: tasks_simple
|
|
192
|
+
values:
|
|
193
|
+
read_guidelines: done
|
|
194
|
+
agree_terms: done
|
|
195
|
+
- op: set_url
|
|
196
|
+
field_id: website
|
|
197
|
+
value: https://test.example.com
|
|
162
198
|
- op: skip_field
|
|
163
199
|
field_id: notes
|
|
164
200
|
role: agent
|
|
165
201
|
reason: No value in mock form
|
|
202
|
+
- op: skip_field
|
|
203
|
+
field_id: optional_date
|
|
204
|
+
role: agent
|
|
205
|
+
reason: No value in mock form
|
|
166
206
|
- op: skip_field
|
|
167
207
|
field_id: optional_number
|
|
168
208
|
role: agent
|
|
169
209
|
reason: No value in mock form
|
|
210
|
+
- op: skip_field
|
|
211
|
+
field_id: optional_year
|
|
212
|
+
role: agent
|
|
213
|
+
reason: No value in mock form
|
|
214
|
+
- op: skip_field
|
|
215
|
+
field_id: project_tasks
|
|
216
|
+
role: agent
|
|
217
|
+
reason: No value in mock form
|
|
170
218
|
- op: set_url_list
|
|
171
219
|
field_id: references
|
|
172
220
|
items:
|
|
@@ -181,9 +229,29 @@ turns:
|
|
|
181
229
|
reason: No value in mock form
|
|
182
230
|
after:
|
|
183
231
|
required_issue_count: 0
|
|
184
|
-
markdown_sha256:
|
|
185
|
-
answered_field_count:
|
|
186
|
-
skipped_field_count:
|
|
232
|
+
markdown_sha256: 943a9dac5094e295b53bd4cf38733fcff32e4311b6e308d5904199f4898d4f5d
|
|
233
|
+
answered_field_count: 13
|
|
234
|
+
skipped_field_count: 7
|
|
235
|
+
- turn: 3
|
|
236
|
+
inspect:
|
|
237
|
+
issues:
|
|
238
|
+
- ref: team_members
|
|
239
|
+
scope: field
|
|
240
|
+
reason: optional_empty
|
|
241
|
+
message: Optional field has no value
|
|
242
|
+
severity: recommended
|
|
243
|
+
priority: 3
|
|
244
|
+
apply:
|
|
245
|
+
patches:
|
|
246
|
+
- op: skip_field
|
|
247
|
+
field_id: team_members
|
|
248
|
+
role: agent
|
|
249
|
+
reason: No value in mock form
|
|
250
|
+
after:
|
|
251
|
+
required_issue_count: 0
|
|
252
|
+
markdown_sha256: e19d2e529bceab1dc64310fe2a75d70d062fa060230d7109eb541766c0a0f4e5
|
|
253
|
+
answered_field_count: 13
|
|
254
|
+
skipped_field_count: 8
|
|
187
255
|
final:
|
|
188
256
|
expect_complete: true
|
|
189
257
|
expected_completed_form: simple-skipped-filled.form.md
|