Skip to content

Changelog

igcp-aforro ships under CalVer in the format YYYY.MMDD.PATCH. Monthly Euribor refreshes become YYYY.MMDD.0 releases; same-day patch releases bump the trailing component (.1, .2, …).

The canonical changelog is the GitHub Releases page, auto-generated by the release workflow on every workflow_dispatch. This page mirrors the high-level entries.

  • Behavioural change — per-unit quote capitalization. simulate() now mirrors the quote cadence displayed by aforro.net: each completed quarter updates a per-unit net quote rounded to 5 decimals, and the booked value is currentValueNet = round(units × currentUnitQuote, 2). Gross interest and IRS withholding are still booked in real EUR at the holding level each quarter, rounded to cents, so schedule rows reconcile exactly with totalInterestGross, totalIrsWithheld, and totalInterestNet. This closes the aforro.net parity gap for booked certificates; for example, the Série E / 2023-03-29 / 5000-unit cohort now reports 5417.00. Existing consumers may see multi-quarter headline values move by a few cents in either direction versus the previous full-precision EUR-balance model. SimulateResult.currentUnitQuote and ScheduleRow.unitQuoteAfter were added.
  • Série E support. The library now covers Certificados de Aforro Série E (Portaria n.º 329-A/2017, closed by Portaria n.º 149-A/2023) end-to-end, alongside Série F. Pass series: 'E' (or Series.E) to simulate(), getCurrentRate(), getRateForCohort(), and getRateTable(), or --series E to any aforro CLI command. Série E uses the E3 + 1% base-rate formula clamped to [0%, 3.5%], a 10-year maturity, premium tiers of +0.50% (years 2–5) and +1.00% (years 6–10), and a [100, 250000] unit range. The rates.json artifact now ships both series.E and series.F blocks; schemaVersion stays at 1 (adding a new series is non-breaking).
  • Initial public scaffold: TypeScript library + aforro CLI + static rates.json snapshot.
  • Série F supported end-to-end (base rate, premium tiers, quarterly compounding, IRS withholding).
  • Bundled Euribor 3M dataset sourced from Deutsche Bundesbank (BBIG1, redistributing EMMI EURIBOR® fixings).
  • Astro Starlight documentation site (this site).