@pithy-sh/leaderboard 0.1.3 → 0.1.5

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 (60) hide show
  1. package/dist/board/registry.d.ts +2 -0
  2. package/dist/board/registry.js +2 -0
  3. package/dist/capability.d.ts +2 -0
  4. package/dist/capability.js +2 -0
  5. package/dist/config/boardKey.d.ts +2 -0
  6. package/dist/config/boardKey.js +2 -0
  7. package/dist/config/config.d.ts +2 -0
  8. package/dist/config/config.js +2 -0
  9. package/dist/data/boardRecord.d.ts +2 -0
  10. package/dist/data/boardRecord.js +2 -0
  11. package/dist/data/entry.d.ts +2 -0
  12. package/dist/data/entry.js +2 -0
  13. package/dist/data/lock.d.ts +2 -0
  14. package/dist/data/lock.js +2 -0
  15. package/dist/data/tables.d.ts +2 -0
  16. package/dist/data/tables.js +2 -0
  17. package/dist/entry/store.d.ts +2 -0
  18. package/dist/entry/store.js +2 -0
  19. package/dist/error/errors.d.ts +2 -0
  20. package/dist/error/errors.js +2 -0
  21. package/dist/http/guard.d.ts +2 -0
  22. package/dist/http/guard.js +2 -0
  23. package/dist/http/handlers.d.ts +2 -0
  24. package/dist/http/handlers.js +2 -0
  25. package/dist/http/routes.d.ts +2 -0
  26. package/dist/http/routes.js +2 -0
  27. package/dist/http/schemas.d.ts +2 -0
  28. package/dist/http/schemas.js +2 -0
  29. package/dist/index.d.ts +2 -0
  30. package/dist/index.js +2 -0
  31. package/dist/migrations/0001_entries.d.ts +2 -0
  32. package/dist/migrations/0001_entries.js +2 -0
  33. package/dist/rank/lock.d.ts +2 -0
  34. package/dist/rank/lock.js +2 -0
  35. package/dist/rank/materialize.d.ts +2 -0
  36. package/dist/rank/materialize.js +2 -0
  37. package/dist/rank/query.d.ts +2 -0
  38. package/dist/rank/query.js +2 -0
  39. package/dist/rank/retryPolicy.d.ts +2 -0
  40. package/dist/rank/retryPolicy.js +2 -0
  41. package/dist/rank/segment.d.ts +2 -0
  42. package/dist/rank/segment.js +2 -0
  43. package/dist/rank/tiers.d.ts +2 -0
  44. package/dist/rank/tiers.js +2 -0
  45. package/dist/rank/worker.d.ts +2 -0
  46. package/dist/rank/worker.entry.d.ts +2 -0
  47. package/dist/rank/worker.entry.js +2 -0
  48. package/dist/rank/worker.js +2 -0
  49. package/dist/retention/prune.d.ts +2 -0
  50. package/dist/retention/prune.js +2 -0
  51. package/dist/seeds/example.d.ts +2 -0
  52. package/dist/seeds/example.js +2 -0
  53. package/dist/session/bookmark.d.ts +2 -0
  54. package/dist/session/bookmark.js +2 -0
  55. package/dist/version.generated.d.ts +3 -1
  56. package/dist/version.generated.js +3 -1
  57. package/dist/window/schedule.d.ts +2 -0
  58. package/dist/window/schedule.js +2 -0
  59. package/package.json +3 -3
  60. package/src/version.generated.ts +1 -1
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { LeaderboardBoard } from "../config/config";
2
4
  import { type LeaderboardDatabase } from "../data/tables";
3
5
  /**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardBoardImmutableError } from "../error/errors.js";
2
4
  import { LeaderboardBoardRecord } from "../data/boardRecord.js";
3
5
  import { LEADERBOARD_BOARDS_TABLE } from "../data/tables.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { type Capability } from "@pithy-sh/core/src/capability/capability";
2
4
  import { LeaderboardConfig, type LeaderboardConfigInput } from "./config/config";
3
5
  /**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardConfig, materializeSchedule } from "./config/config.js";
2
4
  import { leaderboardTables } from "./data/tables.js";
3
5
  import { registerLeaderboardRoutes } from "./http/routes.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  /**
2
4
  * The board-key pattern, in the one module that has no reason to import anything (#430).
3
5
  *
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  //#region src/config/boardKey.ts
2
4
  /**
3
5
  * The board-key pattern, in the one module that has no reason to import anything (#430).
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { z } from "zod";
2
4
  /**
3
5
  * The leaderboard capability's config — the thin, user-owned surface in `pithy.config.ts`. Every field
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { assertValidSchedule } from "../window/schedule.js";
2
4
  import { BOARD_KEY_PATTERN } from "./boardKey.js";
3
5
  import { z } from "zod";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { z } from "zod";
2
4
  /**
3
5
  * The recorded definition of a board that has started taking entries — the row in
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardStore, ScoreAggregation, ScoreDirection } from "../config/config.js";
2
4
  import { z } from "zod";
3
5
  import { SQLiteDate } from "@pithy-sh/core/src/data/codecs";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { z } from "zod";
2
4
  /**
3
5
  * One player's state on one board in one window — the row in `pithy_leaderboard_entries`.
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { z } from "zod";
2
4
  import { SQLiteBoolean, SQLiteDate } from "@pithy-sh/core/src/data/codecs";
3
5
  //#region src/data/entry.ts
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { z } from "zod";
2
4
  /**
3
5
  * A single-row advisory lock in `pithy_leaderboard_locks` — the row in the table, one per lock name.
package/dist/data/lock.js CHANGED
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { z } from "zod";
2
4
  import { SQLiteDate } from "@pithy-sh/core/src/data/codecs";
3
5
  //#region src/data/lock.ts
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { D1Database } from "@cloudflare/workers-types";
2
4
  import { type DatabaseSchema } from "@pithy-sh/core/src/data/db";
3
5
  import type { Kysely } from "kysely";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardBoardRecord } from "./boardRecord.js";
2
4
  import { LeaderboardEntry } from "./entry.js";
3
5
  import { LeaderboardLock } from "./lock.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { LeaderboardBoard } from "../config/config";
2
4
  import { LeaderboardEntry } from "../data/entry";
3
5
  import { type LeaderboardDatabase } from "../data/tables";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardEntry } from "../data/entry.js";
2
4
  import { LEADERBOARD_ENTRIES_TABLE } from "../data/tables.js";
3
5
  import { sql } from "kysely";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { PithyError } from "@pithy-sh/core/src/error/pithyError";
2
4
  import type { MessageParams } from "@pithy-sh/core/src/i18n/catalog";
3
5
  /**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { PithyError } from "@pithy-sh/core/src/error/pithyError";
2
4
  //#region src/error/errors.ts
3
5
  var LeaderboardBoardNotFoundError = class extends PithyError {
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { PithyHonoEnv } from "@pithy-sh/core/src/capability/capability";
2
4
  import type { MiddlewareHandler } from "hono";
3
5
  /**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardSubmitForbiddenError } from "../error/errors.js";
2
4
  import { ForbiddenError, UnauthorizedError } from "@pithy-sh/core/src/error/pithyError";
3
5
  //#region src/http/guard.ts
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { LeaderboardConfig } from "../config/config";
2
4
  import type { LeaderboardDatabase } from "../data/tables";
3
5
  import { type RankedEntry } from "../rank/query";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardBoardNotFoundError, LeaderboardEntryNotFoundError, LeaderboardScoreRejectedError } from "../error/errors.js";
2
4
  import { windowKeyAt } from "../window/schedule.js";
3
5
  import { assertBoardDefinition } from "../board/registry.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { PithyHonoEnv } from "@pithy-sh/core/src/capability/capability";
2
4
  import type { Context, Hono } from "hono";
3
5
  import type { LeaderboardConfig } from "../config/config";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { BOOKMARK_HEADER, leaderboardSession, readBookmark } from "../session/bookmark.js";
2
4
  import { requireAdminScope, requireAuth, requireSubmitScope } from "./guard.js";
3
5
  import { hideEntry, listBoards, readAround, readOwnRank, readSegment, readTop, removeEntry, setOwnVisibility, submitScore } from "./handlers.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { z } from "zod";
2
4
  export declare const BoardParam: z.ZodObject<{
3
5
  board: z.ZodString;
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { BOARD_KEY_PATTERN } from "../config/boardKey.js";
2
4
  import "../rank/segment.js";
3
5
  import { z } from "zod";
package/dist/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  /**
2
4
  * The package entrypoint — the surface `pithy add leaderboard` wires into `pithy.config.ts`. Deliberately
3
5
  * narrow: the capability factory, its config and options types, and the read shapes an app renders. Every
package/dist/index.js CHANGED
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { ALL_TIME_WINDOW, previousWindowKeys, windowKeyAt } from "./window/schedule.js";
2
4
  import { LeaderboardBoard, LeaderboardConfig, LeaderboardRank, LeaderboardStore, LeaderboardTier, ScoreAggregation, ScoreDirection, materializeSchedule, resolveBoard } from "./config/config.js";
3
5
  import { LeaderboardEntry } from "./data/entry.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { Migration } from "kysely/migration";
2
4
  /**
3
5
  * The leaderboard tables: player entries, and the board drift guard.
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  //#region src/migrations/0001_entries.ts
2
4
  /**
3
5
  * The leaderboard tables: player entries, and the board drift guard.
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { type LeaderboardDatabase } from "../data/tables";
2
4
  /**
3
5
  * The rank-refresh advisory lock: at most one refresh runs at a time.
package/dist/rank/lock.js CHANGED
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardLock } from "../data/lock.js";
2
4
  import { LEADERBOARD_LOCKS_TABLE } from "../data/tables.js";
3
5
  //#region src/rank/lock.ts
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { LeaderboardBoard } from "../config/config";
2
4
  import { type LeaderboardDatabase } from "../data/tables";
3
5
  /**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LEADERBOARD_ENTRIES_TABLE } from "../data/tables.js";
2
4
  import { ValidationError } from "@pithy-sh/core/src/error/pithyError";
3
5
  import { sql } from "kysely";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { LeaderboardBoard } from "../config/config";
2
4
  import { LeaderboardEntry } from "../data/entry";
3
5
  import { type LeaderboardDatabase } from "../data/tables";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardEntry } from "../data/entry.js";
2
4
  import { LEADERBOARD_ENTRIES_TABLE } from "../data/tables.js";
3
5
  import "./segment.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { WorkflowRetryPolicy } from "@pithy-sh/core/src/workflow/faults";
2
4
  /**
3
5
  * **What the rank refresh retries, and what it refuses to.**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  //#region src/rank/retryPolicy.ts
2
4
  /**
3
5
  * **What the rank refresh retries, and what it refuses to.**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  /**
2
4
  * The segment cap, in the one module that has no reason to import anything (#430).
3
5
  *
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  //#region src/rank/segment.ts
2
4
  /**
3
5
  * The segment cap, in the one module that has no reason to import anything (#430).
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { LeaderboardTier, ScoreDirection } from "../config/config";
2
4
  /**
3
5
  * Classify a score into one of the board's tiers, or null if it reaches none.
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  //#region src/rank/tiers.ts
2
4
  /**
3
5
  * Classify a score into one of the board's tiers, or null if it reaches none.
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { D1Database } from "@cloudflare/workers-types";
2
4
  import type { LeaderboardBoard, LeaderboardConfig } from "../config/config";
3
5
  import { type PruneOutcome } from "../retention/prune";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { WorkflowEntrypoint, type WorkflowEvent, type WorkflowStep } from "cloudflare:workers";
2
4
  import type { D1Database } from "@cloudflare/workers-types";
3
5
  /**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { windowKeyAt } from "../window/schedule.js";
2
4
  import { LeaderboardConfig } from "../config/config.js";
3
5
  import { leaderboardDatabase } from "../data/tables.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { windowKeyAt } from "../window/schedule.js";
2
4
  import { materializeSchedule } from "../config/config.js";
3
5
  import { leaderboardDatabase } from "../data/tables.js";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { LeaderboardBoard } from "../config/config";
2
4
  import type { LeaderboardDatabase } from "../data/tables";
3
5
  export declare function pruneBoard(db: LeaderboardDatabase, board: LeaderboardBoard, now: Date): Promise<number>;
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { previousWindowKeys, windowKeyAt } from "../window/schedule.js";
2
4
  import { entryStore } from "../entry/store.js";
3
5
  //#region src/retention/prune.ts
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { type SeedSet } from "@pithy-sh/core/src/seed/seed";
2
4
  /**
3
5
  * A tiny demo board's worth of entries — the three canonical example users ({@link EXAMPLE_ADA} et al.)
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardEntry } from "../data/entry.js";
2
4
  import { LEADERBOARD_ENTRIES_TABLE } from "../data/tables.js";
3
5
  import { EXAMPLE_ADA, EXAMPLE_ALAN, EXAMPLE_GRACE } from "@pithy-sh/core/src/seed/exampleIdentities";
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import type { D1Database } from "@cloudflare/workers-types";
2
4
  import { type LeaderboardDatabase } from "../data/tables";
3
5
  /**
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { leaderboardDatabase } from "../data/tables.js";
2
4
  //#region src/session/bookmark.ts
3
5
  /**
@@ -1,5 +1,7 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  /** This package's npm name — the join key against a release feed. */
2
4
  export declare const PACKAGE_NAME = "@pithy-sh/leaderboard";
3
5
  /** This package's version, stamped from its own package.json at generation time. */
4
- export declare const PACKAGE_VERSION = "0.1.3";
6
+ export declare const PACKAGE_VERSION = "0.1.5";
5
7
  //# sourceMappingURL=version.generated.d.ts.map
@@ -1,7 +1,9 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  //#region src/version.generated.ts
2
4
  /** This package's npm name — the join key against a release feed. */
3
5
  const PACKAGE_NAME = "@pithy-sh/leaderboard";
4
6
  /** This package's version, stamped from its own package.json at generation time. */
5
- const PACKAGE_VERSION = "0.1.3";
7
+ const PACKAGE_VERSION = "0.1.5";
6
8
  //#endregion
7
9
  export { PACKAGE_NAME, PACKAGE_VERSION };
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  /**
2
4
  * Window keys. A board's `window` is a CRON expression; the window a score falls into is keyed by the
3
5
  * instant that CRON last fired at or before the score. Omitting the schedule means one all-time window.
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 Pithy
2
+ // SPDX-License-Identifier: MIT
1
3
  import { LeaderboardInvalidScheduleError } from "../error/errors.js";
2
4
  import { Cron } from "croner";
3
5
  //#region src/window/schedule.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pithy-sh/leaderboard",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -26,7 +26,7 @@
26
26
  }
27
27
  },
28
28
  "scripts": {
29
- "build": "tsdown && tsc -p tsconfig.build.json",
29
+ "build": "tsdown && tsc -p tsconfig.build.json && bun ../../tooling/build/src/stampDeclarations.ts",
30
30
  "typecheck": "tsc -p tsconfig.json",
31
31
  "test": "vitest run",
32
32
  "test:node": "vitest run --project=node",
@@ -38,7 +38,7 @@
38
38
  "dependencies": {
39
39
  "@cloudflare/workers-types": "^5.20260729.1",
40
40
  "@hono/zod-validator": "^0.9.0",
41
- "@pithy-sh/core": "^0.1.3",
41
+ "@pithy-sh/core": "^0.2.0",
42
42
  "croner": "^10.0.1"
43
43
  },
44
44
  "devDependencies": {
@@ -13,4 +13,4 @@
13
13
  export const PACKAGE_NAME = "@pithy-sh/leaderboard";
14
14
 
15
15
  /** This package's version, stamped from its own package.json at generation time. */
16
- export const PACKAGE_VERSION = "0.1.3";
16
+ export const PACKAGE_VERSION = "0.1.5";