Prepare for tinycloud 0.3.23: Find Moments — rubric-driven discovery (skill floor → 0.3.23) - #33
Prepare for tinycloud 0.3.23: Find Moments — rubric-driven discovery (skill floor → 0.3.23)#33kdr wants to merge 1 commit into
Conversation
…(skill floor → 0.3.23) tinycloud 0.3.23 (SDK 0.7.29, spec v0.7.23) adds the `moments` verb — the first new verb since `query` (verbs 17→18, features 49→52: moments.v1, moments.collections.v1, moments.search.v1). `moments` sweeps a WHOLE video against a rubric the caller wrote and persists every window that qualifies, which makes it the fourth retrieval shape and the easiest to reach for by mistake. The skill teaches the split explicitly — probe/ask FIND semantically, extract pulls declared fields, search greps cached context, moments measures against a rubric — plus the three contracts that are easy to get backwards: - --limit/--min-score/--sort shape the READ, not the result: every accepted moment stays persisted and total_moments reports the full count. - --sort criterion-score|rank on a collection requires --criterion <name>, because scores only compare within one rubric. - Detaching a criterion (or removing a file) drops moments from collection ENUMERATION, not from existence — the runs persist as job history. Also taught: criterion names are lowercase snake_case; a moments collection needs at least one criterion at create; attaching a criterion is free while the per-file backfill runs bill as they execute (so ask before attaching to a large collection); and moments are searched with `moments search`, not `probe --scope moment` — probe runs on deep search, which has only file and segment scopes. As of spec v0.7.23 `query` has no moments tables, which the docs state rather than implying otherwise. Floor rises to 0.3.23: tinycloud-skill.json skill_version/min_version/supported_range → 0.3.23 and required_features +moments.v1 +moments.collections.v1 +moments.search.v1, with preflight.sh kept byte-identical. Plugin + marketplace metadata → 0.3.23, now enforced by the version-parity check added in #32. Verified: npm test 42/42; shellcheck clean; all three CI plugin/skill metadata checks pass locally (40 features in sync, range >=0.3.23 <0.4.0, every version field at 0.3.23).
PR SummaryMedium Risk Overview The skill now treats
Reviewed by Cursor Bugbot for commit 106b6c6. Bugbot is set up for automated code reviews on this repo. Configure here. |
tinycloud 0.3.23 (Cloudglue SDK 0.7.29, spec v0.7.23) adds the
momentsverb — the first new verb sincequery. Verbs 17→18; features 49→52 (moments.v1,moments.collections.v1,moments.search.v1).What the skill now teaches
momentssweeps a whole video against a rubric the caller wrote and persists every window that qualifies. That makes it the fourth retrieval shape, and the easiest to reach for by mistake — so the skill leads with the split:probe/askextractsearchmomentsThree contracts that are easy to get backwards, each called out explicitly:
--limit/--min-score/--sortshape the READ, not the result. Every accepted moment stays persisted andtotal_momentsreports the full count — re-read withmoments show, don't re-run.--sort criterion-score|rankon a collection requires--criterion <name>. Scores only compare within one rubric.Also taught: criterion names are lowercase snake_case; a moments collection needs at least one criterion at create; attaching a criterion is free while the per-file backfill runs bill as they execute, so the skill says ask the user before attaching to a large collection; and moments are searched with
moments search, notprobe --scope moment— probe runs on deep search, which has onlyfileandsegmentscopes.Stated as a limit rather than implied away: as of spec v0.7.23 the
queryverb has no moments virtual tables andask/responses have no moment awareness, so moments are discoverable and searchable but not yet countable.Floor raise
tinycloud-skill.jsonskill_version/min_version/supported_range→ 0.3.23,required_features+moments.v1+moments.collections.v1+moments.search.v1, withpreflight.shkept byte-identical.Plugin + marketplace metadata → 0.3.23 — now enforced automatically by the version-parity check added in #32, rather than by remembering.
Verification
npm testshellcheck>=0.3.23 <0.4.0) · frontmatterThe binary behavior these docs describe was verified live on the paired internal PR: a real find-moments sweep, the moments-collection lifecycle end to end, and the read-time-shaping invariant proven against the API.