← All notes

How we check numbers, and a calculation we corrected

A real one-year error in our kanreki calculation explains why definitions, boundary cases, and reverse checks matter more than a reassuring accuracy label.

By GreedMonster · Published · Checked

A calculator can add correctly and still give the wrong answer. The problem may be the meaning of a number, the day a rule takes effect, or the assumption behind a label. Those mistakes can survive an attractive table and several ordinary examples. One of our own corrections is a useful case: the year shown for a kanreki celebration was one year early under one counting method.

This note describes the correction in the repository and the checks around our tools. It does not promise that every result is error-free. For a form, deadline, eligibility decision, or unusual personal history, the receiving organization's instructions remain the place to resolve a question our general-purpose tool cannot settle.

Start with the meaning of the result

Kanreki marks a return to the same position in the traditional sixty-year cycle. The National Astronomical Observatory of Japan explains that cycle. Jinja Honcho's account of longevity celebrations describes kanreki at counted age 61 and notes variation in celebration customs. These references answer different questions: the cycle's structure and the convention used for the celebration.

The anniversary falls in the year someone turns 60 in completed-years counting. Under counted age, which starts at one and increases with the calendar year, that celebration year corresponds to 61. Comparing completed age 60 with counted age 60 is therefore not a comparison of the same kanreki milestone. A table can look consistent while making exactly that mistake.

What the old code got wrong

The September 12 correction shows the old data model and the change. Previously, the kanreki entry had one age value, 60. The completed-age calculation used the birth year plus that age. The counted-age calculation used the birth year plus the same age minus one. The arithmetic followed the model; the model failed to distinguish the two age labels.

Take a fictional person born in 1966. The intended celebration year is 2026. Substituting counted age 60 into the old expression produced 2025 instead. That example exposes the mismatch without relying on a large random test: the expected answer comes from what a sixty-year return means, not from copying the existing function's output into a test.

The fix added a separate counted-age value of 61 for kanreki. Both calculation paths then lead to 2026. The reverse table, which starts with a celebration year and finds a birth year, was corrected too. The screen also identifies the two age labels so that matching years do not look like a display error. This was a data-model correction and an explanation change, not just a replacement number in one cell.

Check both directions of the same claim

Our regression checks now include the 1966 example and the two matching kanreki years. They also check the reverse relationship: a birth year selected from a celebration-year table must lead back to the same celebration year through the personal calculation. That helps catch a repair made on one screen but missed on another.

Other milestones are checked separately. It would be another mistake to force every pair of celebration years to match merely because kanreki does. A regression test is most useful when it protects a named rule or relationship. “The function returns a number” is much weaker than “this label, counting method, and year agree in both directions.”

Boundaries reveal different mistakes

Era changes need full dates, not only years. The Cabinet Office's era material provides the official basis for the modern transitions. Our checks include the final date under one era, the first date under the next, and a request that combines an old era label with a date after its end. A year-offset formula alone would not detect that last invalid combination.

School years illustrate a different boundary. MEXT explains why April 1 and April 2 birthdays fall into different school cohorts. The repository tests those adjacent birthdays rather than assuming that two children born in the same calendar year enter together. This is about the general Japanese school-entry rule; an individual person's actual enrollment, transfer, or delayed entry still needs their own records.

Leap-day inputs receive dedicated checks as well. An age in completed years, an elapsed number of days, and a school's eligibility rule are different outputs. A chosen convention for displaying an age must not silently become a claim about every legal or administrative use of that date. The checks record the tool's behavior, while the page must state the relevant limits.

Match each source to the question it can answer

We use government material for the rules it administers, astronomical references for calendar cycles, and the relevant cultural organization for the customs it describes. For text tools, Unicode references establish character identities and representations. They do not establish whether a particular social network will accept a nickname. A correct source becomes misleading when it is stretched beyond its subject.

That distinction guides corrections across both services. We separate the external definition from our implementation, then compare the displayed example with the actual result. If a platform behavior has not been tested, it stays unverified. A link to a standard is not a substitute for testing an app, and testing one app is not a universal compatibility guarantee.

Dates on a page need a clear meaning

A checked date tells you when the stated material was reviewed; a publication date tells you when the article appeared. Neither proves that an outside rule has remained unchanged. Our sites do not subscribe to an automatic feed that guarantees every government or platform update is immediately reflected. A changed rule needs its source, effective date, affected examples, implementation, and page explanation checked together.

If you spot a discrepancy, send the tool URL, the counting convention you selected, a fictional example that reproduces it, and the relevant source if you have one. Do not send an identity document or full application. The Kurashi contact page explains what helps us investigate. The goal is a checkable correction, with its limits visible, rather than a stronger-sounding promise of accuracy.

If the confusion begins when moving a record between countries or forms, dates across systems offers a checklist for identifying the missing assumption before calculating.

Sources

Checked . Sources can change after this date.

Found something we should correct? Contact GreedMonster.

Keep reading

Try the ideas in our services: Kurashi Tools and Symbol Copy.