@tiangong-ai/cli 0.0.50 → 0.0.55
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/AGENTS.md +22 -2
- package/README.md +200 -7
- package/dist/cli.js +10 -1
- package/dist/cli.js.map +1 -1
- package/dist/data/builtins.d.ts +1 -0
- package/dist/data/builtins.js +40 -0
- package/dist/data/builtins.js.map +1 -0
- package/dist/data/catalog.d.ts +25 -0
- package/dist/data/catalog.js +305 -0
- package/dist/data/catalog.js.map +1 -0
- package/dist/data/commands.d.ts +9 -0
- package/dist/data/commands.js +307 -0
- package/dist/data/commands.js.map +1 -0
- package/dist/data/connectors/airnow-hourly-observations.d.ts +2 -0
- package/dist/data/connectors/airnow-hourly-observations.js +522 -0
- package/dist/data/connectors/airnow-hourly-observations.js.map +1 -0
- package/dist/data/connectors/airnow-hourly-observations.schemas.d.ts +299 -0
- package/dist/data/connectors/airnow-hourly-observations.schemas.js +188 -0
- package/dist/data/connectors/airnow-hourly-observations.schemas.js.map +1 -0
- package/dist/data/connectors/bluesky-public-posts.d.ts +2 -0
- package/dist/data/connectors/bluesky-public-posts.js +705 -0
- package/dist/data/connectors/bluesky-public-posts.js.map +1 -0
- package/dist/data/connectors/bluesky-public-posts.schemas.d.ts +733 -0
- package/dist/data/connectors/bluesky-public-posts.schemas.js +422 -0
- package/dist/data/connectors/bluesky-public-posts.schemas.js.map +1 -0
- package/dist/data/connectors/epa-eis-records.d.ts +2 -0
- package/dist/data/connectors/epa-eis-records.js +566 -0
- package/dist/data/connectors/epa-eis-records.js.map +1 -0
- package/dist/data/connectors/epa-eis-records.schemas.d.ts +199 -0
- package/dist/data/connectors/epa-eis-records.schemas.js +146 -0
- package/dist/data/connectors/epa-eis-records.schemas.js.map +1 -0
- package/dist/data/connectors/federal-register-documents.d.ts +2 -0
- package/dist/data/connectors/federal-register-documents.js +517 -0
- package/dist/data/connectors/federal-register-documents.js.map +1 -0
- package/dist/data/connectors/federal-register-documents.schemas.d.ts +357 -0
- package/dist/data/connectors/federal-register-documents.schemas.js +243 -0
- package/dist/data/connectors/federal-register-documents.schemas.js.map +1 -0
- package/dist/data/connectors/gdelt-doc-search.d.ts +2 -0
- package/dist/data/connectors/gdelt-doc-search.js +658 -0
- package/dist/data/connectors/gdelt-doc-search.js.map +1 -0
- package/dist/data/connectors/gdelt-doc-search.schemas.d.ts +446 -0
- package/dist/data/connectors/gdelt-doc-search.schemas.js +330 -0
- package/dist/data/connectors/gdelt-doc-search.schemas.js.map +1 -0
- package/dist/data/connectors/gdelt-file-feeds.d.ts +4 -0
- package/dist/data/connectors/gdelt-file-feeds.js +591 -0
- package/dist/data/connectors/gdelt-file-feeds.js.map +1 -0
- package/dist/data/connectors/gdelt-file-feeds.schemas.d.ts +40 -0
- package/dist/data/connectors/gdelt-file-feeds.schemas.js +256 -0
- package/dist/data/connectors/gdelt-file-feeds.schemas.js.map +1 -0
- package/dist/data/connectors/nasa-firms-fire.d.ts +2 -0
- package/dist/data/connectors/nasa-firms-fire.js +578 -0
- package/dist/data/connectors/nasa-firms-fire.js.map +1 -0
- package/dist/data/connectors/nasa-firms-fire.schemas.d.ts +369 -0
- package/dist/data/connectors/nasa-firms-fire.schemas.js +238 -0
- package/dist/data/connectors/nasa-firms-fire.schemas.js.map +1 -0
- package/dist/data/connectors/open-meteo-air-quality.d.ts +2 -0
- package/dist/data/connectors/open-meteo-air-quality.js +401 -0
- package/dist/data/connectors/open-meteo-air-quality.js.map +1 -0
- package/dist/data/connectors/open-meteo-air-quality.schemas.d.ts +335 -0
- package/dist/data/connectors/open-meteo-air-quality.schemas.js +225 -0
- package/dist/data/connectors/open-meteo-air-quality.schemas.js.map +1 -0
- package/dist/data/connectors/open-meteo-flood.d.ts +2 -0
- package/dist/data/connectors/open-meteo-flood.js +446 -0
- package/dist/data/connectors/open-meteo-flood.js.map +1 -0
- package/dist/data/connectors/open-meteo-flood.schemas.d.ts +388 -0
- package/dist/data/connectors/open-meteo-flood.schemas.js +227 -0
- package/dist/data/connectors/open-meteo-flood.schemas.js.map +1 -0
- package/dist/data/connectors/open-meteo-historical-weather.d.ts +2 -0
- package/dist/data/connectors/open-meteo-historical-weather.js +468 -0
- package/dist/data/connectors/open-meteo-historical-weather.js.map +1 -0
- package/dist/data/connectors/open-meteo-historical-weather.schemas.d.ts +420 -0
- package/dist/data/connectors/open-meteo-historical-weather.schemas.js +282 -0
- package/dist/data/connectors/open-meteo-historical-weather.schemas.js.map +1 -0
- package/dist/data/connectors/openaq-air-quality.d.ts +2 -0
- package/dist/data/connectors/openaq-air-quality.js +734 -0
- package/dist/data/connectors/openaq-air-quality.js.map +1 -0
- package/dist/data/connectors/openaq-air-quality.schemas.d.ts +1067 -0
- package/dist/data/connectors/openaq-air-quality.schemas.js +512 -0
- package/dist/data/connectors/openaq-air-quality.schemas.js.map +1 -0
- package/dist/data/connectors/regulations-gov-attachments.d.ts +2 -0
- package/dist/data/connectors/regulations-gov-attachments.js +486 -0
- package/dist/data/connectors/regulations-gov-attachments.js.map +1 -0
- package/dist/data/connectors/regulations-gov-attachments.schemas.d.ts +270 -0
- package/dist/data/connectors/regulations-gov-attachments.schemas.js +181 -0
- package/dist/data/connectors/regulations-gov-attachments.schemas.js.map +1 -0
- package/dist/data/connectors/regulations-gov-comments.d.ts +2 -0
- package/dist/data/connectors/regulations-gov-comments.js +718 -0
- package/dist/data/connectors/regulations-gov-comments.js.map +1 -0
- package/dist/data/connectors/regulations-gov-comments.schemas.d.ts +717 -0
- package/dist/data/connectors/regulations-gov-comments.schemas.js +389 -0
- package/dist/data/connectors/regulations-gov-comments.schemas.js.map +1 -0
- package/dist/data/connectors/usbr-project-records.d.ts +2 -0
- package/dist/data/connectors/usbr-project-records.js +467 -0
- package/dist/data/connectors/usbr-project-records.js.map +1 -0
- package/dist/data/connectors/usbr-project-records.schemas.d.ts +194 -0
- package/dist/data/connectors/usbr-project-records.schemas.js +137 -0
- package/dist/data/connectors/usbr-project-records.schemas.js.map +1 -0
- package/dist/data/connectors/usbr-rise.d.ts +2 -0
- package/dist/data/connectors/usbr-rise.js +625 -0
- package/dist/data/connectors/usbr-rise.js.map +1 -0
- package/dist/data/connectors/usbr-rise.schemas.d.ts +623 -0
- package/dist/data/connectors/usbr-rise.schemas.js +407 -0
- package/dist/data/connectors/usbr-rise.schemas.js.map +1 -0
- package/dist/data/connectors/usgs-water-instantaneous-values.d.ts +2 -0
- package/dist/data/connectors/usgs-water-instantaneous-values.js +521 -0
- package/dist/data/connectors/usgs-water-instantaneous-values.js.map +1 -0
- package/dist/data/connectors/usgs-water-instantaneous-values.schemas.d.ts +496 -0
- package/dist/data/connectors/usgs-water-instantaneous-values.schemas.js +309 -0
- package/dist/data/connectors/usgs-water-instantaneous-values.schemas.js.map +1 -0
- package/dist/data/connectors/youtube-public-content.d.ts +2 -0
- package/dist/data/connectors/youtube-public-content.js +974 -0
- package/dist/data/connectors/youtube-public-content.js.map +1 -0
- package/dist/data/connectors/youtube-public-content.schemas.d.ts +773 -0
- package/dist/data/connectors/youtube-public-content.schemas.js +567 -0
- package/dist/data/connectors/youtube-public-content.schemas.js.map +1 -0
- package/dist/data/contracts.d.ts +374 -0
- package/dist/data/contracts.js +10 -0
- package/dist/data/contracts.js.map +1 -0
- package/dist/data/runtime/artifacts.d.ts +6 -0
- package/dist/data/runtime/artifacts.js +103 -0
- package/dist/data/runtime/artifacts.js.map +1 -0
- package/dist/data/runtime/bounded-http.d.ts +10 -0
- package/dist/data/runtime/bounded-http.js +403 -0
- package/dist/data/runtime/bounded-http.js.map +1 -0
- package/dist/data/runtime/canonical-json.d.ts +3 -0
- package/dist/data/runtime/canonical-json.js +59 -0
- package/dist/data/runtime/canonical-json.js.map +1 -0
- package/dist/data/runtime/credentials.d.ts +14 -0
- package/dist/data/runtime/credentials.js +67 -0
- package/dist/data/runtime/credentials.js.map +1 -0
- package/dist/data/runtime/csv.d.ts +4 -0
- package/dist/data/runtime/csv.js +51 -0
- package/dist/data/runtime/csv.js.map +1 -0
- package/dist/data/runtime/errors.d.ts +22 -0
- package/dist/data/runtime/errors.js +101 -0
- package/dist/data/runtime/errors.js.map +1 -0
- package/dist/data/runtime/execute.d.ts +11 -0
- package/dist/data/runtime/execute.js +358 -0
- package/dist/data/runtime/execute.js.map +1 -0
- package/dist/data/runtime/receipts.d.ts +13 -0
- package/dist/data/runtime/receipts.js +38 -0
- package/dist/data/runtime/receipts.js.map +1 -0
- package/dist/data/schemas/catalog.v1.json +73 -0
- package/dist/data/schemas/core-receipt.v1.json +117 -0
- package/dist/data/schemas/describe.v1.json +24 -0
- package/dist/data/schemas/discovery.v1.json +130 -0
- package/dist/data/schemas/doctor.v1.json +40 -0
- package/dist/data/schemas/error.v1.json +48 -0
- package/dist/data/schemas/manifest.v1.json +174 -0
- package/dist/data/schemas/run-request.v1.json +37 -0
- package/dist/data/schemas/run-result.v1.json +77 -0
- package/dist/data/schemas.d.ts +27 -0
- package/dist/data/schemas.js +69 -0
- package/dist/data/schemas.js.map +1 -0
- package/dist/env.js.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/http.js.map +1 -1
- package/dist/kb/config.js.map +1 -1
- package/dist/kb/pipeline-health.js.map +1 -1
- package/dist/research/orchestration.js +71 -11
- package/dist/research/orchestration.js.map +1 -1
- package/dist/research/workspace/acquisition.js +70 -5
- package/dist/research/workspace/acquisition.js.map +1 -1
- package/dist/research/workspace/audit-bundle.js +7 -2
- package/dist/research/workspace/audit-bundle.js.map +1 -1
- package/dist/research/workspace/broker.js.map +1 -1
- package/dist/research/workspace/constants.js.map +1 -1
- package/dist/research/workspace/credentials.d.ts +3 -0
- package/dist/research/workspace/credentials.js +20 -3
- package/dist/research/workspace/credentials.js.map +1 -1
- package/dist/research/workspace/data-evidence-adapter.d.ts +60 -0
- package/dist/research/workspace/data-evidence-adapter.js +314 -0
- package/dist/research/workspace/data-evidence-adapter.js.map +1 -0
- package/dist/research/workspace/discovery-status.js +10 -7
- package/dist/research/workspace/discovery-status.js.map +1 -1
- package/dist/research/workspace/discovery.js +12 -11
- package/dist/research/workspace/discovery.js.map +1 -1
- package/dist/research/workspace/evidence-ledger.d.ts +8 -1
- package/dist/research/workspace/evidence-ledger.js +46 -4
- package/dist/research/workspace/evidence-ledger.js.map +1 -1
- package/dist/research/workspace/evidence.d.ts +31 -0
- package/dist/research/workspace/evidence.js +77 -0
- package/dist/research/workspace/evidence.js.map +1 -1
- package/dist/research/workspace/executor.js.map +1 -1
- package/dist/research/workspace/external-skills.d.ts +49 -49
- package/dist/research/workspace/external-skills.js.map +1 -1
- package/dist/research/workspace/platform-capabilities.js.map +1 -1
- package/dist/research/workspace/preflight.d.ts +4 -4
- package/dist/research/workspace/preflight.js +33 -8
- package/dist/research/workspace/preflight.js.map +1 -1
- package/dist/research/workspace/projects.js +203 -76
- package/dist/research/workspace/projects.js.map +1 -1
- package/dist/research/workspace/publication.js.map +1 -1
- package/dist/research/workspace/research-policy-wizard.js.map +1 -1
- package/dist/research/workspace/research-policy.js.map +1 -1
- package/dist/research/workspace/runtime.d.ts +7 -0
- package/dist/research/workspace/runtime.js +82 -23
- package/dist/research/workspace/runtime.js.map +1 -1
- package/dist/research/workspace/sanitization.js.map +1 -1
- package/dist/research/workspace/schemas.js +1 -1
- package/dist/research/workspace/schemas.js.map +1 -1
- package/dist/research/workspace/scientific-design.js.map +1 -1
- package/dist/research/workspace/scientific-review.js.map +1 -1
- package/dist/research/workspace/setup-catalog.d.ts +9 -9
- package/dist/research/workspace/setup-catalog.js +2 -2
- package/dist/research/workspace/setup-catalog.js.map +1 -1
- package/dist/research/workspace/setup-declarative.js.map +1 -1
- package/dist/research/workspace/setup-instructions.d.ts +42 -0
- package/dist/research/workspace/setup-instructions.js +413 -0
- package/dist/research/workspace/setup-instructions.js.map +1 -0
- package/dist/research/workspace/setup-invocation.js.map +1 -1
- package/dist/research/workspace/setup-wizard.js +7 -0
- package/dist/research/workspace/setup-wizard.js.map +1 -1
- package/dist/research/workspace/setup.d.ts +18 -15
- package/dist/research/workspace/setup.js +68 -3
- package/dist/research/workspace/setup.js.map +1 -1
- package/dist/research/workspace/workspace.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,388 @@
|
|
|
1
|
+
export declare const OPEN_METEO_FLOOD_VARIABLES: readonly ["river_discharge", "river_discharge_max", "river_discharge_mean", "river_discharge_median", "river_discharge_min", "river_discharge_p25", "river_discharge_p75"];
|
|
2
|
+
export declare const OPEN_METEO_FLOOD_INPUT_SCHEMA: {
|
|
3
|
+
readonly $schema: "https://json-schema.org/draft/2020-12/schema";
|
|
4
|
+
readonly $id: "https://schemas.tiangong.ai/data/open-meteo/flood-input.v1.json";
|
|
5
|
+
readonly type: "object";
|
|
6
|
+
readonly additionalProperties: false;
|
|
7
|
+
readonly required: readonly ["locations", "startDate", "endDate", "dailyVariables"];
|
|
8
|
+
readonly properties: {
|
|
9
|
+
readonly locations: {
|
|
10
|
+
readonly type: "array";
|
|
11
|
+
readonly minItems: 1;
|
|
12
|
+
readonly maxItems: 10;
|
|
13
|
+
readonly description: "One to ten coordinates. The result preserves this request order and reports the selected river-grid coordinate separately.";
|
|
14
|
+
readonly examples: readonly [readonly [{
|
|
15
|
+
readonly latitude: 52.52;
|
|
16
|
+
readonly longitude: 13.41;
|
|
17
|
+
}]];
|
|
18
|
+
readonly items: {
|
|
19
|
+
readonly type: "object";
|
|
20
|
+
readonly additionalProperties: false;
|
|
21
|
+
readonly required: readonly ["latitude", "longitude"];
|
|
22
|
+
readonly description: "One WGS84 coordinate used to select the largest represented river in the nearby model grid.";
|
|
23
|
+
readonly examples: readonly [{
|
|
24
|
+
readonly latitude: 52.52;
|
|
25
|
+
readonly longitude: 13.41;
|
|
26
|
+
}];
|
|
27
|
+
readonly properties: {
|
|
28
|
+
readonly latitude: {
|
|
29
|
+
readonly type: "number";
|
|
30
|
+
readonly minimum: -90;
|
|
31
|
+
readonly maximum: 90;
|
|
32
|
+
readonly description: "Requested WGS84 latitude in decimal degrees.";
|
|
33
|
+
readonly examples: readonly [52.52];
|
|
34
|
+
};
|
|
35
|
+
readonly longitude: {
|
|
36
|
+
readonly type: "number";
|
|
37
|
+
readonly minimum: -180;
|
|
38
|
+
readonly maximum: 180;
|
|
39
|
+
readonly description: "Requested WGS84 longitude in decimal degrees.";
|
|
40
|
+
readonly examples: readonly [13.41];
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
readonly startDate: {
|
|
46
|
+
readonly type: "string";
|
|
47
|
+
readonly pattern: "^\\d{4}-\\d{2}-\\d{2}$";
|
|
48
|
+
readonly description: "Inclusive first date in YYYY-MM-DD form. Together with endDate, the window may contain at most 366 dates.";
|
|
49
|
+
readonly examples: readonly ["2026-03-01"];
|
|
50
|
+
};
|
|
51
|
+
readonly endDate: {
|
|
52
|
+
readonly type: "string";
|
|
53
|
+
readonly pattern: "^\\d{4}-\\d{2}-\\d{2}$";
|
|
54
|
+
readonly description: "Inclusive last date in YYYY-MM-DD form. It must not precede startDate.";
|
|
55
|
+
readonly examples: readonly ["2026-03-03"];
|
|
56
|
+
};
|
|
57
|
+
readonly dailyVariables: {
|
|
58
|
+
readonly type: "array";
|
|
59
|
+
readonly minItems: 1;
|
|
60
|
+
readonly maxItems: 7;
|
|
61
|
+
readonly uniqueItems: true;
|
|
62
|
+
readonly description: "Open-Meteo daily river-discharge variable codes. Ensemble statistics are forecast-only and may be absent for consolidated historical data.";
|
|
63
|
+
readonly examples: readonly [readonly ["river_discharge", "river_discharge_p75"]];
|
|
64
|
+
readonly items: {
|
|
65
|
+
readonly enum: readonly ["river_discharge", "river_discharge_max", "river_discharge_mean", "river_discharge_median", "river_discharge_min", "river_discharge_p25", "river_discharge_p75"];
|
|
66
|
+
readonly description: "One documented Open-Meteo Flood daily variable code.";
|
|
67
|
+
readonly examples: readonly ["river_discharge"];
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
readonly includeEnsembleMembers: {
|
|
71
|
+
readonly type: "boolean";
|
|
72
|
+
readonly description: "Request provider river_discharge_memberNN forecast series. This requires river_discharge in dailyVariables and can materially increase response size.";
|
|
73
|
+
readonly examples: readonly [false];
|
|
74
|
+
};
|
|
75
|
+
readonly cellSelection: {
|
|
76
|
+
readonly enum: readonly ["nearest", "land", "sea"];
|
|
77
|
+
readonly description: "Grid-cell preference around each coordinate. nearest preserves the prior Skill default; land or sea can force a surface preference.";
|
|
78
|
+
readonly examples: readonly ["nearest"];
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
readonly allOf: readonly [{
|
|
82
|
+
readonly if: {
|
|
83
|
+
readonly required: readonly ["includeEnsembleMembers"];
|
|
84
|
+
readonly properties: {
|
|
85
|
+
readonly includeEnsembleMembers: {
|
|
86
|
+
readonly const: true;
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
readonly then: {
|
|
91
|
+
readonly properties: {
|
|
92
|
+
readonly dailyVariables: {
|
|
93
|
+
readonly type: "array";
|
|
94
|
+
readonly contains: {
|
|
95
|
+
readonly const: "river_discharge";
|
|
96
|
+
};
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
};
|
|
100
|
+
}];
|
|
101
|
+
};
|
|
102
|
+
export declare const OPEN_METEO_FLOOD_OUTPUT_SCHEMA: {
|
|
103
|
+
readonly $schema: "https://json-schema.org/draft/2020-12/schema";
|
|
104
|
+
readonly $id: "https://schemas.tiangong.ai/data/open-meteo/flood-output.v1.json";
|
|
105
|
+
readonly type: "object";
|
|
106
|
+
readonly additionalProperties: false;
|
|
107
|
+
readonly required: readonly ["source", "request", "validation", "locations", "stopReason"];
|
|
108
|
+
readonly properties: {
|
|
109
|
+
readonly source: {
|
|
110
|
+
readonly type: "object";
|
|
111
|
+
readonly additionalProperties: false;
|
|
112
|
+
readonly required: readonly ["providerId", "service", "endpoint", "model", "simulated", "timezone"];
|
|
113
|
+
readonly properties: {
|
|
114
|
+
readonly providerId: {
|
|
115
|
+
readonly const: "open-meteo";
|
|
116
|
+
};
|
|
117
|
+
readonly service: {
|
|
118
|
+
readonly const: "Flood API";
|
|
119
|
+
};
|
|
120
|
+
readonly endpoint: {
|
|
121
|
+
readonly const: "/v1/flood";
|
|
122
|
+
};
|
|
123
|
+
readonly model: {
|
|
124
|
+
readonly const: "GloFAS v4 Seamless";
|
|
125
|
+
};
|
|
126
|
+
readonly simulated: {
|
|
127
|
+
readonly const: true;
|
|
128
|
+
};
|
|
129
|
+
readonly timezone: {
|
|
130
|
+
readonly const: "GMT";
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
readonly request: {
|
|
135
|
+
readonly type: "object";
|
|
136
|
+
readonly additionalProperties: false;
|
|
137
|
+
readonly required: readonly ["locations", "startDate", "endDate", "dailyVariables", "includeEnsembleMembers", "cellSelection", "timezone"];
|
|
138
|
+
readonly properties: {
|
|
139
|
+
readonly locations: {
|
|
140
|
+
readonly type: "array";
|
|
141
|
+
readonly minItems: 1;
|
|
142
|
+
readonly maxItems: 10;
|
|
143
|
+
readonly description: "One to ten coordinates. The result preserves this request order and reports the selected river-grid coordinate separately.";
|
|
144
|
+
readonly examples: readonly [readonly [{
|
|
145
|
+
readonly latitude: 52.52;
|
|
146
|
+
readonly longitude: 13.41;
|
|
147
|
+
}]];
|
|
148
|
+
readonly items: {
|
|
149
|
+
readonly type: "object";
|
|
150
|
+
readonly additionalProperties: false;
|
|
151
|
+
readonly required: readonly ["latitude", "longitude"];
|
|
152
|
+
readonly description: "One WGS84 coordinate used to select the largest represented river in the nearby model grid.";
|
|
153
|
+
readonly examples: readonly [{
|
|
154
|
+
readonly latitude: 52.52;
|
|
155
|
+
readonly longitude: 13.41;
|
|
156
|
+
}];
|
|
157
|
+
readonly properties: {
|
|
158
|
+
readonly latitude: {
|
|
159
|
+
readonly type: "number";
|
|
160
|
+
readonly minimum: -90;
|
|
161
|
+
readonly maximum: 90;
|
|
162
|
+
readonly description: "Requested WGS84 latitude in decimal degrees.";
|
|
163
|
+
readonly examples: readonly [52.52];
|
|
164
|
+
};
|
|
165
|
+
readonly longitude: {
|
|
166
|
+
readonly type: "number";
|
|
167
|
+
readonly minimum: -180;
|
|
168
|
+
readonly maximum: 180;
|
|
169
|
+
readonly description: "Requested WGS84 longitude in decimal degrees.";
|
|
170
|
+
readonly examples: readonly [13.41];
|
|
171
|
+
};
|
|
172
|
+
};
|
|
173
|
+
};
|
|
174
|
+
};
|
|
175
|
+
readonly startDate: {
|
|
176
|
+
readonly type: "string";
|
|
177
|
+
readonly pattern: "^\\d{4}-\\d{2}-\\d{2}$";
|
|
178
|
+
readonly description: "Inclusive first date in YYYY-MM-DD form. Together with endDate, the window may contain at most 366 dates.";
|
|
179
|
+
readonly examples: readonly ["2026-03-01"];
|
|
180
|
+
};
|
|
181
|
+
readonly endDate: {
|
|
182
|
+
readonly type: "string";
|
|
183
|
+
readonly pattern: "^\\d{4}-\\d{2}-\\d{2}$";
|
|
184
|
+
readonly description: "Inclusive last date in YYYY-MM-DD form. It must not precede startDate.";
|
|
185
|
+
readonly examples: readonly ["2026-03-03"];
|
|
186
|
+
};
|
|
187
|
+
readonly dailyVariables: {
|
|
188
|
+
readonly type: "array";
|
|
189
|
+
readonly minItems: 1;
|
|
190
|
+
readonly maxItems: 7;
|
|
191
|
+
readonly uniqueItems: true;
|
|
192
|
+
readonly description: "Open-Meteo daily river-discharge variable codes. Ensemble statistics are forecast-only and may be absent for consolidated historical data.";
|
|
193
|
+
readonly examples: readonly [readonly ["river_discharge", "river_discharge_p75"]];
|
|
194
|
+
readonly items: {
|
|
195
|
+
readonly enum: readonly ["river_discharge", "river_discharge_max", "river_discharge_mean", "river_discharge_median", "river_discharge_min", "river_discharge_p25", "river_discharge_p75"];
|
|
196
|
+
readonly description: "One documented Open-Meteo Flood daily variable code.";
|
|
197
|
+
readonly examples: readonly ["river_discharge"];
|
|
198
|
+
};
|
|
199
|
+
};
|
|
200
|
+
readonly includeEnsembleMembers: {
|
|
201
|
+
readonly type: "boolean";
|
|
202
|
+
};
|
|
203
|
+
readonly cellSelection: {
|
|
204
|
+
readonly enum: readonly ["nearest", "land", "sea"];
|
|
205
|
+
};
|
|
206
|
+
readonly timezone: {
|
|
207
|
+
readonly const: "GMT";
|
|
208
|
+
};
|
|
209
|
+
};
|
|
210
|
+
};
|
|
211
|
+
readonly validation: {
|
|
212
|
+
readonly type: "object";
|
|
213
|
+
readonly additionalProperties: false;
|
|
214
|
+
readonly required: readonly ["issueCount", "issues"];
|
|
215
|
+
readonly properties: {
|
|
216
|
+
readonly issueCount: {
|
|
217
|
+
readonly type: "integer";
|
|
218
|
+
readonly minimum: 0;
|
|
219
|
+
};
|
|
220
|
+
readonly issues: {
|
|
221
|
+
readonly type: "array";
|
|
222
|
+
readonly maxItems: 50;
|
|
223
|
+
readonly items: {
|
|
224
|
+
readonly type: "object";
|
|
225
|
+
readonly additionalProperties: false;
|
|
226
|
+
readonly required: readonly ["path", "message"];
|
|
227
|
+
readonly properties: {
|
|
228
|
+
readonly path: {
|
|
229
|
+
readonly type: "string";
|
|
230
|
+
readonly minLength: 1;
|
|
231
|
+
};
|
|
232
|
+
readonly message: {
|
|
233
|
+
readonly type: "string";
|
|
234
|
+
readonly minLength: 1;
|
|
235
|
+
};
|
|
236
|
+
};
|
|
237
|
+
};
|
|
238
|
+
};
|
|
239
|
+
};
|
|
240
|
+
};
|
|
241
|
+
readonly locations: {
|
|
242
|
+
readonly type: "array";
|
|
243
|
+
readonly maxItems: 10;
|
|
244
|
+
readonly items: {
|
|
245
|
+
readonly type: "object";
|
|
246
|
+
readonly additionalProperties: false;
|
|
247
|
+
readonly required: readonly ["requestedLocationIndex", "requestedLocation", "riverGridLocation", "elevation", "timezone", "timezoneAbbreviation", "utcOffsetSeconds", "dates", "variables", "ensembleMembers"];
|
|
248
|
+
readonly properties: {
|
|
249
|
+
readonly requestedLocationIndex: {
|
|
250
|
+
readonly type: "integer";
|
|
251
|
+
readonly minimum: 0;
|
|
252
|
+
readonly maximum: 9;
|
|
253
|
+
};
|
|
254
|
+
readonly requestedLocation: {
|
|
255
|
+
readonly type: "object";
|
|
256
|
+
readonly additionalProperties: false;
|
|
257
|
+
readonly required: readonly ["latitude", "longitude"];
|
|
258
|
+
readonly description: "One WGS84 coordinate used to select the largest represented river in the nearby model grid.";
|
|
259
|
+
readonly examples: readonly [{
|
|
260
|
+
readonly latitude: 52.52;
|
|
261
|
+
readonly longitude: 13.41;
|
|
262
|
+
}];
|
|
263
|
+
readonly properties: {
|
|
264
|
+
readonly latitude: {
|
|
265
|
+
readonly type: "number";
|
|
266
|
+
readonly minimum: -90;
|
|
267
|
+
readonly maximum: 90;
|
|
268
|
+
readonly description: "Requested WGS84 latitude in decimal degrees.";
|
|
269
|
+
readonly examples: readonly [52.52];
|
|
270
|
+
};
|
|
271
|
+
readonly longitude: {
|
|
272
|
+
readonly type: "number";
|
|
273
|
+
readonly minimum: -180;
|
|
274
|
+
readonly maximum: 180;
|
|
275
|
+
readonly description: "Requested WGS84 longitude in decimal degrees.";
|
|
276
|
+
readonly examples: readonly [13.41];
|
|
277
|
+
};
|
|
278
|
+
};
|
|
279
|
+
};
|
|
280
|
+
readonly riverGridLocation: {
|
|
281
|
+
readonly type: "object";
|
|
282
|
+
readonly additionalProperties: false;
|
|
283
|
+
readonly required: readonly ["latitude", "longitude"];
|
|
284
|
+
readonly description: "One WGS84 coordinate used to select the largest represented river in the nearby model grid.";
|
|
285
|
+
readonly examples: readonly [{
|
|
286
|
+
readonly latitude: 52.52;
|
|
287
|
+
readonly longitude: 13.41;
|
|
288
|
+
}];
|
|
289
|
+
readonly properties: {
|
|
290
|
+
readonly latitude: {
|
|
291
|
+
readonly type: "number";
|
|
292
|
+
readonly minimum: -90;
|
|
293
|
+
readonly maximum: 90;
|
|
294
|
+
readonly description: "Requested WGS84 latitude in decimal degrees.";
|
|
295
|
+
readonly examples: readonly [52.52];
|
|
296
|
+
};
|
|
297
|
+
readonly longitude: {
|
|
298
|
+
readonly type: "number";
|
|
299
|
+
readonly minimum: -180;
|
|
300
|
+
readonly maximum: 180;
|
|
301
|
+
readonly description: "Requested WGS84 longitude in decimal degrees.";
|
|
302
|
+
readonly examples: readonly [13.41];
|
|
303
|
+
};
|
|
304
|
+
};
|
|
305
|
+
};
|
|
306
|
+
readonly elevation: {
|
|
307
|
+
readonly type: readonly ["number", "null"];
|
|
308
|
+
};
|
|
309
|
+
readonly timezone: {
|
|
310
|
+
readonly type: "string";
|
|
311
|
+
readonly minLength: 1;
|
|
312
|
+
};
|
|
313
|
+
readonly timezoneAbbreviation: {
|
|
314
|
+
readonly type: "string";
|
|
315
|
+
readonly minLength: 1;
|
|
316
|
+
};
|
|
317
|
+
readonly utcOffsetSeconds: {
|
|
318
|
+
readonly type: "integer";
|
|
319
|
+
};
|
|
320
|
+
readonly dates: {
|
|
321
|
+
readonly type: "array";
|
|
322
|
+
readonly items: {
|
|
323
|
+
readonly type: "string";
|
|
324
|
+
readonly pattern: "^\\d{4}-\\d{2}-\\d{2}$";
|
|
325
|
+
};
|
|
326
|
+
};
|
|
327
|
+
readonly variables: {
|
|
328
|
+
readonly type: "array";
|
|
329
|
+
readonly maxItems: 7;
|
|
330
|
+
readonly items: {
|
|
331
|
+
readonly type: "object";
|
|
332
|
+
readonly additionalProperties: false;
|
|
333
|
+
readonly required: readonly ["variable", "unit", "values"];
|
|
334
|
+
readonly properties: {
|
|
335
|
+
readonly variable: {
|
|
336
|
+
readonly enum: readonly ["river_discharge", "river_discharge_max", "river_discharge_mean", "river_discharge_median", "river_discharge_min", "river_discharge_p25", "river_discharge_p75"];
|
|
337
|
+
};
|
|
338
|
+
readonly unit: {
|
|
339
|
+
readonly type: "string";
|
|
340
|
+
readonly minLength: 1;
|
|
341
|
+
};
|
|
342
|
+
readonly values: {
|
|
343
|
+
readonly type: "array";
|
|
344
|
+
readonly items: {
|
|
345
|
+
readonly type: readonly ["number", "null"];
|
|
346
|
+
};
|
|
347
|
+
};
|
|
348
|
+
};
|
|
349
|
+
};
|
|
350
|
+
};
|
|
351
|
+
readonly ensembleMembers: {
|
|
352
|
+
readonly type: "array";
|
|
353
|
+
readonly maxItems: 100;
|
|
354
|
+
readonly items: {
|
|
355
|
+
readonly type: "object";
|
|
356
|
+
readonly additionalProperties: false;
|
|
357
|
+
readonly required: readonly ["member", "sourceField", "unit", "values"];
|
|
358
|
+
readonly properties: {
|
|
359
|
+
readonly member: {
|
|
360
|
+
readonly type: "integer";
|
|
361
|
+
readonly minimum: 0;
|
|
362
|
+
readonly maximum: 9007199254740991;
|
|
363
|
+
};
|
|
364
|
+
readonly sourceField: {
|
|
365
|
+
readonly type: "string";
|
|
366
|
+
readonly pattern: "^river_discharge_member\\d+$";
|
|
367
|
+
};
|
|
368
|
+
readonly unit: {
|
|
369
|
+
readonly type: "string";
|
|
370
|
+
readonly minLength: 1;
|
|
371
|
+
};
|
|
372
|
+
readonly values: {
|
|
373
|
+
readonly type: "array";
|
|
374
|
+
readonly items: {
|
|
375
|
+
readonly type: readonly ["number", "null"];
|
|
376
|
+
};
|
|
377
|
+
};
|
|
378
|
+
};
|
|
379
|
+
};
|
|
380
|
+
};
|
|
381
|
+
};
|
|
382
|
+
};
|
|
383
|
+
};
|
|
384
|
+
readonly stopReason: {
|
|
385
|
+
readonly enum: readonly ["completed", "max-records", "partial"];
|
|
386
|
+
};
|
|
387
|
+
};
|
|
388
|
+
};
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
const DATE_PATTERN = "^\\d{4}-\\d{2}-\\d{2}$";
|
|
2
|
+
export const OPEN_METEO_FLOOD_VARIABLES = [
|
|
3
|
+
"river_discharge",
|
|
4
|
+
"river_discharge_max",
|
|
5
|
+
"river_discharge_mean",
|
|
6
|
+
"river_discharge_median",
|
|
7
|
+
"river_discharge_min",
|
|
8
|
+
"river_discharge_p25",
|
|
9
|
+
"river_discharge_p75",
|
|
10
|
+
];
|
|
11
|
+
const LOCATION_SCHEMA = {
|
|
12
|
+
type: "object",
|
|
13
|
+
additionalProperties: false,
|
|
14
|
+
required: ["latitude", "longitude"],
|
|
15
|
+
description: "One WGS84 coordinate used to select the largest represented river in the nearby model grid.",
|
|
16
|
+
examples: [{ latitude: 52.52, longitude: 13.41 }],
|
|
17
|
+
properties: {
|
|
18
|
+
latitude: {
|
|
19
|
+
type: "number",
|
|
20
|
+
minimum: -90,
|
|
21
|
+
maximum: 90,
|
|
22
|
+
description: "Requested WGS84 latitude in decimal degrees.",
|
|
23
|
+
examples: [52.52],
|
|
24
|
+
},
|
|
25
|
+
longitude: {
|
|
26
|
+
type: "number",
|
|
27
|
+
minimum: -180,
|
|
28
|
+
maximum: 180,
|
|
29
|
+
description: "Requested WGS84 longitude in decimal degrees.",
|
|
30
|
+
examples: [13.41],
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
const VARIABLES_SCHEMA = {
|
|
35
|
+
type: "array",
|
|
36
|
+
minItems: 1,
|
|
37
|
+
maxItems: 7,
|
|
38
|
+
uniqueItems: true,
|
|
39
|
+
description: "Open-Meteo daily river-discharge variable codes. Ensemble statistics are forecast-only and may be absent for consolidated historical data.",
|
|
40
|
+
examples: [["river_discharge", "river_discharge_p75"]],
|
|
41
|
+
items: {
|
|
42
|
+
enum: OPEN_METEO_FLOOD_VARIABLES,
|
|
43
|
+
description: "One documented Open-Meteo Flood daily variable code.",
|
|
44
|
+
examples: ["river_discharge"],
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
export const OPEN_METEO_FLOOD_INPUT_SCHEMA = {
|
|
48
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
49
|
+
$id: "https://schemas.tiangong.ai/data/open-meteo/flood-input.v1.json",
|
|
50
|
+
type: "object",
|
|
51
|
+
additionalProperties: false,
|
|
52
|
+
required: ["locations", "startDate", "endDate", "dailyVariables"],
|
|
53
|
+
properties: {
|
|
54
|
+
locations: {
|
|
55
|
+
type: "array",
|
|
56
|
+
minItems: 1,
|
|
57
|
+
maxItems: 10,
|
|
58
|
+
description: "One to ten coordinates. The result preserves this request order and reports the selected river-grid coordinate separately.",
|
|
59
|
+
examples: [[{ latitude: 52.52, longitude: 13.41 }]],
|
|
60
|
+
items: LOCATION_SCHEMA,
|
|
61
|
+
},
|
|
62
|
+
startDate: {
|
|
63
|
+
type: "string",
|
|
64
|
+
pattern: DATE_PATTERN,
|
|
65
|
+
description: "Inclusive first date in YYYY-MM-DD form. Together with endDate, the window may contain at most 366 dates.",
|
|
66
|
+
examples: ["2026-03-01"],
|
|
67
|
+
},
|
|
68
|
+
endDate: {
|
|
69
|
+
type: "string",
|
|
70
|
+
pattern: DATE_PATTERN,
|
|
71
|
+
description: "Inclusive last date in YYYY-MM-DD form. It must not precede startDate.",
|
|
72
|
+
examples: ["2026-03-03"],
|
|
73
|
+
},
|
|
74
|
+
dailyVariables: VARIABLES_SCHEMA,
|
|
75
|
+
includeEnsembleMembers: {
|
|
76
|
+
type: "boolean",
|
|
77
|
+
description: "Request provider river_discharge_memberNN forecast series. This requires river_discharge in dailyVariables and can materially increase response size.",
|
|
78
|
+
examples: [false],
|
|
79
|
+
},
|
|
80
|
+
cellSelection: {
|
|
81
|
+
enum: ["nearest", "land", "sea"],
|
|
82
|
+
description: "Grid-cell preference around each coordinate. nearest preserves the prior Skill default; land or sea can force a surface preference.",
|
|
83
|
+
examples: ["nearest"],
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
allOf: [
|
|
87
|
+
{
|
|
88
|
+
if: {
|
|
89
|
+
required: ["includeEnsembleMembers"],
|
|
90
|
+
properties: { includeEnsembleMembers: { const: true } },
|
|
91
|
+
},
|
|
92
|
+
then: {
|
|
93
|
+
properties: {
|
|
94
|
+
dailyVariables: { type: "array", contains: { const: "river_discharge" } },
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
],
|
|
99
|
+
};
|
|
100
|
+
const NULLABLE_NUMBER = { type: ["number", "null"] };
|
|
101
|
+
const SERIES_VALUES = { type: "array", items: NULLABLE_NUMBER };
|
|
102
|
+
export const OPEN_METEO_FLOOD_OUTPUT_SCHEMA = {
|
|
103
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
104
|
+
$id: "https://schemas.tiangong.ai/data/open-meteo/flood-output.v1.json",
|
|
105
|
+
type: "object",
|
|
106
|
+
additionalProperties: false,
|
|
107
|
+
required: ["source", "request", "validation", "locations", "stopReason"],
|
|
108
|
+
properties: {
|
|
109
|
+
source: {
|
|
110
|
+
type: "object",
|
|
111
|
+
additionalProperties: false,
|
|
112
|
+
required: ["providerId", "service", "endpoint", "model", "simulated", "timezone"],
|
|
113
|
+
properties: {
|
|
114
|
+
providerId: { const: "open-meteo" },
|
|
115
|
+
service: { const: "Flood API" },
|
|
116
|
+
endpoint: { const: "/v1/flood" },
|
|
117
|
+
model: { const: "GloFAS v4 Seamless" },
|
|
118
|
+
simulated: { const: true },
|
|
119
|
+
timezone: { const: "GMT" },
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
request: {
|
|
123
|
+
type: "object",
|
|
124
|
+
additionalProperties: false,
|
|
125
|
+
required: [
|
|
126
|
+
"locations",
|
|
127
|
+
"startDate",
|
|
128
|
+
"endDate",
|
|
129
|
+
"dailyVariables",
|
|
130
|
+
"includeEnsembleMembers",
|
|
131
|
+
"cellSelection",
|
|
132
|
+
"timezone",
|
|
133
|
+
],
|
|
134
|
+
properties: {
|
|
135
|
+
locations: OPEN_METEO_FLOOD_INPUT_SCHEMA.properties.locations,
|
|
136
|
+
startDate: OPEN_METEO_FLOOD_INPUT_SCHEMA.properties.startDate,
|
|
137
|
+
endDate: OPEN_METEO_FLOOD_INPUT_SCHEMA.properties.endDate,
|
|
138
|
+
dailyVariables: VARIABLES_SCHEMA,
|
|
139
|
+
includeEnsembleMembers: { type: "boolean" },
|
|
140
|
+
cellSelection: { enum: ["nearest", "land", "sea"] },
|
|
141
|
+
timezone: { const: "GMT" },
|
|
142
|
+
},
|
|
143
|
+
},
|
|
144
|
+
validation: {
|
|
145
|
+
type: "object",
|
|
146
|
+
additionalProperties: false,
|
|
147
|
+
required: ["issueCount", "issues"],
|
|
148
|
+
properties: {
|
|
149
|
+
issueCount: { type: "integer", minimum: 0 },
|
|
150
|
+
issues: {
|
|
151
|
+
type: "array",
|
|
152
|
+
maxItems: 50,
|
|
153
|
+
items: {
|
|
154
|
+
type: "object",
|
|
155
|
+
additionalProperties: false,
|
|
156
|
+
required: ["path", "message"],
|
|
157
|
+
properties: {
|
|
158
|
+
path: { type: "string", minLength: 1 },
|
|
159
|
+
message: { type: "string", minLength: 1 },
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
},
|
|
164
|
+
},
|
|
165
|
+
locations: {
|
|
166
|
+
type: "array",
|
|
167
|
+
maxItems: 10,
|
|
168
|
+
items: {
|
|
169
|
+
type: "object",
|
|
170
|
+
additionalProperties: false,
|
|
171
|
+
required: [
|
|
172
|
+
"requestedLocationIndex",
|
|
173
|
+
"requestedLocation",
|
|
174
|
+
"riverGridLocation",
|
|
175
|
+
"elevation",
|
|
176
|
+
"timezone",
|
|
177
|
+
"timezoneAbbreviation",
|
|
178
|
+
"utcOffsetSeconds",
|
|
179
|
+
"dates",
|
|
180
|
+
"variables",
|
|
181
|
+
"ensembleMembers",
|
|
182
|
+
],
|
|
183
|
+
properties: {
|
|
184
|
+
requestedLocationIndex: { type: "integer", minimum: 0, maximum: 9 },
|
|
185
|
+
requestedLocation: LOCATION_SCHEMA,
|
|
186
|
+
riverGridLocation: LOCATION_SCHEMA,
|
|
187
|
+
elevation: NULLABLE_NUMBER,
|
|
188
|
+
timezone: { type: "string", minLength: 1 },
|
|
189
|
+
timezoneAbbreviation: { type: "string", minLength: 1 },
|
|
190
|
+
utcOffsetSeconds: { type: "integer" },
|
|
191
|
+
dates: { type: "array", items: { type: "string", pattern: DATE_PATTERN } },
|
|
192
|
+
variables: {
|
|
193
|
+
type: "array",
|
|
194
|
+
maxItems: 7,
|
|
195
|
+
items: {
|
|
196
|
+
type: "object",
|
|
197
|
+
additionalProperties: false,
|
|
198
|
+
required: ["variable", "unit", "values"],
|
|
199
|
+
properties: {
|
|
200
|
+
variable: { enum: OPEN_METEO_FLOOD_VARIABLES },
|
|
201
|
+
unit: { type: "string", minLength: 1 },
|
|
202
|
+
values: SERIES_VALUES,
|
|
203
|
+
},
|
|
204
|
+
},
|
|
205
|
+
},
|
|
206
|
+
ensembleMembers: {
|
|
207
|
+
type: "array",
|
|
208
|
+
maxItems: 100,
|
|
209
|
+
items: {
|
|
210
|
+
type: "object",
|
|
211
|
+
additionalProperties: false,
|
|
212
|
+
required: ["member", "sourceField", "unit", "values"],
|
|
213
|
+
properties: {
|
|
214
|
+
member: { type: "integer", minimum: 0, maximum: 9007199254740991 },
|
|
215
|
+
sourceField: { type: "string", pattern: "^river_discharge_member\\d+$" },
|
|
216
|
+
unit: { type: "string", minLength: 1 },
|
|
217
|
+
values: SERIES_VALUES,
|
|
218
|
+
},
|
|
219
|
+
},
|
|
220
|
+
},
|
|
221
|
+
},
|
|
222
|
+
},
|
|
223
|
+
},
|
|
224
|
+
stopReason: { enum: ["completed", "max-records", "partial"] },
|
|
225
|
+
},
|
|
226
|
+
};
|
|
227
|
+
//# sourceMappingURL=open-meteo-flood.schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-meteo-flood.schemas.js","sourceRoot":"","sources":["../../../src/data/connectors/open-meteo-flood.schemas.ts"],"names":[],"mappings":"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"}
|