Start here
Bundle OKF 0.2 · 2 conceitos · agpalindrome/time-value
Open source Repository Open in the app JSON README (API)
About
The knowledge behind this library: the finance it implements, where each claim
came from, and the standing rules the code is built under. The code implements
this bundle — where the two disagree, one of them is wrong, and it is not
automatically the bundle.
Claims are marked by where they come from. A footnote means a source supports
it; otherwise it is labelled **Decided** (a choice that could have gone
otherwise) or **Derived** (a consequence of something already established).
# Start here
Read the principles once; they govern everything. Read the domain concepts for
the work in hand.
| if you are… | read |
| -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| changing any code at all | every [principle](principles/), then the domain concepts your change touches |
| implementing or altering a formula | that formula's concept, then ev
Details
- Kind
- OKF bundles
- Topic
- No topic detected
- Publisher
- agpalindrome
- Origin
- okf_github
- Category
- dados
- Version
- 0.2
- Last push
- 2026-08-20T03:09:14Z
- Repository state
- ativo
- Language
- Rust
- License
- Apache-2.0
- Added
- 2026-09-09 05:06:57
- Updated
- 2026-09-09 05:06:57
- Origin id
agpalindrome/time-value:knowledge/index.md
README
# time-value Type-safe time-value-of-money calculations in Rust. A Cargo workspace whose published crate is [`time_value`](crates/time_value). Two unpublished crates sit beside it: [`time-value-cli`](crates/time-value-cli), which installs the `time-value` command, and `crates/bundle-check`, which exists so the knowledge bundle's invariants are asserted rather than eyeballed. The library comes first and the surfaces follow it — a feature is modelled and built in `time_value`, then exposed in the CLI, then in the MCP server. A surface validates nothing of its own. Nothing here is published. The `0.1.0`–`0.8.0` series on crates.io is a separate, immutable history that this line does not continue. ## The Knowledge Bundle [`knowledge/`](knowledge/) is an [Open Knowledge Format][okf] bundle and this project's authoritative documentation: what each formula is, where its definition came from, which convention was followed where sources disagree, and what has deliberately been left open. There are no ADRs. Concepts come before code. A formula is modelled first, and the implementation follows the model — so the bundle is worth reading before the source, not after. Each claim says where it came from. A footnote means a source supports it; otherwise it is labelled **Decided** or **Derived**, so a reader can tell a choice from a consequence. Most of it is ours: the sources give formulas and little else. [okf]: https://github.com/GoogleCloudPlatform/knowledge-catalog/blob/main/okf/SPEC.md ## Development ```sh nix develop # toolchain, bacon, nextest, cargo-deny, prettier, hooks bacon # continuous clippy ``` Everything CI runs, runs the same way locally — CI runs this exact script: ```sh nix develop -c ./scripts/check.sh # everything nix develop -c ./scripts/check.sh clippy # one check, by name ``` It reports every check rather than stopping at the first failure, and refuses to run against a stable `rustfmt`, which would silently ignore most of `rustfmt.toml` and pass anyway. The knowledge bundle is checked by those tests too — its structure and links by [`okf-graph`](https://crates.io/crates/okf-graph), and its frontmatter by the stricter rules this repo holds itself to. ## Repo settings This repo's own GitHub rulesets are version-controlled in [`.github/rulesets/`](.github/rulesets/) and reconciled by `scripts/settings.sh --check` / `--apply`. ## License Licensed under either of [Apache-2.0](LICENSE-APACHE) or [MIT](LICENSE-MIT) at your option.