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.
Unreleased
Section titled “Unreleased”- Documentation home splash copy now mentions Série B alongside other series (
package.jsondescription aligned). - CI: Cloudflare Pages deploy path updates (Wrangler-integrated workflow, docs install flags).
2026.515.0
Section titled “2026.515.0”- Public HTTP API + MCP. Cloudflare Worker with
/v1/*routes (safe*semantics, open CORS, legal disclaimer header),igcp-aforro-mcpstdio package for Cursor/Claude — see HTTP API. - Calendar-year roll-up (IRS helper).
rollupTaxYears(),getTaxYearRollup(),rollupTaxYearsFromPortfolio(),getPortfolioTaxYearRollup(); CLIaforro tax-year; docs playground card with year selector. - Playground. Quarterly schedule CSV export and three inline SVG charts (rate, balance, cash flow); property-based core tests plus CI coverage gate; Node 22 requirement for Wrangler engine checks.
2026.513.0
Section titled “2026.513.0”aforro portfoliomulti-cohort simulation; shareable portfolio playground URLs (row=series,date,units).safe*non-throwing library wrappers returningSafeResult.--csvonratesandcohortCLI commands.- Docs playground i18n parity, accrued-net JSX/layout fixes, and shared module path cleanup.
2026.510.0
Section titled “2026.510.0”- Série B: TBA-aligned base rates, Euribor 12M data, perpetual simulation behaviour.
- Série C highlighted on Portuguese documentation home; matured-badge styling fix.
- Playground portfolio URL validation hardening (
Set-based allowed series).
2026.509.0
Section titled “2026.509.0”- Série C support (EUR historical backfill, goldens; research and parameters are documented under the Portuguese Série C — research page).
aforro current: tier gross rates and optional cohort scoping.
2026.507.1
Section titled “2026.507.1”simulatePortfolio()plus portfolio types, validation, and aggregate reconciliation tests/docs.- Stricter Euribor window for base-rate lookups and simulation edge cases.
2026.507.0
Section titled “2026.507.0”simulateRedemption()andaforro redeem(minimum holding period, maturity rules, accrued forfeiture);SeriesMetadata.minimumHoldingMonths.- Shareable URLs for the single-cohort docs playground scenarios.
- Data-refresh CI gated on IGCP publication timing.
2026.503.0
Section titled “2026.503.0”- Série D support end-to-end (
rates.jsonincludesseries.D). - Documentation: bilingual Starlight shell, IGCP compare and contributing guides, tighter test/coverage thresholds, CLI contract tests.
2026.429.0
Section titled “2026.429.0”- Playground series selector (E/F) and refreshed copy.
- Documentation hosting links and reusable docs deploy workflow (Cloudflare Pages).
2026.428.0
Section titled “2026.428.0”- Série E support (spread-before-clamp base rate, metadata, Euribor backfill, compare harness
--series). - Behaviour change — IGCP-aligned capitalization: intermediate compounding at full precision with per-unit net quote (5 decimals) driving booked position value (
currentUnitQuote,ScheduleRow.unitQuoteAfter); schedule cents still reconcile with aggregate totals. - Calculator/compare documentation and tolerance updates for quote parity vs aforro.net.
2026.420.0
Section titled “2026.420.0”- Initial public scaffold: TypeScript library +
aforroCLI + staticrates.jsonsnapshot. - 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).