RESERVE v1.1.2: Data Stewardship Matters

Most people know FRED as one of the best sources for economic and financial data.

What is less obvious is that FRED is often a distributor, not the original producer.

Behind many of the series available through FRED are government agencies, statistical organizations, central banks, research institutions, exchanges, and private data providers that invest significant effort into collecting, validating, and publishing data. FRED makes that information easier to discover and consume, but the rights and usage requirements attached to the underlying data do not disappear simply because the data is accessible through an API.

As RESERVE has matured, it became increasingly important to recognize that reality.

Version 1.1.2 introduces the first comprehensive permissions and compliance framework within RESERVE.

Respecting the Source

Good data stewardship starts with acknowledging where data comes from.

Many FRED series are effectively public-domain resources. Others request attribution. Some require citation. Others may require prior approval before redistribution or use in certain contexts.

Historically, these distinctions were easy for users to overlook because the focus naturally falls on retrieving observations and performing analysis.

RESERVE now treats rights metadata as a first-class concern.

The goal is simple: help users understand and respect the requirements associated with the data they consume.

Introducing Rights-Aware Access

Version 1.1.2 adds rights and permissions classification for FRED series metadata, including support for:

  • Copyrighted series requiring pre-approval
  • Copyrighted series requiring citation
  • Public-domain series where citation is requested
  • Ambiguous or unknown rights situations

Rather than assuming every series can be treated identically, RESERVE now evaluates available rights information and responds accordingly.

When a series requires prior authorization—or when rights information is insufficiently clear—RESERVE can block access and explain why.

That behavior is intentional.

When rights are uncertain, the safest assumption is not unrestricted use.

Citations Now Travel with the Data

One of the biggest changes in this release is citation-aware output.

Required or requested citation information now flows through RESERVE output formats:

  • Citation footers in table output
  • Citation fields in JSON output
  • Citation text columns in CSV exports

This means attribution information remains attached to the data as it moves between workflows, scripts, reports, and downstream systems.

Instead of treating citations as documentation that users must remember to revisit later, RESERVE keeps attribution closer to the data itself.

Supporting Authorized Access

Not every restricted series should be blocked forever.

Many users legitimately obtain permission to work with copyrighted or restricted datasets.

To support those workflows, RESERVE now includes a local authorization model:

reserve config grant <SERIES_ID>
reserve config revoke <SERIES_ID>
reserve config list-grants

These commands allow users to explicitly manage locally authorized series while preserving the broader protections introduced by the permissions framework.

The result is a system that balances compliance with practical usability.

Rights Metadata Is Part of the Cache

Permissions are only useful if they remain consistent and available.

Version 1.1.2 introduces local persistence for rights metadata, including support for rebuilding and refreshing the local rights index.

A new cache backfill reset workflow allows users to rebuild rights metadata cleanly when needed:

reserve cache reset-backfill

This ensures compliance information remains available even when working from cached datasets.

Improving Cache Reliability

Alongside permissions work, this release includes significant improvements to cache management and observation retrieval.

RESERVE now:

  • Selects the widest available observation set when multiple local variants exist
  • Warns when multiple cached versions of the same series are present
  • Provides richer cache inventory reporting
  • Supports targeted cache cleanup by series
  • Improves visibility into metadata coverage and local data quality

These changes help make local data management more predictable while reducing ambiguity about which observations are being used.

Building Trust Through Transparency

Software often focuses on making data easier to access.

This release focuses on making data easier to use responsibly.

The addition of rights-aware access controls, citation propagation, permissions management, and rights metadata persistence represents an important step in RESERVE’s evolution.

Not because it unlocks a new analytical capability.

Because it acknowledges an important reality: economic data has producers, owners, and usage expectations.

Good tooling should help users respect those relationships.

Version 1.1.2 is RESERVE’s first major investment in that principle.

And it will continue to shape how the platform evolves moving forward.

RESERVE v1.1.1: Improving the Everyday Experience

The most valuable releases aren’t always the ones with the biggest feature lists.

Sometimes the best improvements are the ones that remove friction, make behavior more predictable, and help users understand what’s happening under the hood.

That’s the focus of RESERVE v1.1.1.

This release sharpens onboarding, improves cache management, and reduces the footprint of distributed binaries—small changes individually that add up to a smoother day-to-day experience.

Better Guidance for AI-Powered Workflows

As RESERVE continues to evolve alongside modern AI and LLM tooling, helping users get started quickly becomes increasingly important.

Version 1.1.1 expands onboarding guidance with richer AI and LLM-focused instructions, making it easier to understand how RESERVE fits into data exploration and analysis workflows from the very beginning.

Good tooling isn’t just about functionality—it’s about helping users discover the functionality that’s already there.

More Visibility into Local Data

Caching is one of those features users rarely think about until they need to.

To improve transparency, RESERVE now includes a cache inventory command that provides visibility into locally stored observation data and related artifacts.

Instead of wondering what’s being stored, users can now inspect cache contents directly and make informed decisions about cleanup and maintenance.

Safer Cache Cleanup

Managing cached data becomes more important as projects grow and observation sets accumulate.

Version 1.1.1 introduces a new:

reserve cache clear --series <ID>

workflow that allows targeted cleanup of cached data for specific series.

This release also improves handling of situations where multiple cached observation sets exist, helping prevent accidental cleanup mistakes and making cache operations more predictable.

The goal is simple: give users more control while reducing opportunities for confusion.

Clearer Inventory Reporting

Data quality and completeness matter.

When working with daily series, inventory reports will now display n/a for GAPS values when gap calculations aren’t applicable.

It’s a small change, but one that makes inventory output easier to interpret and avoids implying that missing values represent actual calculated gaps.

Smaller Downloads, Faster Installs

Not every improvement is visible from inside the CLI.

Release binaries are now stripped during the build process, reducing download sizes and improving distribution efficiency across supported platforms.

Smaller binaries mean faster downloads, lighter releases, and a more streamlined installation experience.

A Release Focused on Polish

Version 1.1.1 continues a theme established in earlier releases: investing in the quality of the overall experience.

  • Better onboarding.
  • More transparent cache management.
  • Safer cleanup workflows.
  • Clearer reporting.
  • Smaller binaries.

None of these changes redefine what RESERVE can do.

Together, they make it easier to use every day—and that’s often where the most meaningful improvements happen.

Building the Foundation: The First Releases of RESERVE CLI

When people look at software releases, it’s easy to focus on the headline features. New commands, new integrations, new capabilities.

But the earliest releases of RESERVE CLI were focused on something more fundamental: creating a tool that users can install, trust, and grow with.

From Preview to Production

The public preview release (v1.0.6) was about validating the core idea behind RESERVE. We wanted to get the CLI into people’s hands, gather feedback, and prove that the workflow was useful.

The next milestone, v1.0.9, marked the first stable public release. While it didn’t introduce flashy new functionality, it delivered something arguably more important:

  • Cross-platform distribution builds
  • Installation support
  • Improved onboarding
  • Better overall CLI usability

These improvements transformed RESERVE from a development project into software that could be reliably installed and used across environments.

The Work Nobody Notices

The v1.1.0 release continues a pattern that many infrastructure-focused projects experience early in their lifecycle: investing heavily in the parts users rarely notice when everything is working correctly.

This release introduces:

Update Awareness

A new reserve update check command provides lightweight version checking so users can quickly determine whether they’re running the latest release.

Keeping software current should be simple, and this lays the groundwork for a better upgrade experience as the project grows.

Better Configuration Management

One of the most important improvements in v1.1.0 is a more mature approach to configuration.

RESERVE now supports per-user configuration locations across macOS, Linux, and Windows while also allowing local ./config.json files to override user settings when needed.

This creates a cleaner separation between personal configuration and project-specific development workflows.

Modern Tooling

Under the hood, RESERVE now targets Go 1.26.1 and includes updated dependencies across the project.

Most users will never directly notice these upgrades, and that’s exactly the point.

Modern tooling improves reliability, maintainability, performance, and long-term sustainability without requiring users to change how they work.

Building Before Scaling

There’s a temptation in every software project to chase features.

The first releases of RESERVE have intentionally focused on something different: establishing the foundation needed to support future growth.

  • Reliable installation.
  • Predictable configuration.
  • Version awareness.
  • Modern tooling.
  • Clear documentation.

These are the investments that make future features possible.

As RESERVE continues to mature, future releases will increasingly focus on expanding capabilities. But these early versions represent an important phase in the project’s evolution: turning an idea into a dependable tool.

And that’s exactly what these first releases were designed to accomplish.