@clipin/convex-wearables 0.0.3 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +395 -0
- package/dist/client/index.d.ts +38 -2
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +30 -0
- package/dist/client/index.js.map +1 -1
- package/dist/client/types.d.ts +83 -0
- package/dist/client/types.d.ts.map +1 -1
- package/dist/client/types.js.map +1 -1
- package/dist/component/dataPoints.d.ts +148 -34
- package/dist/component/dataPoints.d.ts.map +1 -1
- package/dist/component/dataPoints.js +1048 -139
- package/dist/component/dataPoints.js.map +1 -1
- package/dist/component/lifecycle.d.ts.map +1 -1
- package/dist/component/lifecycle.js +37 -1
- package/dist/component/lifecycle.js.map +1 -1
- package/dist/component/schema.d.ts +166 -2
- package/dist/component/schema.d.ts.map +1 -1
- package/dist/component/schema.js +89 -0
- package/dist/component/schema.js.map +1 -1
- package/dist/component/timeSeriesPolicyUtils.d.ts +97 -0
- package/dist/component/timeSeriesPolicyUtils.d.ts.map +1 -0
- package/dist/component/timeSeriesPolicyUtils.js +163 -0
- package/dist/component/timeSeriesPolicyUtils.js.map +1 -0
- package/dist/test.d.ts +162 -2
- package/dist/test.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client/index.test.ts +97 -0
- package/src/client/index.ts +75 -0
- package/src/client/types.ts +99 -0
- package/src/component/dataPoints.test.ts +546 -1
- package/src/component/dataPoints.ts +1526 -155
- package/src/component/lifecycle.ts +42 -1
- package/src/component/schema.ts +106 -0
- package/src/component/timeSeriesPolicyUtils.ts +243 -0
package/README.md
CHANGED
|
@@ -14,6 +14,7 @@ Built as a drop-in module: install the component, pass your provider credentials
|
|
|
14
14
|
- **40+ workout types** mapped to a unified taxonomy (running, cycling, swimming, yoga, etc.)
|
|
15
15
|
- **88 pre-defined series types** — heart rate, HRV, SpO2, steps, weight, body temperature, and more
|
|
16
16
|
- **Cursor-based pagination** — efficient data access within Convex's scan limits
|
|
17
|
+
- **Configurable time-series storage policy** — keep full raw data, retain recent raw + historical rollups, or store rollups only
|
|
17
18
|
- **Deduplication** — events and data points are deduped by external ID and source+timestamp
|
|
18
19
|
- **Precomputed daily summaries** — activity, sleep, recovery, and body composition aggregates
|
|
19
20
|
- **GDPR-ready** — cascading user data deletion in a single call
|
|
@@ -131,6 +132,82 @@ export const disconnectProvider = mutation({
|
|
|
131
132
|
});
|
|
132
133
|
```
|
|
133
134
|
|
|
135
|
+
### 4. Configure time-series storage policy (optional)
|
|
136
|
+
|
|
137
|
+
By default, the component behaves exactly as before: all raw time-series points are stored indefinitely.
|
|
138
|
+
|
|
139
|
+
If you want to reduce row growth for dense series like Garmin heart rate, persist a tier-based policy once from your app:
|
|
140
|
+
|
|
141
|
+
```ts
|
|
142
|
+
// convex/adminWearables.ts
|
|
143
|
+
import { mutation } from "./_generated/server";
|
|
144
|
+
import { wearables } from "./wearables";
|
|
145
|
+
|
|
146
|
+
export const configureWearablesStorage = mutation({
|
|
147
|
+
args: {},
|
|
148
|
+
handler: async (ctx) => {
|
|
149
|
+
await wearables.replaceTimeSeriesPolicyConfiguration(ctx, {
|
|
150
|
+
defaultRules: [
|
|
151
|
+
// Global fallback: keep sparse metrics fully raw forever.
|
|
152
|
+
{
|
|
153
|
+
tiers: [{ kind: "raw", fromAge: "0m", toAge: null }],
|
|
154
|
+
},
|
|
155
|
+
// Garmin heart rate: raw for 24h, 30-minute rollups until day 7, then 3-hour rollups.
|
|
156
|
+
{
|
|
157
|
+
provider: "garmin",
|
|
158
|
+
seriesType: "heart_rate",
|
|
159
|
+
tiers: [
|
|
160
|
+
{ kind: "raw", fromAge: "0m", toAge: "24h" },
|
|
161
|
+
{ kind: "rollup", fromAge: "24h", toAge: "7d", bucket: "30m" },
|
|
162
|
+
{ kind: "rollup", fromAge: "7d", toAge: null, bucket: "3h" },
|
|
163
|
+
],
|
|
164
|
+
},
|
|
165
|
+
// Lower-value dense signals can skip raw storage entirely.
|
|
166
|
+
{
|
|
167
|
+
provider: "garmin",
|
|
168
|
+
seriesType: "oxygen_saturation",
|
|
169
|
+
tiers: [
|
|
170
|
+
{
|
|
171
|
+
kind: "rollup",
|
|
172
|
+
fromAge: "0m",
|
|
173
|
+
toAge: null,
|
|
174
|
+
bucket: "5m",
|
|
175
|
+
aggregations: ["avg", "min", "max", "last", "count"],
|
|
176
|
+
},
|
|
177
|
+
],
|
|
178
|
+
},
|
|
179
|
+
],
|
|
180
|
+
presets: [
|
|
181
|
+
{
|
|
182
|
+
key: "pro",
|
|
183
|
+
rules: [
|
|
184
|
+
{
|
|
185
|
+
provider: "garmin",
|
|
186
|
+
seriesType: "heart_rate",
|
|
187
|
+
tiers: [
|
|
188
|
+
{ kind: "raw", fromAge: "0m", toAge: "7d" },
|
|
189
|
+
{ kind: "rollup", fromAge: "7d", toAge: null, bucket: "1h" },
|
|
190
|
+
],
|
|
191
|
+
},
|
|
192
|
+
],
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
maintenance: {
|
|
196
|
+
enabled: true,
|
|
197
|
+
interval: "1h",
|
|
198
|
+
},
|
|
199
|
+
});
|
|
200
|
+
|
|
201
|
+
await wearables.setUserTimeSeriesPolicyPreset(ctx, {
|
|
202
|
+
userId: "pro-user-123",
|
|
203
|
+
presetKey: "pro",
|
|
204
|
+
});
|
|
205
|
+
},
|
|
206
|
+
});
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
Those rules are stored inside the component and then used automatically by manual syncs, cron syncs, Garmin webhooks, and SDK push ingestion.
|
|
210
|
+
|
|
134
211
|
## API Reference
|
|
135
212
|
|
|
136
213
|
### `WearablesClient`
|
|
@@ -166,9 +243,18 @@ The `category` parameter is `"workout"` or `"sleep"`. Results are ordered by sta
|
|
|
166
243
|
| `getTimeSeries(ctx, { userId, seriesType, startDate, endDate, limit? })` | Get time-series data points |
|
|
167
244
|
| `getLatestDataPoint(ctx, { userId, seriesType })` | Get the most recent value for a metric |
|
|
168
245
|
| `getAvailableSeriesTypes(ctx, { userId })` | List which metric types have data |
|
|
246
|
+
| `getTimeSeriesPolicyConfiguration(ctx)` | Read the persisted default rules, presets, and maintenance settings |
|
|
247
|
+
| `getUserTimeSeriesPolicyPreset(ctx, { userId })` | Read a user's assigned preset, if any |
|
|
248
|
+
| `getEffectiveTimeSeriesPolicy(ctx, { userId, provider, seriesType })` | Resolve the effective policy after preset assignment and default fallback |
|
|
169
249
|
|
|
170
250
|
See [Series Types](#series-types) for all 88 supported metrics.
|
|
171
251
|
|
|
252
|
+
When a query returns rollup-backed points, each point can also include:
|
|
253
|
+
|
|
254
|
+
- `resolution` — `"raw"` or `"rollup"`
|
|
255
|
+
- `bucketMinutes`
|
|
256
|
+
- `avg`, `min`, `max`, `last`, `count`
|
|
257
|
+
|
|
172
258
|
#### Daily Summaries
|
|
173
259
|
|
|
174
260
|
| Method | Description |
|
|
@@ -210,6 +296,306 @@ Categories: `"activity"`, `"sleep"`, `"recovery"`, `"body"`.
|
|
|
210
296
|
|--------|-------------|
|
|
211
297
|
| `getProviderCredentials(provider)` | Get credentials for a provider |
|
|
212
298
|
| `getConfiguredProviders()` | List all configured providers |
|
|
299
|
+
| `replaceTimeSeriesPolicyConfiguration(ctx, { defaultRules, presets?, maintenance? })` | Replace the persisted time-series policy configuration |
|
|
300
|
+
| `setUserTimeSeriesPolicyPreset(ctx, { userId, presetKey })` | Assign or clear a user-specific preset |
|
|
301
|
+
|
|
302
|
+
## Time-Series Storage Policy
|
|
303
|
+
|
|
304
|
+
The storage policy is optional.
|
|
305
|
+
|
|
306
|
+
- If you do nothing, the built-in fallback is one raw tier from age `0` to `null`, which means raw points are stored indefinitely.
|
|
307
|
+
- Policies are persisted in Convex and applied centrally in the shared time-series write path.
|
|
308
|
+
- The same rules apply to workflow syncs, Garmin webhooks, and SDK push ingestion.
|
|
309
|
+
- Default rules are deployment-wide.
|
|
310
|
+
- Presets are optional and can be assigned per user.
|
|
311
|
+
|
|
312
|
+
### Precedence
|
|
313
|
+
|
|
314
|
+
Default rules are matched in this order:
|
|
315
|
+
|
|
316
|
+
1. exact `provider + seriesType`
|
|
317
|
+
2. `seriesType` across all providers
|
|
318
|
+
3. `provider` across all series
|
|
319
|
+
4. global policy
|
|
320
|
+
5. built-in fallback: raw forever
|
|
321
|
+
|
|
322
|
+
If a user has a preset assignment, matching starts inside that preset first and falls back to the default rules only when the preset does not define a rule for that provider/series pair.
|
|
323
|
+
|
|
324
|
+
### Tier model
|
|
325
|
+
|
|
326
|
+
Each rule is a list of contiguous tiers ordered by age:
|
|
327
|
+
|
|
328
|
+
- `fromAge: "0m"` means "newest data"
|
|
329
|
+
- age grows as data gets older
|
|
330
|
+
- `toAge: null` means "keep this tier forever"
|
|
331
|
+
- if no tier matches a point's age, that data is deleted
|
|
332
|
+
|
|
333
|
+
Two tier kinds are supported:
|
|
334
|
+
|
|
335
|
+
- `raw`: keep original data points
|
|
336
|
+
- `rollup`: keep bucketed aggregates such as `avg`, `min`, `max`, `last`, and `count`
|
|
337
|
+
|
|
338
|
+
Durations accept a numeric millisecond value or a compact string such as `30m`, `24h`, `7d`, or `2w`.
|
|
339
|
+
|
|
340
|
+
### Configuration shape
|
|
341
|
+
|
|
342
|
+
Each default rule or preset rule supports:
|
|
343
|
+
|
|
344
|
+
- `provider?`
|
|
345
|
+
- `seriesType?`
|
|
346
|
+
- `tiers`
|
|
347
|
+
|
|
348
|
+
Each tier supports:
|
|
349
|
+
|
|
350
|
+
- raw tier:
|
|
351
|
+
- `kind: "raw"`
|
|
352
|
+
- `fromAge`
|
|
353
|
+
- `toAge`
|
|
354
|
+
- rollup tier:
|
|
355
|
+
- `kind: "rollup"`
|
|
356
|
+
- `fromAge`
|
|
357
|
+
- `toAge`
|
|
358
|
+
- `bucket`
|
|
359
|
+
- `aggregations?`
|
|
360
|
+
|
|
361
|
+
Rollup aggregations default to `["avg", "min", "max", "last", "count"]`.
|
|
362
|
+
|
|
363
|
+
### Configuration reference
|
|
364
|
+
|
|
365
|
+
Use `replaceTimeSeriesPolicyConfiguration(ctx, { defaultRules, presets?, maintenance? })` to persist the policy model, and `setUserTimeSeriesPolicyPreset(ctx, { userId, presetKey })` to assign a preset to a specific user.
|
|
366
|
+
|
|
367
|
+
#### Top-level configuration
|
|
368
|
+
|
|
369
|
+
| Field | Type | Required | Description |
|
|
370
|
+
|---|---|---|---|
|
|
371
|
+
| `defaultRules` | `TimeSeriesPolicyRuleInput[]` | Yes | Deployment-wide fallback rules used for all users unless a preset match overrides them. |
|
|
372
|
+
| `presets` | `TimeSeriesPolicyPresetInput[]` | No | Named policy sets that can be assigned per user. |
|
|
373
|
+
| `maintenance.enabled` | `boolean` | No | Enables the internal maintenance loop. Defaults to `true`. |
|
|
374
|
+
| `maintenance.interval` | `string \| number` | No | How often the maintenance loop should run. Accepts compact duration strings like `1h` or a millisecond number. |
|
|
375
|
+
|
|
376
|
+
#### Rule fields
|
|
377
|
+
|
|
378
|
+
| Field | Type | Required | Description |
|
|
379
|
+
|---|---|---|---|
|
|
380
|
+
| `provider` | `ProviderName` | No | Limits the rule to one provider. Omit for "all providers". |
|
|
381
|
+
| `seriesType` | `SeriesType \| string` | No | Limits the rule to one metric. Omit for "all series types". |
|
|
382
|
+
| `tiers` | `TimeSeriesTierInput[]` | Yes | Ordered list of age-based storage tiers. Must be contiguous from newest to oldest. |
|
|
383
|
+
|
|
384
|
+
Rules may be:
|
|
385
|
+
|
|
386
|
+
- global: no `provider`, no `seriesType`
|
|
387
|
+
- provider-only: `provider` only
|
|
388
|
+
- series-only: `seriesType` only
|
|
389
|
+
- exact: both `provider` and `seriesType`
|
|
390
|
+
|
|
391
|
+
#### `provider` values
|
|
392
|
+
|
|
393
|
+
Valid `provider` values are:
|
|
394
|
+
|
|
395
|
+
- `garmin`
|
|
396
|
+
- `suunto`
|
|
397
|
+
- `polar`
|
|
398
|
+
- `whoop`
|
|
399
|
+
- `strava`
|
|
400
|
+
- `apple`
|
|
401
|
+
- `samsung`
|
|
402
|
+
- `google`
|
|
403
|
+
|
|
404
|
+
Use `provider` only when you want different retention for the same metric depending on where it came from.
|
|
405
|
+
|
|
406
|
+
#### `seriesType` values
|
|
407
|
+
|
|
408
|
+
`seriesType` should be one of the supported metric keys from [`SERIES_TYPES`](#series-types).
|
|
409
|
+
|
|
410
|
+
Examples:
|
|
411
|
+
|
|
412
|
+
- `heart_rate`
|
|
413
|
+
- `resting_heart_rate`
|
|
414
|
+
- `oxygen_saturation`
|
|
415
|
+
- `steps`
|
|
416
|
+
- `weight`
|
|
417
|
+
- `respiratory_rate`
|
|
418
|
+
- `garmin_stress_level`
|
|
419
|
+
|
|
420
|
+
For full safety in your app code, use the exported `SeriesType` type or `SERIES_TYPES` constant:
|
|
421
|
+
|
|
422
|
+
```ts
|
|
423
|
+
import { SERIES_TYPES, type SeriesType } from "@clipin/convex-wearables";
|
|
424
|
+
|
|
425
|
+
const metric: SeriesType = "heart_rate";
|
|
426
|
+
const validKey = SERIES_TYPES.heart_rate;
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
If you omit `seriesType`, the rule applies to every supported metric for that scope.
|
|
430
|
+
|
|
431
|
+
#### Tier fields
|
|
432
|
+
|
|
433
|
+
| Field | Type | Required | Applies to | Description |
|
|
434
|
+
|---|---|---|---|---|
|
|
435
|
+
| `kind` | `"raw" \| "rollup"` | Yes | all tiers | Whether the tier stores original rows or bucketed aggregates. |
|
|
436
|
+
| `fromAge` | `string \| number` | Yes | all tiers | Lower age boundary for the tier. `0m` means newest data. |
|
|
437
|
+
| `toAge` | `string \| number \| null` | Yes | all tiers | Upper age boundary. `null` means open-ended / forever. |
|
|
438
|
+
| `bucket` | `string \| number` | Yes | rollup only | Bucket size for rollups. Must normalize to a whole number of minutes. |
|
|
439
|
+
| `aggregations` | `("avg" \| "min" \| "max" \| "last" \| "count")[]` | No | rollup only | Which summary values to keep for rollup rows. Defaults to all five. |
|
|
440
|
+
|
|
441
|
+
#### Duration values
|
|
442
|
+
|
|
443
|
+
All duration fields accept either:
|
|
444
|
+
|
|
445
|
+
- a compact string: `500ms`, `30s`, `15m`, `24h`, `7d`, `2w`
|
|
446
|
+
- a non-negative number interpreted as milliseconds
|
|
447
|
+
|
|
448
|
+
Examples:
|
|
449
|
+
|
|
450
|
+
- `fromAge: "0m"`
|
|
451
|
+
- `toAge: "24h"`
|
|
452
|
+
- `bucket: "30m"`
|
|
453
|
+
- `interval: "1h"`
|
|
454
|
+
|
|
455
|
+
#### Tier validation rules
|
|
456
|
+
|
|
457
|
+
The implementation currently enforces:
|
|
458
|
+
|
|
459
|
+
- the first tier must start at age `0`
|
|
460
|
+
- tiers must be contiguous with no gaps and no overlap
|
|
461
|
+
- open-ended tiers (`toAge: null`) must be the final tier
|
|
462
|
+
- only one raw tier is allowed in a single rule
|
|
463
|
+
- rollup buckets must be positive whole-minute durations
|
|
464
|
+
|
|
465
|
+
If data becomes older than the last tier, maintenance deletes it.
|
|
466
|
+
|
|
467
|
+
#### Aggregation values and meaning
|
|
468
|
+
|
|
469
|
+
| Aggregation | Meaning |
|
|
470
|
+
|---|---|
|
|
471
|
+
| `avg` | Arithmetic mean of all samples in the bucket |
|
|
472
|
+
| `min` | Lowest value seen in the bucket |
|
|
473
|
+
| `max` | Highest value seen in the bucket |
|
|
474
|
+
| `last` | Most recent value seen in the bucket |
|
|
475
|
+
| `count` | Number of samples combined into the bucket |
|
|
476
|
+
|
|
477
|
+
When querying rollup-backed data:
|
|
478
|
+
|
|
479
|
+
- the response always includes `value`
|
|
480
|
+
- `value` is selected from the configured aggregations using this priority: `avg`, then `last`, then `max`, then `min`, then `count`
|
|
481
|
+
- the rollup point also exposes `avg`, `min`, `max`, `last`, and `count` fields when available in storage
|
|
482
|
+
|
|
483
|
+
So if you configure:
|
|
484
|
+
|
|
485
|
+
```ts
|
|
486
|
+
aggregations: ["last"]
|
|
487
|
+
```
|
|
488
|
+
|
|
489
|
+
then `value` for that rollup point will be the bucket's `last` value.
|
|
490
|
+
|
|
491
|
+
#### Presets and per-user behavior
|
|
492
|
+
|
|
493
|
+
Each preset has:
|
|
494
|
+
|
|
495
|
+
| Field | Type | Required | Description |
|
|
496
|
+
|---|---|---|---|
|
|
497
|
+
| `key` | `string` | Yes | Stable preset identifier such as `free`, `pro`, or `enterprise`. |
|
|
498
|
+
| `rules` | `TimeSeriesPolicyRuleInput[]` | Yes | Rules evaluated before the default rules for users assigned to that preset. |
|
|
499
|
+
|
|
500
|
+
User assignment behavior:
|
|
501
|
+
|
|
502
|
+
- assign a preset with `setUserTimeSeriesPolicyPreset({ userId, presetKey: "pro" })`
|
|
503
|
+
- clear a preset with `setUserTimeSeriesPolicyPreset({ userId, presetKey: null })`
|
|
504
|
+
- if a user's preset has no matching rule for a provider/series pair, evaluation falls back to `defaultRules`
|
|
505
|
+
|
|
506
|
+
This means per-user support is implemented as preset assignment, not as arbitrary custom rule blobs per user.
|
|
507
|
+
|
|
508
|
+
#### Practical examples
|
|
509
|
+
|
|
510
|
+
Keep raw data forever:
|
|
511
|
+
|
|
512
|
+
```ts
|
|
513
|
+
{
|
|
514
|
+
tiers: [{ kind: "raw", fromAge: "0m", toAge: null }],
|
|
515
|
+
}
|
|
516
|
+
```
|
|
517
|
+
|
|
518
|
+
Keep raw 24h, then 30-minute rollups for 7 days, then delete:
|
|
519
|
+
|
|
520
|
+
```ts
|
|
521
|
+
{
|
|
522
|
+
provider: "garmin",
|
|
523
|
+
seriesType: "heart_rate",
|
|
524
|
+
tiers: [
|
|
525
|
+
{ kind: "raw", fromAge: "0m", toAge: "24h" },
|
|
526
|
+
{ kind: "rollup", fromAge: "24h", toAge: "7d", bucket: "30m" },
|
|
527
|
+
],
|
|
528
|
+
}
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
Keep no raw data, only 5-minute rollups forever:
|
|
532
|
+
|
|
533
|
+
```ts
|
|
534
|
+
{
|
|
535
|
+
provider: "garmin",
|
|
536
|
+
seriesType: "oxygen_saturation",
|
|
537
|
+
tiers: [
|
|
538
|
+
{
|
|
539
|
+
kind: "rollup",
|
|
540
|
+
fromAge: "0m",
|
|
541
|
+
toAge: null,
|
|
542
|
+
bucket: "5m",
|
|
543
|
+
aggregations: ["avg", "last", "count"],
|
|
544
|
+
},
|
|
545
|
+
],
|
|
546
|
+
}
|
|
547
|
+
```
|
|
548
|
+
|
|
549
|
+
### Maintenance
|
|
550
|
+
|
|
551
|
+
Scheduled maintenance is enabled by default.
|
|
552
|
+
|
|
553
|
+
- It compacts raw rows into rollups when they age out of a raw tier.
|
|
554
|
+
- It compacts finer rollups into coarser rollups when older tiers use larger buckets.
|
|
555
|
+
- It deletes data that falls outside the last configured tier.
|
|
556
|
+
- It is configured globally through `maintenance.enabled` and `maintenance.interval`.
|
|
557
|
+
- Set `maintenance.enabled: false` if you want to disable the background maintenance loop.
|
|
558
|
+
|
|
559
|
+
The maintenance loop is internal to the component. You do not need to add your own cron job.
|
|
560
|
+
|
|
561
|
+
### Example queries
|
|
562
|
+
|
|
563
|
+
```ts
|
|
564
|
+
// convex/wearablesAdmin.ts
|
|
565
|
+
import { query } from "./_generated/server";
|
|
566
|
+
import { wearables } from "./wearables";
|
|
567
|
+
|
|
568
|
+
export const getStoragePolicies = query({
|
|
569
|
+
args: {},
|
|
570
|
+
handler: async (ctx) => {
|
|
571
|
+
const configuration = await wearables.getTimeSeriesPolicyConfiguration(ctx);
|
|
572
|
+
const assignedPreset = await wearables.getUserTimeSeriesPolicyPreset(ctx, {
|
|
573
|
+
userId: "user-123",
|
|
574
|
+
});
|
|
575
|
+
const effectiveHeartRatePolicy = await wearables.getEffectiveTimeSeriesPolicy(ctx, {
|
|
576
|
+
userId: "user-123",
|
|
577
|
+
provider: "garmin",
|
|
578
|
+
seriesType: "heart_rate",
|
|
579
|
+
});
|
|
580
|
+
|
|
581
|
+
return { configuration, assignedPreset, effectiveHeartRatePolicy };
|
|
582
|
+
},
|
|
583
|
+
});
|
|
584
|
+
```
|
|
585
|
+
|
|
586
|
+
### Read behavior
|
|
587
|
+
|
|
588
|
+
- Reads prefer the tier configured for the requested age range.
|
|
589
|
+
- If maintenance has not caught up yet, reads fall back to any available raw or rollup data for that range instead of returning empty history.
|
|
590
|
+
- `value` on a rollup-backed point is chosen from the configured aggregation preference, using this priority: `avg`, then `last`, then `max`, then `min`, then `count`.
|
|
591
|
+
- Rollup-backed points also include `avg`, `min`, `max`, `last`, and `count` in the response.
|
|
592
|
+
|
|
593
|
+
### Write and retention behavior
|
|
594
|
+
|
|
595
|
+
- New points are written straight into the tier that matches their age at ingest time.
|
|
596
|
+
- Historical backfills do not need to land in raw storage first.
|
|
597
|
+
- Maintenance keeps already-stored data aligned with the current policy over time.
|
|
598
|
+
- Disconnecting an integration stops future ingestion, but stored data still ages out according to the policy unless you explicitly purge it from your app.
|
|
213
599
|
|
|
214
600
|
## Data Model
|
|
215
601
|
|
|
@@ -220,10 +606,15 @@ Categories: `"activity"`, `"sleep"`, `"recovery"`, `"body"`.
|
|
|
220
606
|
| `connections` | OAuth tokens + provider link per user | `by_user`, `by_user_provider`, `by_status` |
|
|
221
607
|
| `dataSources` | User + provider + device combinations | `by_user_provider`, `by_user_provider_device`, `by_connection` |
|
|
222
608
|
| `dataPoints` | Time-series health metrics | `by_source_type_time`, `by_type_time` |
|
|
609
|
+
| `timeSeriesRollups` | Bucketed historical time-series rollups | `by_source_type_bucket`, `by_source_type_bucket_size`, `by_source_bucket`, `by_type_bucket` |
|
|
223
610
|
| `events` | Workouts and sleep sessions | `by_user_category_time`, `by_external_id`, `by_source_start_end` |
|
|
224
611
|
| `dailySummaries` | Precomputed daily aggregates | `by_user_category_date`, `by_user_date` |
|
|
225
612
|
| `syncJobs` | Sync workflow tracking | `by_user`, `by_user_provider`, `by_user_status`, `by_status` |
|
|
226
613
|
| `oauthStates` | Temporary OAuth PKCE state | `by_state` |
|
|
614
|
+
| `timeSeriesPolicyRules` | Persisted default rules and preset rules | `by_set`, `by_set_scope` |
|
|
615
|
+
| `timeSeriesPolicyAssignments` | Per-user preset assignment | `by_user`, `by_preset` |
|
|
616
|
+
| `timeSeriesPolicySettings` | Global maintenance settings | `by_key` |
|
|
617
|
+
| `timeSeriesSeriesState` | Per-source series maintenance cursor | `by_source_series`, `by_next_maintenance`, `by_user` |
|
|
227
618
|
| `backfillJobs` | Long-running historical data imports | `by_connection`, `by_status` |
|
|
228
619
|
|
|
229
620
|
### Deduplication
|
|
@@ -235,6 +626,8 @@ Events are deduplicated at two levels:
|
|
|
235
626
|
|
|
236
627
|
Data points are deduplicated by `dataSourceId` + `seriesType` + `recordedAt`.
|
|
237
628
|
|
|
629
|
+
Rollups are upserted by `dataSourceId` + `seriesType` + `bucketMs` + `bucketStart`.
|
|
630
|
+
|
|
238
631
|
## OAuth Flow
|
|
239
632
|
|
|
240
633
|
The component handles the full OAuth 2.0 authorization code flow:
|
|
@@ -511,6 +904,8 @@ The component normalizes provider-specific activity types to a unified taxonomy:
|
|
|
511
904
|
|
|
512
905
|
All 88 pre-defined metric types are available via the `SERIES_TYPES` constant:
|
|
513
906
|
|
|
907
|
+
Use these keys as `seriesType` values in time-series policy rules.
|
|
908
|
+
|
|
514
909
|
```ts
|
|
515
910
|
import { SERIES_TYPES } from "@clipin/convex-wearables/types";
|
|
516
911
|
|
package/dist/client/index.d.ts
CHANGED
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import type { GenericActionCtx, GenericDataModel, GenericMutationCtx, GenericQueryCtx, HttpRouter } from "convex/server";
|
|
9
9
|
import type { ComponentApi } from "../component/_generated/component.js";
|
|
10
|
-
import type { AggregateStats, BackfillJob, Connection, DailySummary, DataPoint, EventCategory, EventsPage, GarminRoutesConfig, HealthEvent, ProviderCredentials, ProviderName, RegisterRoutesConfig, SdkPushDataPoint, SdkPushEvent, SdkPushPayload, SdkPushSummary, SdkRoutesConfig, SdkSyncPayload, SyncJob, SyncStatus, TimeSeriesPage, WearablesConfig } from "./types.js";
|
|
10
|
+
import type { AggregateStats, BackfillJob, Connection, DailySummary, DataPoint, EffectiveTimeSeriesPolicy, EventCategory, EventsPage, GarminRoutesConfig, HealthEvent, ProviderCredentials, ProviderName, RegisterRoutesConfig, SdkPushDataPoint, SdkPushEvent, SdkPushPayload, SdkPushSummary, SdkRoutesConfig, SdkSyncPayload, SyncJob, SyncStatus, TimeSeriesMaintenanceInput, TimeSeriesPage, TimeSeriesPolicyConfiguration, TimeSeriesPolicyPresetInput, TimeSeriesPolicyRuleInput, UserTimeSeriesPolicyPreset, WearablesConfig } from "./types.js";
|
|
11
11
|
export { oauthCallback, stravaWebhookEvent, stravaWebhookVerify, } from "../component/httpHandlers.js";
|
|
12
12
|
export type { SeriesType, SleepEvent, SleepStage, WorkoutEvent } from "./types.js";
|
|
13
13
|
export { SERIES_TYPES } from "./types.js";
|
|
14
|
-
export type { AggregateStats, BackfillJob, Connection, DailySummary, DataPoint, EventCategory, EventsPage, GarminRoutesConfig, HealthEvent, ProviderCredentials, ProviderName, RegisterRoutesConfig, SdkPushDataPoint, SdkPushEvent, SdkPushPayload, SdkPushSummary, SdkRoutesConfig, SdkSyncPayload, SyncJob, SyncStatus, TimeSeriesPage, WearablesConfig, };
|
|
14
|
+
export type { AggregateStats, BackfillJob, Connection, DailySummary, DataPoint, EffectiveTimeSeriesPolicy, EventCategory, EventsPage, GarminRoutesConfig, HealthEvent, ProviderCredentials, ProviderName, RegisterRoutesConfig, SdkPushDataPoint, SdkPushEvent, SdkPushPayload, SdkPushSummary, SdkRoutesConfig, SdkSyncPayload, SyncJob, SyncStatus, TimeSeriesMaintenanceInput, TimeSeriesPage, TimeSeriesPolicyConfiguration, TimeSeriesPolicyPresetInput, TimeSeriesPolicyRuleInput, UserTimeSeriesPolicyPreset, WearablesConfig, };
|
|
15
15
|
export type WearablesComponent = ComponentApi;
|
|
16
16
|
type QueryRunner = Pick<GenericQueryCtx<GenericDataModel>, "runQuery"> | Pick<GenericActionCtx<GenericDataModel>, "runQuery">;
|
|
17
17
|
type MutationRunner = Pick<GenericMutationCtx<GenericDataModel>, "runMutation"> | Pick<GenericActionCtx<GenericDataModel>, "runMutation">;
|
|
@@ -117,6 +117,42 @@ export declare class WearablesClient {
|
|
|
117
117
|
getAvailableSeriesTypes(ctx: QueryRunner, args: {
|
|
118
118
|
userId: string;
|
|
119
119
|
}): Promise<string[]>;
|
|
120
|
+
/**
|
|
121
|
+
* Get persisted time-series policy configuration.
|
|
122
|
+
*/
|
|
123
|
+
getTimeSeriesPolicyConfiguration(ctx: QueryRunner): Promise<TimeSeriesPolicyConfiguration>;
|
|
124
|
+
/**
|
|
125
|
+
* Get the preset assigned to a user, if any.
|
|
126
|
+
*/
|
|
127
|
+
getUserTimeSeriesPolicyPreset(ctx: QueryRunner, args: {
|
|
128
|
+
userId: string;
|
|
129
|
+
}): Promise<UserTimeSeriesPolicyPreset | null>;
|
|
130
|
+
/**
|
|
131
|
+
* Resolve the effective time-series policy for a user/provider/series triple.
|
|
132
|
+
*/
|
|
133
|
+
getEffectiveTimeSeriesPolicy(ctx: QueryRunner, args: {
|
|
134
|
+
userId: string;
|
|
135
|
+
provider: ProviderName;
|
|
136
|
+
seriesType: string;
|
|
137
|
+
}): Promise<EffectiveTimeSeriesPolicy>;
|
|
138
|
+
/**
|
|
139
|
+
* Replace the persisted time-series policy configuration.
|
|
140
|
+
*/
|
|
141
|
+
replaceTimeSeriesPolicyConfiguration(ctx: MutationRunner, args: {
|
|
142
|
+
defaultRules: TimeSeriesPolicyRuleInput[];
|
|
143
|
+
presets?: TimeSeriesPolicyPresetInput[];
|
|
144
|
+
maintenance?: TimeSeriesMaintenanceInput;
|
|
145
|
+
}): Promise<{
|
|
146
|
+
defaultRulesStored: number;
|
|
147
|
+
presetsStored: number;
|
|
148
|
+
}>;
|
|
149
|
+
/**
|
|
150
|
+
* Assign or clear a user-specific policy preset.
|
|
151
|
+
*/
|
|
152
|
+
setUserTimeSeriesPolicyPreset(ctx: MutationRunner, args: {
|
|
153
|
+
userId: string;
|
|
154
|
+
presetKey: string | null;
|
|
155
|
+
}): Promise<null>;
|
|
120
156
|
/**
|
|
121
157
|
* Get daily summaries for a user.
|
|
122
158
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|
package/dist/client/index.js
CHANGED
|
@@ -115,6 +115,36 @@ export class WearablesClient {
|
|
|
115
115
|
async getAvailableSeriesTypes(ctx, args) {
|
|
116
116
|
return await ctx.runQuery(this.component.dataPoints.getAvailableSeriesTypes, args);
|
|
117
117
|
}
|
|
118
|
+
/**
|
|
119
|
+
* Get persisted time-series policy configuration.
|
|
120
|
+
*/
|
|
121
|
+
async getTimeSeriesPolicyConfiguration(ctx) {
|
|
122
|
+
return (await ctx.runQuery(this.component.dataPoints.getTimeSeriesPolicyConfiguration, {}));
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Get the preset assigned to a user, if any.
|
|
126
|
+
*/
|
|
127
|
+
async getUserTimeSeriesPolicyPreset(ctx, args) {
|
|
128
|
+
return (await ctx.runQuery(this.component.dataPoints.getUserTimeSeriesPolicyPreset, args));
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Resolve the effective time-series policy for a user/provider/series triple.
|
|
132
|
+
*/
|
|
133
|
+
async getEffectiveTimeSeriesPolicy(ctx, args) {
|
|
134
|
+
return (await ctx.runQuery(this.component.dataPoints.getEffectiveTimeSeriesPolicy, args));
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Replace the persisted time-series policy configuration.
|
|
138
|
+
*/
|
|
139
|
+
async replaceTimeSeriesPolicyConfiguration(ctx, args) {
|
|
140
|
+
return await ctx.runMutation(this.component.dataPoints.replaceTimeSeriesPolicyConfiguration, args);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Assign or clear a user-specific policy preset.
|
|
144
|
+
*/
|
|
145
|
+
async setUserTimeSeriesPolicyPreset(ctx, args) {
|
|
146
|
+
return await ctx.runMutation(this.component.dataPoints.setUserTimeSeriesPolicyPreset, args);
|
|
147
|
+
}
|
|
118
148
|
// -----------------------------------------------------------------------
|
|
119
149
|
// Data Access — Summaries
|
|
120
150
|
// -----------------------------------------------------------------------
|
package/dist/client/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|