Conversation
…convention
telemetry_public was the sole tool returning a bare {action, result} envelope.
Every other oddkit tool (including telemetry_policy per PR #108) returns the
full {action, result, server_time, assistant_text, debug} shape.
Canon reference: klappy://docs/appendices/epoch-8-2 — server_time in every response.
Precedent: PR #108 — telemetry_policy envelope conformance.
Changes:
- workers/src/index.ts: telemetry_public handler emits full envelope on both success and not-configured error paths
- workers/test/canon-tool-envelope.smoke.mjs: add telemetry_public assertion via expectFullEnvelope
Caught by v0.21.0 regression test sweep (2026-04-20).
…imestamp runCatalog returned index.generated_at as debug.generated_at — the cached index build timestamp, not the current response time. Every other handler uses new Date().toISOString() for this field. Observed during v0.21.0 regression testing: debug.generated_at lagged server_time by 48 minutes in a single response envelope. Changes: - workers/src/orchestrate.ts: runCatalog now sets debug.generated_at to new Date().toISOString(). Cached index build timestamp preserved as debug.index_built_at for consumers wanting the freshness signal. - workers/test/canon-tool-envelope.smoke.mjs: add oddkit_catalog coverage. Bug slipped because catalog had no smoke assertion. Canon references: - klappy://canon/values/axioms (Axiom 1 — Reality Is Sovereign) - klappy://canon/principles/consistency-same-pattern-every-time - klappy://canon/principles/cache-fetches-and-parses (PR #125)
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
oddkit | 8b19c93 | Commit Preview URL Branch Preview URL |
Apr 20 2026, 01:11 PM |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promoting PR #124 to prod
Origin PR: #124 — fix(telemetry_public): add server_time + full envelope to match tool convention
Main HEAD:
a5d9d61(contains PR #124 merge commit + fix commit a024e88)Release-validation-gate status
Gate 1 — Cursor Bugbot on PR #124
✅ completed, no issues found (on SHA
a024e88, the feature branch head which is now on main)Gate 2 — Independent Sonnet 4.6 validator
✅ GO — ran before main merge as an independent read-only pass. The diff on main is identical to the diff the validator reviewed, so the verdict carries. Evidence captured in session ledger; key findings:
startTimeplacement correct,result.generated_atpreserved, assistant_text derivation handles 3 cases, smoke covered): PASSPost-merge main smoke (2026-04-20T12:48Z)
Live call against
main-oddkit.klappy.workers.devwith the same query that returned a bare{action, result}envelope this morning now returns:Fix is live on main and behaves as designed.
What's shipping to prod
Two commits ahead of current prod (
2c5d652):a024e88— the fix itself (+27 / -1 across 2 files)a5d9d61— merge commitNo other main-only changes. No version bump (fix lands on next MINOR).
Post-merge actions
oddkit.klappy.devto confirm envelope compliance in prod.Note
Medium Risk
Changes the JSON response envelope for
telemetry_publicand adjustsoddkit_catalogdebug timestamps, which could affect downstream clients/tests that assume the old fields or semantics.Overview
Brings
telemetry_publicresponses into full envelope conformance by addingserver_time,assistant_text, anddebug.duration_ms, and by producing a clearerassistant_textbased on success/error and returned row count.Adjusts
oddkit_catalogdebug metadata sodebug.generated_atreflects response time (not cached index build time) and preserves the prior cached timestamp underdebug.index_built_at. Updates the live smoke test to covertelemetry_publicenvelope shape and to assert the newoddkit_catalogtimestamp semantics.Reviewed by Cursor Bugbot for commit 8b19c93. Bugbot is set up for automated code reviews on this repo. Configure here.