@zhuoyuezs/ml-platform 0.2.8 → 0.2.10

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.
Files changed (36) hide show
  1. package/CI-ARTIFACT.md +2 -2
  2. package/checksums.json +74 -54
  3. package/package.json +1 -1
  4. package/release.json +19 -19
  5. package/runtime/business-client/README.md +64 -4
  6. package/runtime/business-client/package-lock.json +2 -2
  7. package/runtime/business-client/package.json +1 -1
  8. package/runtime/business-client/src/catalog.js +25 -6
  9. package/runtime/business-client/src/cli.js +177 -7
  10. package/runtime/business-client/src/http.js +192 -32
  11. package/skills/data-source-exploration/SKILL.md +12 -1
  12. package/skills/data-source-exploration/agents/openai.yaml +2 -2
  13. package/skills/data-source-exploration/references/data-platform.md +83 -0
  14. package/skills/feature-management/SKILL.md +29 -11
  15. package/skills/feature-management/agents/openai.yaml +2 -2
  16. package/skills/feature-management/references/commands.md +64 -7
  17. package/skills/feature-management/references/contracts.md +124 -6
  18. package/skills/feature-management/references/data-platform-mapping.md +104 -0
  19. package/skills/feature-management/references/operator-authoring.md +116 -8
  20. package/skills/feature-management/references/platform-capability-guide.md +6 -0
  21. package/skills/feature-management/references/supervised-datasets.md +13 -0
  22. package/skills/model-deployment-management/SKILL.md +7 -0
  23. package/skills/model-deployment-management/references/contracts.md +6 -0
  24. package/skills/model-deployment-management/references/operations.md +28 -1
  25. package/skills/model-deployment-management/references/troubleshooting.md +8 -0
  26. package/skills/model-lifecycle-management/SKILL.md +27 -5
  27. package/skills/model-lifecycle-management/agents/openai.yaml +2 -2
  28. package/skills/model-lifecycle-management/references/ablation.md +111 -0
  29. package/skills/model-lifecycle-management/references/discovery.md +18 -3
  30. package/skills/model-lifecycle-management/references/evaluation.md +188 -1
  31. package/skills/model-lifecycle-management/references/experiment-runs.md +59 -0
  32. package/skills/model-lifecycle-management/references/model-comparison.md +11 -9
  33. package/skills/model-lifecycle-management/references/packaging.md +46 -0
  34. package/skills/model-lifecycle-management/references/training-contracts.md +172 -1
  35. package/skills/model-lifecycle-management/references/training.md +60 -0
  36. package/skills/prediction-report-management/SKILL.md +43 -8
@@ -22,9 +22,15 @@ ml-platform --profile server get-prediction-report-run RUN_ID
22
22
  ```
23
23
 
24
24
  Check the deployment with `get-deployment DEPLOYMENT_ID` before creating a
25
- schedule. The deployment must support `feature_lookup` and have a usable
26
- inference horizon, supplied by either the schedule request or deployment
27
- policy. A report run may be `SKIPPED` when the selected revision is not READY.
25
+ schedule. The deployment must support `feature_lookup`. A forecasting
26
+ deployment also needs a usable inference horizon, supplied by either the
27
+ schedule request or deployment policy. A clustering deployment (its model
28
+ artifact has `output_bindings`) has no horizon: omit `horizon` and
29
+ `output_window`, which are rejected. A report run may be `SKIPPED` when the
30
+ selected revision is not READY.
31
+ A READY staging revision is eligible; reporting does not require canary or
32
+ production promotion, an Ingress, or a Gateway. Do not promote a deployment
33
+ just to enable its report schedule.
28
34
 
29
35
  ## Configure a destination
30
36
 
@@ -51,8 +57,11 @@ and a non-empty `body` object. This maps each normalized prediction point:
51
57
  }
52
58
  ```
53
59
 
54
- A point always has `series_index` and `value`; `target_time` is present only
55
- when Serving returns it.
60
+ A forecast point always has `series_index` and `value`; `target_time` is
61
+ present only when Serving returns it. A clustering row has no `value`; it has
62
+ `series_index`, `kind: "clustering"`, integer `cluster_id`, the model's score
63
+ (`distance_to_center` or `cluster_probability`), and `model_artifact_id`, so
64
+ map those fields instead. A cluster ID is meaningful only for that artifact.
56
65
 
57
66
  ```bash
58
67
  ml-platform --profile server validate-destination-profile PROFILE_JSON
@@ -80,9 +89,15 @@ and `type` for bounded transformations and validation. `timezone` is an IANA
80
89
  timezone and must be used together with `format`; it converts an aware ISO-8601
81
90
  timestamp before formatting. For a business endpoint that represents local
82
91
  midnight as the end of the previous business day, set `midnight_as_24: true`
83
- on a time field whose format contains `%H` (for example, `%H:%M`). This maps
84
- local `00:00` to `24:00` after timezone conversion and leaves other times
85
- unchanged. For example, use
92
+ on both the business date field (`format: "%Y-%m-%d"`) and time field
93
+ (`format: "%H:%M"`), with `timezone: "Asia/Shanghai"` on each. At exact local
94
+ midnight, formatted dates move back one day and `%H` emits `24`; other times
95
+ are unchanged. For example, `2026-10-31T00:00:00+08:00` maps to date
96
+ `2026-10-30` and time `24:00`. Keep the timestamp mapped directly from
97
+ `target_time` and the MW field directly from `value`, without format or
98
+ numeric transforms. This leaves their original values unchanged. Keep
99
+ `midnight_as_24` unset on `origin_date` when it means the local cutoff date.
100
+ For example, use
86
101
  `{"source":"cutoff_time","format":"%Y-%m-%d","timezone":"Asia/Shanghai"}`
87
102
  to map `2026-09-10T16:00:00Z` to `2026-09-11`. Arbitrary code and expressions
88
103
  are not supported. A missing field or type failure produces
@@ -101,6 +116,14 @@ pause, or resume. Use `enabled: false` for a staged schedule that should not
101
116
  run yet. `SCHEDULE_JSON` contains `deployment_id`, five-field `cron`, IANA
102
117
  `timezone`, `request.entity`, and `destination: {"name":"...","version":"v1"}`.
103
118
  Do not assume that an existing destination profile is bound to any schedule.
119
+ For clustering schedules only, `request.include_inputs: true` asks Serving to
120
+ echo the model input row it used; each row then carries `inputs` (column name
121
+ to value, before the model's own transform), e.g. `{"source": "inputs.seg6"}`.
122
+ Rollout order: deploy the Serving runtime that supports the echo and repackage
123
+ (then redeploy) the model with it *before* creating or updating a schedule to
124
+ `include_inputs: true`. An older runtime silently ignores the field, so every
125
+ run fails with `prediction_contract_mismatch` and nothing is sent; if that
126
+ happens, set `include_inputs` back to `false` or finish the repackage first.
104
127
 
105
128
  ```bash
106
129
  ml-platform --profile server create-prediction-report-schedule SCHEDULE_JSON
@@ -116,6 +139,18 @@ revision, destination name/version, next run time, latest run status, and
116
139
  redacted error code. Do not claim delivery succeeded based only on validation
117
140
  or schedule creation.
118
141
 
142
+ ## Watch runs
143
+
144
+ The platform does not send notifications today. A `FAILED` or `SKIPPED` run
145
+ is visible only in the run list. When the API was down over several scheduled
146
+ times, only the latest overdue time gets a run; the earlier ones leave no run
147
+ at all, so look for gaps in `scheduled_at`. No CLI command reruns an earlier
148
+ cutoff. Before enabling a schedule, tell the user this and ask them to name a
149
+ person who will check `list-prediction-report-runs SCHEDULE_ID` after each
150
+ scheduled time, and to agree with the destination owner what happens for a
151
+ cutoff that was not delivered. Record that owner in your report. Do not describe the schedule as
152
+ monitored, and do not promise that failures will be reported automatically.
153
+
119
154
  At completion, offer a next step only when it fits the observed state: after a
120
155
  profile is created, optionally bind it to a schedule for a suitable deployment;
121
156
  after a disabled schedule is verified, optionally resume it with explicit