CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-temporal-polyfill

A lightweight polyfill for Temporal, successor to the JavaScript Date object

Overall
score

96%

Evaluation96%

1.19x

Agent success when using this tile

Overview
Eval results
Files

rubric.jsonevals/scenario-6/

{
  "context": "Evaluates how well the solution uses temporal-polyfill for time-zone aware scheduling. Checks disambiguation handling, offset enforcement, DST-safe iteration, transition lookups, and ISO-friendly outputs.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Disambiguation",
      "description": "Ambiguous or skipped local times are resolved with Temporal.ZonedDateTime.from (or Temporal.TimeZone.getPlainDateTimeFor) using the disambiguation option, and a 'reject' mode surfaces errors instead of manual offset guesses.",
      "max_score": 30
    },
    {
      "name": "Offset guard",
      "description": "Expected offsets are enforced via Temporal.ZonedDateTime.from with an offset property or by comparing zdt.offset/offsetNanoseconds to the provided hint and throwing on mismatch, rather than trusting hard-coded tables.",
      "max_score": 20
    },
    {
      "name": "Schedule iteration",
      "description": "Daily occurrences advance with Temporal.ZonedDateTime arithmetic (e.g., zdt.add({ days: 1 }) or Temporal.Duration.from) so offsets adjust automatically across DST instead of manual string/date math.",
      "max_score": 20
    },
    {
      "name": "Transition lookup",
      "description": "Next offset changes come from Temporal.ZonedDateTime.prototype.getTimeZoneTransition('next') or Temporal.TimeZone.from(tz).getNextTransition(instant), capturing before/after offsets and returning null when no transition is found instead of bespoke calculations.",
      "max_score": 20
    },
    {
      "name": "ISO outputs",
      "description": "Instants and local date-times are produced via Temporal Instant/ZonedDateTime toString or toInstant().toString() calls to ensure ISO formatting with correct offsets, avoiding custom string assembly.",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-temporal-polyfill

tile.json