# EF (1962) Calendar Engine Implementation Plan > REQUIRED SUB-SKILL: superpowers:executing-plans. Spec: docs/superpowers/specs/2026-07-27-lectio-ef-calendar-engine-design.md. **Goal:** Compute the 1962 (EF) liturgical day offline, form-aware in the existing engine (`sel.Form == "old"`), validated against the missalemeum per-date API. **Global constraints:** `calendar` stays stdlib-pure; `Compute` total. Both OF and EF oracles must pass (OF: 0 season mismatches; EF: 0 season mismatches). Reuse Computus/merge/INI/result + custom layers. --- ### Task 1: Rank int enum → unified string token (OF refactor, oracle-gated) **Files:** `internal/calendar/types.go`, `precedence.go`, `calendar.go`, `temporal.go`, `internal/cli/liturgy.go`, tests. - [ ] `type Rank string`; consts `RankFerial="ferial"`, `RankOptional="optional"`, `RankMemorial="memorial"`, `RankFeast="feast"`, `RankSolemnity="solemnity"`. `ParseRank` validates → `Rank(s)` or `RankFerial`. - [ ] Add `func ofRankOrder(r Rank) int` (ferial0