-
Notifications
You must be signed in to change notification settings - Fork 38
Changelog #427
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
kentbull
wants to merge
2
commits into
WebOfTrust:main
Choose a base branch
from
kentbull:changelog
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changelog #427
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,114 @@ | ||
| # Changelog | ||
|
|
||
| ## 0.4.0 - 2026-03-23 | ||
|
|
||
| Changes in this draft cover the delta from `0.2.0-rc2` (`6ad36d5e171c599b078624c9ed4cd1c54e3c1b4a`) through `aba457cab3813078bfedb65a7d819f48d86974b8`. | ||
|
|
||
| ### Summary | ||
|
|
||
| - Hardened credential, IPEX, and exchange flows by fixing deletion/index cleanup, first-grant artifact delivery, admit/grant parsing, escrowed credential reads, and outbound EXN indexing. | ||
| - Improved runtime behavior with cleaner shutdown semantics, better logging, optional request tracing, and log-level propagation into the underlying KERI stack. | ||
| - Refactored startup and configuration handling to improve testability, temp-mode correctness, and agency/agent config injection. | ||
| - Expanded and tightened the OpenAPI contract with generated schemas, typed operation models, and more accurate endpoint response definitions. | ||
| - Improved response-shape compatibility for identifiers, key-state records, multisig EXN payloads, and mixed client request formats. | ||
| - Modernized packaging and delivery by moving to `uv`, refreshing CI and Docker workflows, and upgrading KERI/KERIA runtime dependencies. | ||
|
|
||
| ### Agent, credential, and exchange behavior | ||
|
|
||
| - Deleted credentials now also remove KERIA-specific search indexes, so filtered queries no longer return stale deleted records. | ||
| - IPEX grant delivery now includes the agent and controller KELs required to validate the first presented credential, fixing the long-standing first/double-present failure mode. | ||
| - Refactored IPEX grant processing around a dedicated `GrantDoer` that gathers dependent KEL, TEL, and chained-credential artifacts into one debuggable flow. | ||
| - IPEX admit/grant/apply/offer/agree handling now uses the agent parser consistently, preventing crashes such as the `NoneType ... ked` admit failure. | ||
| - Peer exchange parsing now indexes outbound EXN messages so sent exchanges are visible through local exchange indexes. | ||
| - `GET /credentials/{said}` now returns `404 Not Found` for escrowed or unsaved credentials instead of surfacing as `500`, including on the CESR path. | ||
| - Credential issuance now accepts either `ri` or legacy `ii` registry references and returns a clear `400` when neither is present. | ||
| - Identifier rename validation now rejects duplicate target names instead of allowing one AID rename to overwrite another. | ||
|
|
||
| ### Runtime, logging, and operability | ||
|
|
||
| - Reworked shutdown handling so agency shutdown follows the HIO doer lifecycle, using shutdown flags and `KeyboardInterrupt` instead of forcing `Doist.exit()`. | ||
| - Improved logs with a truncated formatter, clearer habitat context, and full identifier logging for multi-agent runs. | ||
| - Disabled HTTP request logging by default and added a `--logrequests` CLI switch for opt-in tracing. | ||
| - Propagated the configured KERIA log level into the underlying KERI logger so verbosity stays aligned across both layers. | ||
| - Added a maintainer-facing `scripts/keria.json` config and a `MAINTAINERS.md` file. | ||
|
|
||
| ### Configuration, startup, and testability | ||
|
|
||
| - Refactored server startup so agency creation and HTTP server wiring are split into smaller reusable functions. | ||
| - Made agency configuration more testable by allowing an external `Configer` to be injected and by merging per-agent config with configured controller, introduction, and data OOBI lists. | ||
| - Fixed temporary-mode handling so config files and LMDB state respect `temp` instead of partially writing persistent test data. | ||
|
|
||
| ### API descriptions and generated schemas | ||
|
|
||
| - Added reusable OpenAPI-generation utilities and shifted more schema definitions to generated type-hint-driven models. | ||
| - Expanded OpenAPI coverage for credentialing endpoints, including credential, registry, credential-state, anchoring-event, and cloned-credential response shapes. | ||
| - Expanded OpenAPI coverage for identifier and agent endpoints, including typed responses for agent state, identifier listings, identifier details, key state, key event logs, OOBIs, and agent config. | ||
| - Expanded OpenAPI coverage for delegation, grouping, IPEX, notification, and peer exchange endpoints, including typed multisig EXN payloads and long-running operation responses. | ||
| - Reworked long-running operation schemas so OpenAPI distinguishes operation families such as OOBI, query, witness, delegation, end-role, and registry instead of exposing one loose generic object. | ||
| - Added and refined operation IDs, response payload schemas, and component references across the REST surface to support client generation and stricter schema validation. | ||
|
|
||
| ### Type and response-shape compatibility | ||
|
|
||
| - Fixed `KeyStateRecord` typing and OpenAPI shape for `kt` and `nt`, allowing threshold fields to be represented as either strings or arrays. | ||
| - Split identifier response modeling into base and full `HabState` variants so list and detail endpoints can describe different field guarantees accurately. | ||
| - Relaxed `HabState` optionality for `state`, `transferable`, and `windexes` where those fields are not always present. | ||
| - Made `ExnMultisig` helper fields such as `groupName`, `memberName`, and `sender` optional in generated schemas instead of incorrectly requiring them. | ||
|
|
||
| ### Dependency, packaging, and CI updates | ||
|
|
||
| - Upgraded KERI from `1.2.6` to `1.2.7`, including the HIO-compatible doer signature updates required by the newer runtime. | ||
| - Upgraded again to KERI `1.2.12` and bumped KERIA to `0.4.0`. | ||
| - Removed the explicit setuptools dependency and then migrated packaging from `setup.py` and `requirements.txt` to `pyproject.toml`, `uv`, and a checked-in `uv.lock`. | ||
| - Added `ruff` linting and formatting checks to the repo and CI workflow. | ||
| - Updated the Makefile with `uv`-based install, test, coverage, lint, and format targets. | ||
| - Updated the Docker build to run from the `uv`-managed environment and added a Docker validation step to CI. | ||
| - Adjusted CI/runtime dependencies to pin `uv`, downgrade `lmdb` for Docker compatibility, and move GitHub Actions macOS testing to `macos-15`. | ||
|
|
||
| ## 0.3.0 - 2025-05-28 | ||
|
|
||
| - Improved runtime logging with clearer formatting plus habitat name and prefix context in log messages. | ||
| - Simplified graceful shutdown behavior and related runtime lifecycle handling. | ||
| - Upgraded KERI to `1.2.6` and finalized the `0.3.0` version bump. | ||
|
|
||
| ## 0.2.0-rc4 - 2025-05-28 | ||
|
|
||
| - Fixed first-time IPEX grant/present flows by sending the agent and controller KELs needed by recipients to validate the credential chain. | ||
| - Fixed credential deletion cleanup so KERIA-specific search indexes are removed with the credential record. | ||
| - Removed the explicit setuptools dependency. | ||
|
|
||
| ## 0.2.0-rc2 and Older Releases | ||
|
|
||
| ### 0.2.0-rc2 - 2025-01-24 | ||
|
|
||
| - Added an API for creating new location schemes. | ||
| - Fixed basic boot passwords to allow colon characters. | ||
| - Fixed delegated multisig rotation by always routing Signify group messages through the agent proxy. | ||
| - Upgraded KERI to `1.2.4`. | ||
|
|
||
| ### 0.2.0-rc1 - 2025-01-13 | ||
|
|
||
| - Added graceful shutdown handling for agents and the KERIA process, including `SIGTERM` support and the new serving/shutdown path. | ||
| - Returned `400` for invalid end-role signatures while preserving the multisig-required `UnverifiedReplyError` behavior. | ||
| - Refreshed release docs, Docker, CI, and `keria.json` documentation for the `0.2.0` release candidates. | ||
|
|
||
| ### 0.2.0 / 0.2.0-dev6 - 2024-12-12 | ||
|
|
||
| - Added experimental basic-auth protection for the boot endpoint. | ||
| - Added environment-variable-based server configuration. | ||
| - Exposed inception timestamps in identifier/hab info. | ||
| - Added credential deletion support and explicit `404` behavior after deletion. | ||
| - Added multi-arch Docker publishing support. | ||
|
|
||
| ### 0.2.0-dev5 through 0.2.0-dev0 - 2024 | ||
|
kentbull marked this conversation as resolved.
|
||
|
|
||
| - Expanded multisig and delegation support with delegation approval, delegated rotation fixes, multisig join/rotation fixes, submit/witness-receipt improvements, and better SignifyTS compatibility. | ||
| - Expanded IPEX and credential flows with apply/offer/agree endpoints, multisig IPEX support, direct credential verification from `(acdc, iss)`, registry read endpoints, and better recipient routing. | ||
| - Improved API usability with prefix-based identifier/addressing support, agent-config retrieval, `409` on already-booted agents, idle-agent release, and clearer long-running operation IDs and status handling. | ||
| - Added more REST and OpenAPI documentation, plus broader test coverage around delegation, multisig, witness receipts, revocation, and credential workflows. | ||
| - Kept pace with KERI/KERIpy, Falcon, Docker, and CI changes as the stack moved through the `1.2.x` transition. | ||
|
|
||
| ### 0.1.3 and Earlier - 2024 | ||
|
|
||
| - Established the early credential-registry lifecycle, including registry rename/join support, duplicate-name protection, and fixes for partially committed registry visibility. | ||
| - Added the first IPEX apply/offer/agree support and tightened early long-running-operation handling. | ||
| - Continued aligning with upstream KERI/KERIpy and Python runtime changes while filling in foundational tests and release automation. | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.