@aglyn/plugins-ai 1.0.0-beta.287 → 1.0.0-beta.288
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/package.json +17 -17
- package/src/lib/jobs/ai-business-profile-prefill.js +6 -3
- package/src/lib/jobs/ai-business-profile-prefill.js.map +1 -1
- package/src/lib/jobs/ai-job-site-datasets.js +5 -3
- package/src/lib/jobs/ai-job-site-datasets.js.map +1 -1
- package/src/lib/jobs/ai-job-text-step.js +2 -1
- package/src/lib/jobs/ai-job-text-step.js.map +1 -1
- package/src/lib/jobs/ai-layout-stock-photos.d.ts +97 -4
- package/src/lib/jobs/ai-layout-stock-photos.js +635 -154
- package/src/lib/jobs/ai-layout-stock-photos.js.map +1 -1
- package/src/lib/jobs/fixtures/ai-site-agl4092-datasets.d.ts +120 -0
- package/src/lib/jobs/fixtures/ai-site-agl4092-datasets.js +410 -0
- package/src/lib/jobs/fixtures/ai-site-agl4092-datasets.js.map +1 -0
- package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-recordings.d.ts +26 -0
- package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-recordings.js +714 -0
- package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-recordings.js.map +1 -0
- package/src/lib/layout-language/ai-layout-pictures.d.ts +9 -1
- package/src/lib/layout-language/ai-layout-pictures.js +14 -5
- package/src/lib/layout-language/ai-layout-pictures.js.map +1 -1
- package/src/lib/model/ai-plan-said-sections.d.ts +12 -3
- package/src/lib/model/ai-plan-said-sections.js +22 -5
- package/src/lib/model/ai-plan-said-sections.js.map +1 -1
- package/src/lib/model/ai-site-context.d.ts +6 -2
- package/src/lib/model/ai-site-context.js +8 -2
- package/src/lib/model/ai-site-context.js.map +1 -1
- package/src/lib/runtime/ai-dataset-generation.d.ts +26 -5
- package/src/lib/runtime/ai-dataset-generation.js +110 -9
- package/src/lib/runtime/ai-dataset-generation.js.map +1 -1
- package/src/lib/runtime/ai-doctrine-validators.js +2 -1
- package/src/lib/runtime/ai-doctrine-validators.js.map +1 -1
- package/src/lib/runtime/ai-doctrine.d.ts +5 -4
- package/src/lib/runtime/ai-doctrine.js +2 -1
- package/src/lib/runtime/ai-doctrine.js.map +1 -1
- package/src/lib/server/assist-build.d.ts +15 -1
- package/src/lib/server/assist-build.js +29 -3
- package/src/lib/server/assist-build.js.map +1 -1
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Aglyn LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import type { AiBuildPlan, AiBuildPlanCreate, AiBuildPlanScreen } from '../../model/ai-build-plan';
|
|
18
|
+
/**
|
|
19
|
+
* RECORDED, NOT GOLDEN (AGL-4092): what the 2026-10-28 Rut Runners Racing
|
|
20
|
+
* start in the test workspace planned and wrote, and the About page an Assist
|
|
21
|
+
* build then proposed for it, for the offline replays of Lane B. The business
|
|
22
|
+
* is fictional. No contact detail, street, person, workspace or site id is
|
|
23
|
+
* kept: screen ids are this fixture's own, and the contact details the brief
|
|
24
|
+
* and the plan quoted are left out.
|
|
25
|
+
*
|
|
26
|
+
* - The site job's "Riders" and "Race results" datasets, as their records
|
|
27
|
+
* were written: six sample riders whose every bio ends "Add this rider's
|
|
28
|
+
* story here.", and eleven sample races whose every past one has the
|
|
29
|
+
* result "Add finishing position". Dates are "" as the tool answers them;
|
|
30
|
+
* the platform sets them.
|
|
31
|
+
* - The Assist build's brief, as the chat wrote it, and its plan's About
|
|
32
|
+
* page, whose section names carried "[year founded]", "[team story]",
|
|
33
|
+
* "[age and class requirements]", "[email]" and "[phone]".
|
|
34
|
+
*/
|
|
35
|
+
/** The site job's "Riders" creation, as planned. */
|
|
36
|
+
export declare const RUT_1028_RIDERS: AiBuildPlanCreate;
|
|
37
|
+
/** The site job's "Race results" creation, as planned. */
|
|
38
|
+
export declare const RUT_1028_RACE_RESULTS: AiBuildPlanCreate;
|
|
39
|
+
/** The site job's pages, as planned (titles, addresses and sections). */
|
|
40
|
+
export declare const RUT_1028_SCREENS: AiBuildPlanScreen[];
|
|
41
|
+
/** The site job's brief, as the dataset unit's opened with it (no contact details). */
|
|
42
|
+
export declare const RUT_1028_BRIEF = "A 5-page website for Amateur motocross race team: rider profiles, race schedule and results, sponsors, and sponsor inquiries. It is for Local businesses that sponsor riders, race fans and families following the team, and young riders who want to join. Make it a fitness & sports site. Plan a page for each thing a visitor comes to do, with the contact form on the page a visitor opens to get in touch.";
|
|
43
|
+
/** The instruction every recorded bio ended with. */
|
|
44
|
+
export declare const RIDER_INSTRUCTION = "Add this rider's story here.";
|
|
45
|
+
/** The instruction every recorded past result was. */
|
|
46
|
+
export declare const RESULT_INSTRUCTION = "Add finishing position";
|
|
47
|
+
/** The first sentence of each recorded bio: what is left once the instruction is taken out. */
|
|
48
|
+
export declare const RIDER_BIOS: string[];
|
|
49
|
+
/** The "Riders" answer of 2026-10-28, through the tool: six samples, each bio ending in the instruction. */
|
|
50
|
+
export declare const RIDERS_INSTRUCTION_ANSWER: {
|
|
51
|
+
fields: {
|
|
52
|
+
name: string;
|
|
53
|
+
type: string;
|
|
54
|
+
}[];
|
|
55
|
+
records: {
|
|
56
|
+
values: string[];
|
|
57
|
+
sample: boolean;
|
|
58
|
+
}[];
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* A second answer of the same kind (AGL-4092): the six riders again, and one
|
|
62
|
+
* row whose only words are an instruction to the owner, which nothing is left
|
|
63
|
+
* of once it is taken out.
|
|
64
|
+
*/
|
|
65
|
+
export declare const RIDERS_INSTRUCTION_ANSWER_AGAIN: {
|
|
66
|
+
fields: {
|
|
67
|
+
name: string;
|
|
68
|
+
type: string;
|
|
69
|
+
}[];
|
|
70
|
+
records: {
|
|
71
|
+
values: string[];
|
|
72
|
+
sample: boolean;
|
|
73
|
+
}[];
|
|
74
|
+
};
|
|
75
|
+
/** The answer the re-ask is for: the six riders, each bio finished copy about its sample. */
|
|
76
|
+
export declare const RIDERS_FINISHED_ANSWER: {
|
|
77
|
+
fields: {
|
|
78
|
+
name: string;
|
|
79
|
+
type: string;
|
|
80
|
+
}[];
|
|
81
|
+
records: {
|
|
82
|
+
values: string[];
|
|
83
|
+
sample: boolean;
|
|
84
|
+
}[];
|
|
85
|
+
};
|
|
86
|
+
/** The "Race results" answer of 2026-10-28, through the tool: five to come, six behind, each past result the instruction. */
|
|
87
|
+
export declare const RACE_RESULTS_INSTRUCTION_ANSWER: {
|
|
88
|
+
fields: {
|
|
89
|
+
name: string;
|
|
90
|
+
type: string;
|
|
91
|
+
}[];
|
|
92
|
+
records: {
|
|
93
|
+
values: string[];
|
|
94
|
+
sample: boolean;
|
|
95
|
+
}[];
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* The brief the chat wrote for the About page, as the build tool carried it,
|
|
99
|
+
* with the contact details it quoted left out. Its second-to-last sentences
|
|
100
|
+
* are the chat's own: nothing in the build protocol asked for placeholders.
|
|
101
|
+
*/
|
|
102
|
+
export declare const ASSIST_ABOUT_BRIEF = "Create an About page (slug /about) for Rut Runners Racing, an amateur motocross race team for local businesses based in Lockhart, Texas, serving Lockhart, Luling, San Marcos, Austin and Central Texas. Audience: local businesses that sponsor riders, race fans and families following the team, and young riders who want to join. Tone: warm and plain, no exclamation marks. Cover who the team is, what it does, the area it serves, how local businesses can sponsor riders, and how young riders can join, with a link to the existing Sponsors, Riders and Contact pages. Use only the contact details on file. Do not invent names, history, prices, results or testimonials; use bracketed placeholders where details are missing. Also propose a warmer look for the site's theme: warmer colors, friendlier fonts and softer rounded corners, for the owner to apply in Setup \u2192 Theme.";
|
|
103
|
+
/** The About page the Assist build's plan proposed, its section names as planned (the street left out). */
|
|
104
|
+
export declare const ASSIST_ABOUT_PLAN: Pick<AiBuildPlan, 'screens'>;
|
|
105
|
+
/** What those section names read once nothing in them is a gap. */
|
|
106
|
+
export declare const ASSIST_ABOUT_SECTION_NAMES: string[];
|
|
107
|
+
/** The guided start's answers the site job carried (no contact details): the year founded among them. */
|
|
108
|
+
export declare const RUT_1028_INPUTS: {
|
|
109
|
+
businessType: string;
|
|
110
|
+
audience: string;
|
|
111
|
+
starter: string;
|
|
112
|
+
siteKind: string;
|
|
113
|
+
pages: number;
|
|
114
|
+
businessName: string;
|
|
115
|
+
city: string;
|
|
116
|
+
tagline: string;
|
|
117
|
+
founded: string;
|
|
118
|
+
serviceArea: string;
|
|
119
|
+
languages: string;
|
|
120
|
+
};
|
|
@@ -0,0 +1,410 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Aglyn LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/ /**
|
|
17
|
+
* RECORDED, NOT GOLDEN (AGL-4092): what the 2026-10-28 Rut Runners Racing
|
|
18
|
+
* start in the test workspace planned and wrote, and the About page an Assist
|
|
19
|
+
* build then proposed for it, for the offline replays of Lane B. The business
|
|
20
|
+
* is fictional. No contact detail, street, person, workspace or site id is
|
|
21
|
+
* kept: screen ids are this fixture's own, and the contact details the brief
|
|
22
|
+
* and the plan quoted are left out.
|
|
23
|
+
*
|
|
24
|
+
* - The site job's "Riders" and "Race results" datasets, as their records
|
|
25
|
+
* were written: six sample riders whose every bio ends "Add this rider's
|
|
26
|
+
* story here.", and eleven sample races whose every past one has the
|
|
27
|
+
* result "Add finishing position". Dates are "" as the tool answers them;
|
|
28
|
+
* the platform sets them.
|
|
29
|
+
* - The Assist build's brief, as the chat wrote it, and its plan's About
|
|
30
|
+
* page, whose section names carried "[year founded]", "[team story]",
|
|
31
|
+
* "[age and class requirements]", "[email]" and "[phone]".
|
|
32
|
+
*/ /** The site job's "Riders" creation, as planned. */ export const RUT_1028_RIDERS = {
|
|
33
|
+
kind: 'dataset',
|
|
34
|
+
name: 'Riders',
|
|
35
|
+
why: 'Rider profiles are a list of 4 or more similar items and none of the listed datasets holds them.',
|
|
36
|
+
duplicateOf: null,
|
|
37
|
+
fields: [
|
|
38
|
+
'Name',
|
|
39
|
+
'Class',
|
|
40
|
+
'Bike number',
|
|
41
|
+
'Hometown',
|
|
42
|
+
'Bio',
|
|
43
|
+
'Photo'
|
|
44
|
+
],
|
|
45
|
+
id: 'fxRiders28'
|
|
46
|
+
};
|
|
47
|
+
/** The site job's "Race results" creation, as planned. */ export const RUT_1028_RACE_RESULTS = {
|
|
48
|
+
kind: 'dataset',
|
|
49
|
+
name: 'Race results',
|
|
50
|
+
why: 'The race schedule and results are a list of events and no listed dataset holds them.',
|
|
51
|
+
duplicateOf: null,
|
|
52
|
+
fields: [
|
|
53
|
+
'Event',
|
|
54
|
+
'Date',
|
|
55
|
+
'Track',
|
|
56
|
+
'Class',
|
|
57
|
+
'Result',
|
|
58
|
+
'Status'
|
|
59
|
+
],
|
|
60
|
+
id: 'fxRaces28'
|
|
61
|
+
};
|
|
62
|
+
const page = (id, title, slug, sections)=>({
|
|
63
|
+
id,
|
|
64
|
+
title,
|
|
65
|
+
slug,
|
|
66
|
+
layout: 'new:Team site layout',
|
|
67
|
+
template: null,
|
|
68
|
+
duplicateOf: null,
|
|
69
|
+
nav: true,
|
|
70
|
+
seoTitle: title,
|
|
71
|
+
seoDescription: title,
|
|
72
|
+
record: null,
|
|
73
|
+
sections: sections.map(([name, uses, items])=>({
|
|
74
|
+
name,
|
|
75
|
+
uses,
|
|
76
|
+
items
|
|
77
|
+
}))
|
|
78
|
+
});
|
|
79
|
+
/** The site job's pages, as planned (titles, addresses and sections). */ export const RUT_1028_SCREENS = [
|
|
80
|
+
page('fx28Home', 'Home', '/', [
|
|
81
|
+
[
|
|
82
|
+
'Hero with team tagline and Meet the riders button',
|
|
83
|
+
[],
|
|
84
|
+
0
|
|
85
|
+
],
|
|
86
|
+
[
|
|
87
|
+
'How to start: four steps to join the team',
|
|
88
|
+
[],
|
|
89
|
+
4
|
|
90
|
+
],
|
|
91
|
+
[
|
|
92
|
+
'Programs: classes our riders race in',
|
|
93
|
+
[],
|
|
94
|
+
5
|
|
95
|
+
],
|
|
96
|
+
[
|
|
97
|
+
'The team in pictures: garage, track and podium',
|
|
98
|
+
[],
|
|
99
|
+
6
|
|
100
|
+
],
|
|
101
|
+
[
|
|
102
|
+
'Meet the riders',
|
|
103
|
+
[
|
|
104
|
+
'new:Riders'
|
|
105
|
+
],
|
|
106
|
+
4
|
|
107
|
+
],
|
|
108
|
+
[
|
|
109
|
+
'Questions people ask, answered',
|
|
110
|
+
[],
|
|
111
|
+
5
|
|
112
|
+
],
|
|
113
|
+
[
|
|
114
|
+
'Call to action: Contact the team button',
|
|
115
|
+
[],
|
|
116
|
+
0
|
|
117
|
+
]
|
|
118
|
+
]),
|
|
119
|
+
page('fx28Riders', 'Riders', '/riders', [
|
|
120
|
+
[
|
|
121
|
+
'Riders intro',
|
|
122
|
+
[],
|
|
123
|
+
0
|
|
124
|
+
],
|
|
125
|
+
[
|
|
126
|
+
'Rider profiles',
|
|
127
|
+
[
|
|
128
|
+
'new:Riders'
|
|
129
|
+
],
|
|
130
|
+
6
|
|
131
|
+
],
|
|
132
|
+
[
|
|
133
|
+
'Want to ride with us: join call to action',
|
|
134
|
+
[],
|
|
135
|
+
0
|
|
136
|
+
]
|
|
137
|
+
]),
|
|
138
|
+
page('fx28Schedule', 'Race Schedule and Results', '/schedule-results', [
|
|
139
|
+
[
|
|
140
|
+
'Season overview',
|
|
141
|
+
[],
|
|
142
|
+
0
|
|
143
|
+
],
|
|
144
|
+
[
|
|
145
|
+
'Upcoming races',
|
|
146
|
+
[
|
|
147
|
+
'new:Race results'
|
|
148
|
+
],
|
|
149
|
+
5
|
|
150
|
+
],
|
|
151
|
+
[
|
|
152
|
+
'Past results',
|
|
153
|
+
[
|
|
154
|
+
'new:Race results'
|
|
155
|
+
],
|
|
156
|
+
6
|
|
157
|
+
],
|
|
158
|
+
[
|
|
159
|
+
'Come watch: what to expect at the track',
|
|
160
|
+
[],
|
|
161
|
+
3
|
|
162
|
+
]
|
|
163
|
+
]),
|
|
164
|
+
page('fx28Sponsors', 'Sponsors', '/sponsors', [
|
|
165
|
+
[
|
|
166
|
+
'Why local businesses sponsor the team',
|
|
167
|
+
[],
|
|
168
|
+
0
|
|
169
|
+
],
|
|
170
|
+
[
|
|
171
|
+
'Ways to sponsor',
|
|
172
|
+
[],
|
|
173
|
+
4
|
|
174
|
+
],
|
|
175
|
+
[
|
|
176
|
+
'What working together is like',
|
|
177
|
+
[],
|
|
178
|
+
4
|
|
179
|
+
],
|
|
180
|
+
[
|
|
181
|
+
'Our current sponsors',
|
|
182
|
+
[],
|
|
183
|
+
0
|
|
184
|
+
],
|
|
185
|
+
[
|
|
186
|
+
'Call to action: become a sponsor button',
|
|
187
|
+
[],
|
|
188
|
+
0
|
|
189
|
+
]
|
|
190
|
+
]),
|
|
191
|
+
page('fx28Contact', 'Contact', '/contact', [
|
|
192
|
+
[
|
|
193
|
+
'Get in touch intro',
|
|
194
|
+
[],
|
|
195
|
+
0
|
|
196
|
+
],
|
|
197
|
+
[
|
|
198
|
+
'Sponsor, fan and join inquiry form',
|
|
199
|
+
[
|
|
200
|
+
'new:Sponsor and join inquiry form'
|
|
201
|
+
],
|
|
202
|
+
0
|
|
203
|
+
],
|
|
204
|
+
[
|
|
205
|
+
'Where to find us: address, phone, email and service area',
|
|
206
|
+
[],
|
|
207
|
+
5
|
|
208
|
+
]
|
|
209
|
+
])
|
|
210
|
+
];
|
|
211
|
+
/** The site job's brief, as the dataset unit's opened with it (no contact details). */ export const RUT_1028_BRIEF = 'A 5-page website for Amateur motocross race team: rider profiles, race schedule and results, sponsors, and sponsor inquiries. It is for Local businesses that sponsor riders, race fans and families following the team, and young riders who want to join. Make it a fitness & sports site. Plan a page for each thing a visitor comes to do, with the contact form on the page a visitor opens to get in touch.';
|
|
212
|
+
/** The instruction every recorded bio ended with. */ export const RIDER_INSTRUCTION = "Add this rider's story here.";
|
|
213
|
+
/** The instruction every recorded past result was. */ export const RESULT_INSTRUCTION = 'Add finishing position';
|
|
214
|
+
const RIDER_FIELDS = RUT_1028_RIDERS.fields.map((name)=>({
|
|
215
|
+
name,
|
|
216
|
+
type: 'text'
|
|
217
|
+
}));
|
|
218
|
+
/** One sample rider as the tool answers it: name, class, bike number, hometown, bio, photo. */ const rider = (name, klass, bio)=>({
|
|
219
|
+
values: [
|
|
220
|
+
name,
|
|
221
|
+
klass,
|
|
222
|
+
'',
|
|
223
|
+
'',
|
|
224
|
+
bio,
|
|
225
|
+
''
|
|
226
|
+
],
|
|
227
|
+
sample: true
|
|
228
|
+
});
|
|
229
|
+
/** The six riders' names, classes and the bios' first sentences, as written. */ const RIDERS = [
|
|
230
|
+
[
|
|
231
|
+
'Youth rider, 65cc class',
|
|
232
|
+
'65cc Beginner',
|
|
233
|
+
'A young rider learning race starts, corners and track etiquette with the team.'
|
|
234
|
+
],
|
|
235
|
+
[
|
|
236
|
+
'Youth rider, 85cc class',
|
|
237
|
+
'85cc Junior',
|
|
238
|
+
'A junior rider building speed and consistency through the season.'
|
|
239
|
+
],
|
|
240
|
+
[
|
|
241
|
+
'Amateur rider, 125cc class',
|
|
242
|
+
'125cc Amateur',
|
|
243
|
+
'An amateur rider racing local rounds for Rut Runners Racing.'
|
|
244
|
+
],
|
|
245
|
+
[
|
|
246
|
+
'Amateur rider, 250cc class',
|
|
247
|
+
'250cc Amateur',
|
|
248
|
+
"A full-size bike rider who races the team's Central Texas rounds."
|
|
249
|
+
],
|
|
250
|
+
[
|
|
251
|
+
"Women's class rider",
|
|
252
|
+
"Women's Amateur",
|
|
253
|
+
"A rider competing in the women's class for the team."
|
|
254
|
+
],
|
|
255
|
+
[
|
|
256
|
+
'Vet class rider',
|
|
257
|
+
'Vet Amateur',
|
|
258
|
+
'An experienced rider racing in the vet class and mentoring newer teammates.'
|
|
259
|
+
]
|
|
260
|
+
];
|
|
261
|
+
/** The first sentence of each recorded bio: what is left once the instruction is taken out. */ export const RIDER_BIOS = RIDERS.map(([, , bio])=>bio);
|
|
262
|
+
/** The "Riders" answer of 2026-10-28, through the tool: six samples, each bio ending in the instruction. */ export const RIDERS_INSTRUCTION_ANSWER = {
|
|
263
|
+
fields: RIDER_FIELDS,
|
|
264
|
+
records: RIDERS.map(([name, klass, bio])=>rider(name, klass, `${bio} ${RIDER_INSTRUCTION}`))
|
|
265
|
+
};
|
|
266
|
+
/**
|
|
267
|
+
* A second answer of the same kind (AGL-4092): the six riders again, and one
|
|
268
|
+
* row whose only words are an instruction to the owner, which nothing is left
|
|
269
|
+
* of once it is taken out.
|
|
270
|
+
*/ export const RIDERS_INSTRUCTION_ANSWER_AGAIN = {
|
|
271
|
+
fields: RIDER_FIELDS,
|
|
272
|
+
records: [
|
|
273
|
+
...RIDERS_INSTRUCTION_ANSWER.records,
|
|
274
|
+
{
|
|
275
|
+
values: [
|
|
276
|
+
"Add this rider's name here.",
|
|
277
|
+
'',
|
|
278
|
+
'',
|
|
279
|
+
'',
|
|
280
|
+
'',
|
|
281
|
+
''
|
|
282
|
+
],
|
|
283
|
+
sample: true
|
|
284
|
+
}
|
|
285
|
+
]
|
|
286
|
+
};
|
|
287
|
+
/** The answer the re-ask is for: the six riders, each bio finished copy about its sample. */ export const RIDERS_FINISHED_ANSWER = {
|
|
288
|
+
fields: RIDER_FIELDS,
|
|
289
|
+
records: RIDERS.map(([name, klass, bio])=>rider(name, klass, `${bio} Rides most weekends with the team at tracks around Central Texas.`))
|
|
290
|
+
};
|
|
291
|
+
const RACE_FIELDS = RUT_1028_RACE_RESULTS.fields.map((name)=>({
|
|
292
|
+
name,
|
|
293
|
+
type: 'text'
|
|
294
|
+
}));
|
|
295
|
+
/** One sample race as the tool answers it: event, date, track, class, result, status. */ const race = (event, track, klass, status, result = '')=>({
|
|
296
|
+
values: [
|
|
297
|
+
event,
|
|
298
|
+
'',
|
|
299
|
+
track,
|
|
300
|
+
klass,
|
|
301
|
+
result,
|
|
302
|
+
status
|
|
303
|
+
],
|
|
304
|
+
sample: true
|
|
305
|
+
});
|
|
306
|
+
/** The "Race results" answer of 2026-10-28, through the tool: five to come, six behind, each past result the instruction. */ export const RACE_RESULTS_INSTRUCTION_ANSWER = {
|
|
307
|
+
fields: RACE_FIELDS,
|
|
308
|
+
records: [
|
|
309
|
+
race('Season Opener Race Day', 'Local motocross track', 'Youth 65cc', 'Upcoming'),
|
|
310
|
+
race('Series Round 2', 'Central Texas track', 'Youth 85cc', 'Upcoming'),
|
|
311
|
+
race('Lockhart Home Track Race', 'Lockhart track', 'Beginner', 'Upcoming'),
|
|
312
|
+
race('Series Round 3', 'Central Texas track', 'Junior', 'Upcoming'),
|
|
313
|
+
race('Season Finale Race Day', 'Central Texas track', 'Open Amateur', 'Upcoming'),
|
|
314
|
+
race('Series Round 1', 'Central Texas track', 'Youth 65cc', 'Past', RESULT_INSTRUCTION),
|
|
315
|
+
race('Spring Club Race', 'Local motocross track', 'Youth 85cc', 'Past', RESULT_INSTRUCTION),
|
|
316
|
+
race('San Marcos Area Race Day', 'San Marcos area track', 'Beginner', 'Past', RESULT_INSTRUCTION),
|
|
317
|
+
race('Austin Area Race Day', 'Austin area track', 'Junior', 'Past', RESULT_INSTRUCTION),
|
|
318
|
+
race('Luling Area Race Day', 'Luling area track', 'Open Amateur', 'Past', RESULT_INSTRUCTION),
|
|
319
|
+
race('Practice and Club Day', 'Local motocross track', 'Beginner', 'Past', RESULT_INSTRUCTION)
|
|
320
|
+
]
|
|
321
|
+
};
|
|
322
|
+
// ── The Assist build (AGL-4092) ────────────────────────────────────────
|
|
323
|
+
/**
|
|
324
|
+
* The brief the chat wrote for the About page, as the build tool carried it,
|
|
325
|
+
* with the contact details it quoted left out. Its second-to-last sentences
|
|
326
|
+
* are the chat's own: nothing in the build protocol asked for placeholders.
|
|
327
|
+
*/ export const ASSIST_ABOUT_BRIEF = "Create an About page (slug /about) for Rut Runners Racing, an amateur motocross race team for local businesses based in Lockhart, Texas, serving Lockhart, Luling, San Marcos, Austin and Central Texas. Audience: local businesses that sponsor riders, race fans and families following the team, and young riders who want to join. Tone: warm and plain, no exclamation marks. Cover who the team is, what it does, the area it serves, how local businesses can sponsor riders, and how young riders can join, with a link to the existing Sponsors, Riders and Contact pages. Use only the contact details on file. Do not invent names, history, prices, results or testimonials; use bracketed placeholders where details are missing. Also propose a warmer look for the site's theme: warmer colors, friendlier fonts and softer rounded corners, for the owner to apply in Setup → Theme.";
|
|
328
|
+
/** The About page the Assist build's plan proposed, its section names as planned (the street left out). */ export const ASSIST_ABOUT_PLAN = {
|
|
329
|
+
screens: [
|
|
330
|
+
{
|
|
331
|
+
id: 'fx28About',
|
|
332
|
+
title: 'About',
|
|
333
|
+
slug: '/about',
|
|
334
|
+
layout: 'fxLayout',
|
|
335
|
+
template: null,
|
|
336
|
+
duplicateOf: null,
|
|
337
|
+
nav: true,
|
|
338
|
+
seoTitle: 'About Rut Runners Racing | Amateur Motocross in Lockhart, TX',
|
|
339
|
+
seoDescription: 'Meet Rut Runners Racing, an amateur motocross team for local businesses in Lockhart, Texas. See how to sponsor a rider or join the team.',
|
|
340
|
+
record: null,
|
|
341
|
+
sections: [
|
|
342
|
+
{
|
|
343
|
+
name: 'Hero: About the team, with the one h1',
|
|
344
|
+
uses: [],
|
|
345
|
+
items: 0
|
|
346
|
+
},
|
|
347
|
+
{
|
|
348
|
+
name: 'Who we are: an amateur motocross team for local businesses, with [year founded] and [team story]',
|
|
349
|
+
uses: [],
|
|
350
|
+
items: 0
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
name: 'What the team does: racing, riders and following along',
|
|
354
|
+
uses: [],
|
|
355
|
+
items: 3
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
name: 'Where we race and who we serve: Lockhart, Luling, San Marcos, Austin and Central Texas',
|
|
359
|
+
uses: [],
|
|
360
|
+
items: 5
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
name: 'Sponsor a rider: how local businesses can help, with a link to the Sponsors page',
|
|
364
|
+
uses: [
|
|
365
|
+
'fxSponsors'
|
|
366
|
+
],
|
|
367
|
+
items: 0
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
name: 'Young riders: how to join, with a link to the Riders page, and [age and class requirements]',
|
|
371
|
+
uses: [
|
|
372
|
+
'fxRiders'
|
|
373
|
+
],
|
|
374
|
+
items: 0
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
name: 'Contact details: [email], [phone], Lockhart, TX, United States, with a link to the Contact page',
|
|
378
|
+
uses: [
|
|
379
|
+
'fxContact'
|
|
380
|
+
],
|
|
381
|
+
items: 3
|
|
382
|
+
}
|
|
383
|
+
]
|
|
384
|
+
}
|
|
385
|
+
]
|
|
386
|
+
};
|
|
387
|
+
/** What those section names read once nothing in them is a gap. */ export const ASSIST_ABOUT_SECTION_NAMES = [
|
|
388
|
+
'Hero: About the team, with the one h1',
|
|
389
|
+
'Who we are: an amateur motocross team for local businesses',
|
|
390
|
+
'What the team does: racing, riders and following along',
|
|
391
|
+
'Where we race and who we serve: Lockhart, Luling, San Marcos, Austin and Central Texas',
|
|
392
|
+
'Sponsor a rider: how local businesses can help, with a link to the Sponsors page',
|
|
393
|
+
'Young riders: how to join, with a link to the Riders page',
|
|
394
|
+
'Contact details: Lockhart, TX, United States, with a link to the Contact page'
|
|
395
|
+
];
|
|
396
|
+
/** The guided start's answers the site job carried (no contact details): the year founded among them. */ export const RUT_1028_INPUTS = {
|
|
397
|
+
businessType: 'Amateur motocross race team: rider profiles, race schedule and results, sponsors, and sponsor inquiries',
|
|
398
|
+
audience: 'Local businesses that sponsor riders, race fans and families following the team, and young riders who want to join',
|
|
399
|
+
starter: 'business',
|
|
400
|
+
siteKind: 'fitness',
|
|
401
|
+
pages: 5,
|
|
402
|
+
businessName: 'Rut Runners Racing',
|
|
403
|
+
city: 'Lockhart',
|
|
404
|
+
tagline: 'Built in Lockhart, raced across Texas',
|
|
405
|
+
founded: '2019',
|
|
406
|
+
serviceArea: 'Lockhart\nLuling\nSan Marcos\nAustin\nCentral Texas',
|
|
407
|
+
languages: 'English, Spanish'
|
|
408
|
+
};
|
|
409
|
+
|
|
410
|
+
//# sourceMappingURL=ai-site-agl4092-datasets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../libs/plugins/ai/src/lib/jobs/fixtures/ai-site-agl4092-datasets.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { AiBuildPlan, AiBuildPlanCreate, AiBuildPlanScreen } from '../../model/ai-build-plan'\n\n/**\n * RECORDED, NOT GOLDEN (AGL-4092): what the 2026-10-28 Rut Runners Racing\n * start in the test workspace planned and wrote, and the About page an Assist\n * build then proposed for it, for the offline replays of Lane B. The business\n * is fictional. No contact detail, street, person, workspace or site id is\n * kept: screen ids are this fixture's own, and the contact details the brief\n * and the plan quoted are left out.\n *\n * - The site job's \"Riders\" and \"Race results\" datasets, as their records\n * were written: six sample riders whose every bio ends \"Add this rider's\n * story here.\", and eleven sample races whose every past one has the\n * result \"Add finishing position\". Dates are \"\" as the tool answers them;\n * the platform sets them.\n * - The Assist build's brief, as the chat wrote it, and its plan's About\n * page, whose section names carried \"[year founded]\", \"[team story]\",\n * \"[age and class requirements]\", \"[email]\" and \"[phone]\".\n */\n\n/** The site job's \"Riders\" creation, as planned. */\nexport const RUT_1028_RIDERS: AiBuildPlanCreate = {\n kind: 'dataset',\n name: 'Riders',\n why: 'Rider profiles are a list of 4 or more similar items and none of the listed datasets holds them.',\n duplicateOf: null,\n fields: ['Name', 'Class', 'Bike number', 'Hometown', 'Bio', 'Photo'],\n id: 'fxRiders28',\n}\n\n/** The site job's \"Race results\" creation, as planned. */\nexport const RUT_1028_RACE_RESULTS: AiBuildPlanCreate = {\n kind: 'dataset',\n name: 'Race results',\n why: 'The race schedule and results are a list of events and no listed dataset holds them.',\n duplicateOf: null,\n fields: ['Event', 'Date', 'Track', 'Class', 'Result', 'Status'],\n id: 'fxRaces28',\n}\n\nconst page = (id: string, title: string, slug: string, sections: Array<[string, string[], number]>): AiBuildPlanScreen => ({\n id,\n title,\n slug,\n layout: 'new:Team site layout',\n template: null,\n duplicateOf: null,\n nav: true,\n seoTitle: title,\n seoDescription: title,\n record: null,\n sections: sections.map(([name, uses, items]) => ({ name, uses, items })),\n})\n\n/** The site job's pages, as planned (titles, addresses and sections). */\nexport const RUT_1028_SCREENS: AiBuildPlanScreen[] = [\n page('fx28Home', 'Home', '/', [\n ['Hero with team tagline and Meet the riders button', [], 0],\n ['How to start: four steps to join the team', [], 4],\n ['Programs: classes our riders race in', [], 5],\n ['The team in pictures: garage, track and podium', [], 6],\n ['Meet the riders', ['new:Riders'], 4],\n ['Questions people ask, answered', [], 5],\n ['Call to action: Contact the team button', [], 0],\n ]),\n page('fx28Riders', 'Riders', '/riders', [\n ['Riders intro', [], 0],\n ['Rider profiles', ['new:Riders'], 6],\n ['Want to ride with us: join call to action', [], 0],\n ]),\n page('fx28Schedule', 'Race Schedule and Results', '/schedule-results', [\n ['Season overview', [], 0],\n ['Upcoming races', ['new:Race results'], 5],\n ['Past results', ['new:Race results'], 6],\n ['Come watch: what to expect at the track', [], 3],\n ]),\n page('fx28Sponsors', 'Sponsors', '/sponsors', [\n ['Why local businesses sponsor the team', [], 0],\n ['Ways to sponsor', [], 4],\n ['What working together is like', [], 4],\n ['Our current sponsors', [], 0],\n ['Call to action: become a sponsor button', [], 0],\n ]),\n page('fx28Contact', 'Contact', '/contact', [\n ['Get in touch intro', [], 0],\n ['Sponsor, fan and join inquiry form', ['new:Sponsor and join inquiry form'], 0],\n ['Where to find us: address, phone, email and service area', [], 5],\n ]),\n]\n\n/** The site job's brief, as the dataset unit's opened with it (no contact details). */\nexport const RUT_1028_BRIEF =\n 'A 5-page website for Amateur motocross race team: rider profiles, race schedule and results, sponsors, and sponsor inquiries. It is for Local businesses that sponsor riders, race fans and families following the team, and young riders who want to join. Make it a fitness & sports site. Plan a page for each thing a visitor comes to do, with the contact form on the page a visitor opens to get in touch.'\n\n/** The instruction every recorded bio ended with. */\nexport const RIDER_INSTRUCTION = \"Add this rider's story here.\"\n\n/** The instruction every recorded past result was. */\nexport const RESULT_INSTRUCTION = 'Add finishing position'\n\nconst RIDER_FIELDS = RUT_1028_RIDERS.fields.map((name) => ({ name, type: 'text' }))\n\n/** One sample rider as the tool answers it: name, class, bike number, hometown, bio, photo. */\nconst rider = (name: string, klass: string, bio: string) => ({ values: [name, klass, '', '', bio, ''], sample: true })\n\n/** The six riders' names, classes and the bios' first sentences, as written. */\nconst RIDERS: Array<[string, string, string]> = [\n ['Youth rider, 65cc class', '65cc Beginner', 'A young rider learning race starts, corners and track etiquette with the team.'],\n ['Youth rider, 85cc class', '85cc Junior', 'A junior rider building speed and consistency through the season.'],\n ['Amateur rider, 125cc class', '125cc Amateur', 'An amateur rider racing local rounds for Rut Runners Racing.'],\n ['Amateur rider, 250cc class', '250cc Amateur', \"A full-size bike rider who races the team's Central Texas rounds.\"],\n [\"Women's class rider\", \"Women's Amateur\", \"A rider competing in the women's class for the team.\"],\n ['Vet class rider', 'Vet Amateur', 'An experienced rider racing in the vet class and mentoring newer teammates.'],\n]\n\n/** The first sentence of each recorded bio: what is left once the instruction is taken out. */\nexport const RIDER_BIOS = RIDERS.map(([, , bio]) => bio)\n\n/** The \"Riders\" answer of 2026-10-28, through the tool: six samples, each bio ending in the instruction. */\nexport const RIDERS_INSTRUCTION_ANSWER = {\n fields: RIDER_FIELDS,\n records: RIDERS.map(([name, klass, bio]) => rider(name, klass, `${bio} ${RIDER_INSTRUCTION}`)),\n}\n\n/**\n * A second answer of the same kind (AGL-4092): the six riders again, and one\n * row whose only words are an instruction to the owner, which nothing is left\n * of once it is taken out.\n */\nexport const RIDERS_INSTRUCTION_ANSWER_AGAIN = {\n fields: RIDER_FIELDS,\n records: [...RIDERS_INSTRUCTION_ANSWER.records, { values: [\"Add this rider's name here.\", '', '', '', '', ''], sample: true }],\n}\n\n/** The answer the re-ask is for: the six riders, each bio finished copy about its sample. */\nexport const RIDERS_FINISHED_ANSWER = {\n fields: RIDER_FIELDS,\n records: RIDERS.map(([name, klass, bio]) => rider(name, klass, `${bio} Rides most weekends with the team at tracks around Central Texas.`)),\n}\n\nconst RACE_FIELDS = RUT_1028_RACE_RESULTS.fields.map((name) => ({ name, type: 'text' }))\n\n/** One sample race as the tool answers it: event, date, track, class, result, status. */\nconst race = (event: string, track: string, klass: string, status: 'Upcoming' | 'Past', result = '') => ({\n values: [event, '', track, klass, result, status],\n sample: true,\n})\n\n/** The \"Race results\" answer of 2026-10-28, through the tool: five to come, six behind, each past result the instruction. */\nexport const RACE_RESULTS_INSTRUCTION_ANSWER = {\n fields: RACE_FIELDS,\n records: [\n race('Season Opener Race Day', 'Local motocross track', 'Youth 65cc', 'Upcoming'),\n race('Series Round 2', 'Central Texas track', 'Youth 85cc', 'Upcoming'),\n race('Lockhart Home Track Race', 'Lockhart track', 'Beginner', 'Upcoming'),\n race('Series Round 3', 'Central Texas track', 'Junior', 'Upcoming'),\n race('Season Finale Race Day', 'Central Texas track', 'Open Amateur', 'Upcoming'),\n race('Series Round 1', 'Central Texas track', 'Youth 65cc', 'Past', RESULT_INSTRUCTION),\n race('Spring Club Race', 'Local motocross track', 'Youth 85cc', 'Past', RESULT_INSTRUCTION),\n race('San Marcos Area Race Day', 'San Marcos area track', 'Beginner', 'Past', RESULT_INSTRUCTION),\n race('Austin Area Race Day', 'Austin area track', 'Junior', 'Past', RESULT_INSTRUCTION),\n race('Luling Area Race Day', 'Luling area track', 'Open Amateur', 'Past', RESULT_INSTRUCTION),\n race('Practice and Club Day', 'Local motocross track', 'Beginner', 'Past', RESULT_INSTRUCTION),\n ],\n}\n\n// ── The Assist build (AGL-4092) ────────────────────────────────────────\n\n/**\n * The brief the chat wrote for the About page, as the build tool carried it,\n * with the contact details it quoted left out. Its second-to-last sentences\n * are the chat's own: nothing in the build protocol asked for placeholders.\n */\nexport const ASSIST_ABOUT_BRIEF =\n \"Create an About page (slug /about) for Rut Runners Racing, an amateur motocross race team for local businesses based in Lockhart, Texas, serving Lockhart, Luling, San Marcos, Austin and Central Texas. Audience: local businesses that sponsor riders, race fans and families following the team, and young riders who want to join. Tone: warm and plain, no exclamation marks. Cover who the team is, what it does, the area it serves, how local businesses can sponsor riders, and how young riders can join, with a link to the existing Sponsors, Riders and Contact pages. Use only the contact details on file. Do not invent names, history, prices, results or testimonials; use bracketed placeholders where details are missing. Also propose a warmer look for the site's theme: warmer colors, friendlier fonts and softer rounded corners, for the owner to apply in Setup → Theme.\"\n\n/** The About page the Assist build's plan proposed, its section names as planned (the street left out). */\nexport const ASSIST_ABOUT_PLAN: Pick<AiBuildPlan, 'screens'> = {\n screens: [\n {\n id: 'fx28About',\n title: 'About',\n slug: '/about',\n layout: 'fxLayout',\n template: null,\n duplicateOf: null,\n nav: true,\n seoTitle: 'About Rut Runners Racing | Amateur Motocross in Lockhart, TX',\n seoDescription:\n 'Meet Rut Runners Racing, an amateur motocross team for local businesses in Lockhart, Texas. See how to sponsor a rider or join the team.',\n record: null,\n sections: [\n { name: 'Hero: About the team, with the one h1', uses: [], items: 0 },\n { name: 'Who we are: an amateur motocross team for local businesses, with [year founded] and [team story]', uses: [], items: 0 },\n { name: 'What the team does: racing, riders and following along', uses: [], items: 3 },\n { name: 'Where we race and who we serve: Lockhart, Luling, San Marcos, Austin and Central Texas', uses: [], items: 5 },\n { name: 'Sponsor a rider: how local businesses can help, with a link to the Sponsors page', uses: ['fxSponsors'], items: 0 },\n { name: 'Young riders: how to join, with a link to the Riders page, and [age and class requirements]', uses: ['fxRiders'], items: 0 },\n { name: 'Contact details: [email], [phone], Lockhart, TX, United States, with a link to the Contact page', uses: ['fxContact'], items: 3 },\n ],\n },\n ],\n}\n\n/** What those section names read once nothing in them is a gap. */\nexport const ASSIST_ABOUT_SECTION_NAMES = [\n 'Hero: About the team, with the one h1',\n 'Who we are: an amateur motocross team for local businesses',\n 'What the team does: racing, riders and following along',\n 'Where we race and who we serve: Lockhart, Luling, San Marcos, Austin and Central Texas',\n 'Sponsor a rider: how local businesses can help, with a link to the Sponsors page',\n 'Young riders: how to join, with a link to the Riders page',\n 'Contact details: Lockhart, TX, United States, with a link to the Contact page',\n]\n\n/** The guided start's answers the site job carried (no contact details): the year founded among them. */\nexport const RUT_1028_INPUTS = {\n businessType: 'Amateur motocross race team: rider profiles, race schedule and results, sponsors, and sponsor inquiries',\n audience: 'Local businesses that sponsor riders, race fans and families following the team, and young riders who want to join',\n starter: 'business',\n siteKind: 'fitness',\n pages: 5,\n businessName: 'Rut Runners Racing',\n city: 'Lockhart',\n tagline: 'Built in Lockhart, raced across Texas',\n founded: '2019',\n serviceArea: 'Lockhart\\nLuling\\nSan Marcos\\nAustin\\nCentral Texas',\n languages: 'English, Spanish',\n}\n"],"names":["RUT_1028_RIDERS","kind","name","why","duplicateOf","fields","id","RUT_1028_RACE_RESULTS","page","title","slug","sections","layout","template","nav","seoTitle","seoDescription","record","map","uses","items","RUT_1028_SCREENS","RUT_1028_BRIEF","RIDER_INSTRUCTION","RESULT_INSTRUCTION","RIDER_FIELDS","type","rider","klass","bio","values","sample","RIDERS","RIDER_BIOS","RIDERS_INSTRUCTION_ANSWER","records","RIDERS_INSTRUCTION_ANSWER_AGAIN","RIDERS_FINISHED_ANSWER","RACE_FIELDS","race","event","track","status","result","RACE_RESULTS_INSTRUCTION_ANSWER","ASSIST_ABOUT_BRIEF","ASSIST_ABOUT_PLAN","screens","ASSIST_ABOUT_SECTION_NAMES","RUT_1028_INPUTS","businessType","audience","starter","siteKind","pages","businessName","city","tagline","founded","serviceArea","languages"],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Aglyn LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import type { StockPhoto } from '@aglyn/aglyn/plugin-manager/stock-photo-provider';
|
|
18
|
+
/** Every recorded hit, by id. */
|
|
19
|
+
export declare const AGL4092_HITS: ReadonlyMap<string, StockPhoto>;
|
|
20
|
+
/** What each search answered on 2026-10-28, by its words; its shape as it was asked. */
|
|
21
|
+
export declare const AGL4092_ANSWERS: Readonly<Record<string, readonly StockPhoto[]>>;
|
|
22
|
+
/**
|
|
23
|
+
* What each people search answered (the people category), by its words. Its
|
|
24
|
+
* first photo was production's, read by id (it was not in the 2026-10-28 answer).
|
|
25
|
+
*/
|
|
26
|
+
export declare const AGL4092_PEOPLE_ANSWERS: Readonly<Record<string, readonly StockPhoto[]>>;
|