CtrlK
CommunityDocumentationLog inGet started
Tessl Logo

tessl/pypi-lunar-python

tessl install tessl/pypi-lunar-python@1.4.0

Comprehensive Chinese lunar calendar library with Solar calendar conversion and traditional Chinese calendar features.

Agent Success

Agent success rate when using this tile

79%

Improvement

Agent success rate improvement when using this tile compared to baseline

0.9x

Baseline

Agent success rate without this tile

88%

rubric.jsonevals/scenario-3/

{
  "context": "Evaluates how well the solution uses the lunar_python package to navigate calendar periods and surface Buddhist/Taoist calendar data for the specified capability. Checks focus on calling the package’s period helpers and religious calendar classes rather than manual date arithmetic or hard-coded festival tables.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Week span via SolarWeek",
      "description": "Derives week boundaries and ordered day list by calling SolarWeek.fromYmd(..., week_start) and SolarWeek.getDays(), using toYmd/toString on returned Solar instances instead of manual weekday math.",
      "max_score": 20
    },
    {
      "name": "Month/year spans",
      "description": "Uses SolarMonth.fromYm(...).getDays() and SolarYear.fromYear(...).getMonths() (or equivalent getters) to compute month/year start-end values instead of custom calculations.",
      "max_score": 15
    },
    {
      "name": "Season navigation",
      "description": "Builds seasonal windows with SolarSeason.fromYm(...).getMonths() and applies SolarSeason.next(offset) for forward/backward moves, extracting start/end from the returned SolarMonth list.",
      "max_score": 15
    },
    {
      "name": "Half-year navigation",
      "description": "Computes half-year ranges with SolarHalfYear.fromYm(...).getMonths()/getSeasons() and shifts them via SolarHalfYear.next(offset) rather than slicing months manually.",
      "max_score": 10
    },
    {
      "name": "Offset stepping",
      "description": "Implements requested shifts using the package’s next(...) methods (SolarWeek.next, SolarMonth.next, SolarSeason.next, SolarHalfYear.next, SolarYear.next) instead of arithmetic on datetime objects.",
      "max_score": 10
    },
    {
      "name": "Buddhist view via Foto",
      "description": "Creates Buddhist snapshots with Lunar.fromYmd(...)->Foto.fromLunar(...) and captures descriptor plus festivals via Foto.toString/toFullString and Foto.getFestivals()/getOtherFestivals(), preserving provided names (e.g., 佛诞).",
      "max_score": 15
    },
    {
      "name": "Taoist view via Tao",
      "description": "Builds Taoist data with Lunar.fromYmd(...)->Tao.fromLunar(...) and extracts festivals through Tao.getFestivals(), including names like 玉皇-derived entries, without hand-coded lookups.",
      "max_score": 10
    },
    {
      "name": "Solar conversion output",
      "description": "Converts lunar inputs to ISO solar strings using Lunar.getSolar().toYmd()/toString for the snapshot payload rather than formatting manual offsets.",
      "max_score": 5
    }
  ]
}

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/lunar-python@1.4.x
tile.json