Close out the standalone Notarius upgrade
This commit is contained in:
@@ -31,14 +31,14 @@ Seriatim is unchanged by this sequence.
|
|||||||
## Progress and Feature Links
|
## Progress and Feature Links
|
||||||
|
|
||||||
Release-summary and migration-guidance triage is complete. Standalone
|
Release-summary and migration-guidance triage is complete. Standalone
|
||||||
Scriptorium and Audita adoption are complete after independent review; Notarius
|
Scriptorium, Audita, and Notarius adoption are complete after independent review;
|
||||||
standalone implementation awaits independent review. Add the numbered feature
|
Narratio is next. Add the numbered feature
|
||||||
link beside each item when its roadmap is created; check it off after
|
link beside each item when its roadmap is created; check it off after
|
||||||
independent review and closeout.
|
independent review and closeout.
|
||||||
|
|
||||||
- [x] [Feature 0018: Scriptorium adoption](features/0018-scriptorium-v0-15-adoption.md) — complete through role `b174c8c`; independent review found no remediation issues.
|
- [x] [Feature 0018: Scriptorium adoption](features/0018-scriptorium-v0-15-adoption.md) — complete through role `b174c8c`; independent review found no remediation issues.
|
||||||
- [x] [Feature 0019: Audita adoption](features/0019-audita-v2-adoption.md) — complete through role `c3dd59f`; independent review found no remediation issues.
|
- [x] [Feature 0019: Audita adoption](features/0019-audita-v2-adoption.md) — complete through role `c3dd59f`; independent review found no remediation issues.
|
||||||
- [ ] [Feature 0020: Notarius adoption](features/0020-notarius-v0-8-adoption.md) — standalone role implemented through `6aef48b`; independent review pending, suite unchanged.
|
- [x] [Feature 0020: Notarius adoption](features/0020-notarius-v0-8-adoption.md) — complete through role `6aef48b`; independent review found no remediation issues; suite unchanged.
|
||||||
- [ ] Narratio adoption — feature roadmap not yet created.
|
- [ ] Narratio adoption — feature roadmap not yet created.
|
||||||
- [ ] Suite integration — feature roadmap not yet created.
|
- [ ] Suite integration — feature roadmap not yet created.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Feature 0020: Adopt Notarius v0.8.1 in the Standalone Role
|
# Feature 0020: Adopt Notarius v0.8.1 in the Standalone Role
|
||||||
|
|
||||||
Status: in_progress — implementation complete; independent review pending
|
Status: done
|
||||||
|
|
||||||
## Summary
|
## Summary
|
||||||
|
|
||||||
@@ -142,9 +142,8 @@ existing suite compatibility set.
|
|||||||
|
|
||||||
## Dependencies and Follow-up Work
|
## Dependencies and Follow-up Work
|
||||||
|
|
||||||
The roadmap is approved; execution is defined in the
|
Implementation and independent review are complete. Git history preserves the
|
||||||
[implementation plan](../implementation.md). Narratio v3 standalone adoption
|
completed staged plan. Narratio v3 standalone adoption is next. Final integration
|
||||||
follows independent review and closeout. Final integration
|
|
||||||
owns the coordinated overlay/credential/configuration migration and public suite
|
owns the coordinated overlay/credential/configuration migration and public suite
|
||||||
dependency updates. No open product decision is required for this narrow scope.
|
dependency updates. No open product decision is required for this narrow scope.
|
||||||
|
|
||||||
@@ -158,8 +157,14 @@ dependency updates. No open product decision is required for this narrow scope.
|
|||||||
rendered/effective retry checks, older-version and supplied-Go behavior,
|
rendered/effective retry checks, older-version and supplied-Go behavior,
|
||||||
import and pipeline composition, and clean immediate repeats. Role and
|
import and pipeline composition, and clean immediate repeats. Role and
|
||||||
workspace whitespace checks passed.
|
workspace whitespace checks passed.
|
||||||
- The role implementation awaits independent review. Narratio adoption and
|
- Independent review of all three role commits found no required remediation
|
||||||
coordinated suite migration remain separate follow-up work.
|
or unjustified strengthening of requirements. Syntax, production-profile
|
||||||
|
lint, shell syntax, whitespace checks, and installed v0.8.1 native
|
||||||
|
configuration validation passed again during review. The review used the
|
||||||
|
recorded successful integration run rather than rerunning its host-mutating
|
||||||
|
scenarios. No remediation document was changed.
|
||||||
|
- Reviewed standalone revision: `6aef48b`. Narratio adoption and coordinated
|
||||||
|
suite migration remain separate follow-up work; suite pins are unchanged.
|
||||||
|
|
||||||
## Upstream References
|
## Upstream References
|
||||||
|
|
||||||
|
|||||||
@@ -1,241 +1,12 @@
|
|||||||
# Implementation Plan 0020: Adopt Notarius v0.8.1
|
# Implementation Plan
|
||||||
|
|
||||||
Status: implemented — independent review pending
|
No implementation plan is currently active. Agree on the next feature roadmap
|
||||||
|
before preparing its staged plan.
|
||||||
|
|
||||||
Target executor: GPT-5.6-Terra
|
Feature 0020 is complete and independently reviewed with no remediation
|
||||||
|
findings. See [its roadmap](features/0020-notarius-v0-8-adoption.md) for
|
||||||
|
completion evidence. Git history preserves the completed plan.
|
||||||
|
|
||||||
Feature roadmap: [Feature 0020](features/0020-notarius-v0-8-adoption.md)
|
Narratio v3 standalone adoption is next in the agreed
|
||||||
|
[application upgrade sequence](application-upgrade-sequence.md). Suite and
|
||||||
## Objective
|
consumer pins remain unchanged until coordinated integration.
|
||||||
|
|
||||||
Update the standalone Notarius role to v0.8.1 and expose its optional transport
|
|
||||||
retry setting. The feature roadmap owns scope, rationale, and acceptance
|
|
||||||
criteria. Suite adoption remains deferred to coordinated integration.
|
|
||||||
|
|
||||||
## Execution Rules and Preconditions
|
|
||||||
|
|
||||||
- Execute stages in order. Reread each stage's required policies immediately
|
|
||||||
before beginning it, including applicable repository instructions.
|
|
||||||
- Confirm working-tree state before editing and preserve unrelated changes.
|
|
||||||
Commit each valid completed stage with a plain English message. Do not push.
|
|
||||||
- Only `ansible-role-notarius` and workspace planning/status documents may
|
|
||||||
change. Inspect `../notarius` read-only at tags v0.8.0 and v0.8.1.
|
|
||||||
- Keep pipeline, collection, consumer, assets, and other roles unchanged.
|
|
||||||
Retain the suite's Notarius v0.7.1 application and existing dependency pins;
|
|
||||||
do not import the new standalone role into the collection.
|
|
||||||
- No new production tasks, state probes, migration aliases, role-managed
|
|
||||||
overlay assets, or cache cleanup are needed. Preserve the existing build
|
|
||||||
and configuration convergence flow.
|
|
||||||
- Use workspace `.venv/bin` tools. A missing executable on PATH does not mean
|
|
||||||
Ansible is unavailable. The existing integration script selects these tools
|
|
||||||
and installs its declared collection dependency.
|
|
||||||
- Integration runs locally with sudo, not on a controller or pipeline host.
|
|
||||||
The existing harness modifies local source, binary, and configuration paths
|
|
||||||
and restores baseline configuration on exit. Confirm those test locations
|
|
||||||
are disposable before running. Source/dependency downloads are needed;
|
|
||||||
credentials, provider calls, and operational deployment are not.
|
|
||||||
- Report genuine environment limitations and checks completed. Do not invent
|
|
||||||
new acceptance gates or expand scope to overcome an unrelated limitation.
|
|
||||||
|
|
||||||
## Stage 1: Update the Application and Public Configuration Interface
|
|
||||||
|
|
||||||
Completion: complete (2026-09-28).
|
|
||||||
|
|
||||||
### Required Policy Review
|
|
||||||
|
|
||||||
Read workspace `AGENTS.md`, `docs/orientation.md`, `docs/conventions.md`,
|
|
||||||
`docs/ansible.md`, and `docs/planning.md`, plus applicable role instructions.
|
|
||||||
|
|
||||||
### Owning Repositories and Preconditions
|
|
||||||
|
|
||||||
`ansible-role-notarius` owns implementation; workspace owns progress.
|
|
||||||
Feature 0020 is approved. Inspect existing defaults, argument specifications,
|
|
||||||
template, and tasks, plus tagged upstream configuration and release notes.
|
|
||||||
|
|
||||||
### Required Changes
|
|
||||||
|
|
||||||
1. Mark F0020 `in_progress` in workspace status when implementation starts.
|
|
||||||
2. Set `notarius_version` to `v0.8.1` in role `defaults/main.yml`. Preserve
|
|
||||||
schema version 5, Go selection, paths, ownership, and existing interfaces.
|
|
||||||
3. Add `notarius_promptkit_transient_retries: null`. Declare it as an optional
|
|
||||||
integer in `meta/argument_specs.yml`.
|
|
||||||
4. In `templates/config.yml.j2`, emit `promptkit.transient_retries` when the
|
|
||||||
variable `is not none`, preserving integer zero. Add it to the enclosing
|
|
||||||
PromptKit section condition so retry-only configuration works. It is a
|
|
||||||
sibling of `profile_dir`, `profile_file`, and `local_backend`.
|
|
||||||
5. Document the variable, native field, null omission, and zero semantics in
|
|
||||||
the README public interface. Do not duplicate the upstream retry default
|
|
||||||
or add custom validation.
|
|
||||||
|
|
||||||
### Validation
|
|
||||||
|
|
||||||
From the workspace root:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
ANSIBLE_ROLES_PATH="$PWD" .venv/bin/ansible-playbook -i ansible-role-notarius/tests/inventory --syntax-check ansible-role-notarius/tests/converge.yml
|
|
||||||
ANSIBLE_ROLES_PATH="$PWD" .venv/bin/ansible-lint ansible-role-notarius/tests/converge.yml ansible-role-notarius/tests/prepare-import.yml
|
|
||||||
git -C ansible-role-notarius diff --check
|
|
||||||
git diff --check
|
|
||||||
```
|
|
||||||
|
|
||||||
Static checks must pass. Review the diff for consistent defaults, argument
|
|
||||||
specification, template, and documentation, with no production task or suite
|
|
||||||
pin changes. Behavioral rendering validation follows in Stage 2.
|
|
||||||
|
|
||||||
### Completion and Commit
|
|
||||||
|
|
||||||
The new standalone interface is consistent and static checks pass. Commit the
|
|
||||||
role as `Update Notarius and expose transport retries`; commit workspace
|
|
||||||
progress separately as `Record the Notarius upgrade in progress`.
|
|
||||||
|
|
||||||
## Stage 2: Test Optional Retry Rendering and Retain Existing Outcomes
|
|
||||||
|
|
||||||
Completion: complete (2026-09-28).
|
|
||||||
|
|
||||||
### Required Policy Review
|
|
||||||
|
|
||||||
Read workspace `AGENTS.md`, `docs/orientation.md`, `docs/conventions.md`,
|
|
||||||
`docs/ansible.md`, and `docs/testing.md`, plus applicable role instructions.
|
|
||||||
|
|
||||||
### Owning Repository and Preconditions
|
|
||||||
|
|
||||||
`ansible-role-notarius`. Stage 1 is committed and static checks pass. Read the
|
|
||||||
existing integration script and fixtures. Confirm the local test environment
|
|
||||||
is suitable as described above. Extend the harness rather than introducing a
|
|
||||||
parallel framework.
|
|
||||||
|
|
||||||
### Required Changes
|
|
||||||
|
|
||||||
1. In the baseline case, explicitly supply null for the retry variable and
|
|
||||||
inspect rendered YAML for absence of `promptkit.transient_retries`. Do not
|
|
||||||
use effective configuration to prove omission: it can include application
|
|
||||||
defaults. Retain native validation and the immediate clean repeat.
|
|
||||||
2. Add one retry-only case before the older-version selection: supply integer
|
|
||||||
zero while other PromptKit variables remain null. Check the rendered
|
|
||||||
nested value, run native `config validate`, and inspect `config effective`
|
|
||||||
for zero. Immediately repeat identical inputs and require an overall
|
|
||||||
zero-change recap. This protects falsey rendering and parent inclusion.
|
|
||||||
3. Supply retry zero in the existing representative configuration case and
|
|
||||||
verify it through native effective configuration. Preserve import/pipeline
|
|
||||||
composition, cache false/bypass behavior, and the clean repeat. Reuse
|
|
||||||
concise assertions; parsed YAML is suitable for nested omission/value
|
|
||||||
checks. Do not snapshot complete documents.
|
|
||||||
4. Retain explicit v0.7.0 selection and supplied-Go/missing-binary recovery.
|
|
||||||
Leave the new retry field unset in those older-release invocations; do not
|
|
||||||
leak inputs from preceding cases. Keep the default-version smoke check
|
|
||||||
informational rather than asserting today's default version indefinitely.
|
|
||||||
5. Do not add overlay migration tests, provider calls, retry-exhaustion
|
|
||||||
matrices, checkpoint invalidation tests, or checks of module-owned file
|
|
||||||
metadata. These are not behavior newly owned by the role.
|
|
||||||
|
|
||||||
### Validation
|
|
||||||
|
|
||||||
From the workspace root:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
bash -n ansible-role-notarius/tests/integration
|
|
||||||
ansible-role-notarius/tests/integration
|
|
||||||
git -C ansible-role-notarius diff --check
|
|
||||||
```
|
|
||||||
|
|
||||||
The harness includes syntax/lint. Require native offline acceptance of the
|
|
||||||
managed configurations, supplied retry outcomes, retained version/Go/import
|
|
||||||
behavior, and clean immediate repeats. Do not add a file-existence check after
|
|
||||||
a successful template operation.
|
|
||||||
|
|
||||||
### Completion and Commit
|
|
||||||
|
|
||||||
Existing meaningful cases and focused retry cases pass without live provider
|
|
||||||
calls. Save command/results for handoff. Commit the role as `Test optional
|
|
||||||
Notarius transport retries`.
|
|
||||||
|
|
||||||
## Stage 3: Document Compatibility and Prepare Independent Review
|
|
||||||
|
|
||||||
Completion: complete (2026-09-28).
|
|
||||||
|
|
||||||
### Required Policy Review
|
|
||||||
|
|
||||||
Read workspace `AGENTS.md`, `docs/orientation.md`, `docs/conventions.md`,
|
|
||||||
`docs/ansible.md`, `docs/testing.md`, and `docs/planning.md`, plus applicable
|
|
||||||
role instructions.
|
|
||||||
|
|
||||||
### Owning Repositories and Preconditions
|
|
||||||
|
|
||||||
`ansible-role-notarius` and workspace. Stages 1 and 2 are committed and their
|
|
||||||
checks pass. This is documentation/handoff, not suite integration or closeout.
|
|
||||||
|
|
||||||
### Required Changes
|
|
||||||
|
|
||||||
1. Update the role README's release and upgrade guidance. Explain
|
|
||||||
`--config-overlay` and `overlays/<name>.yml` replacing the retired ConfigKit
|
|
||||||
selector/directory. Distinguish these from unchanged PromptKit LLM-profile
|
|
||||||
sources, pipeline `llm_profile`, and `--llm-profile`.
|
|
||||||
2. Explain that callers own overlay files and invocation. Suite testing-file
|
|
||||||
and Narratio-selector migration await coordinated integration. Do not add
|
|
||||||
role variables or file-moving tasks for this.
|
|
||||||
3. Describe transport retries as additional eligible transient attempts per
|
|
||||||
generation, separate from pipeline/validator retries. Null inherits native
|
|
||||||
behavior; zero disables additional attempts. Link tagged upstream guidance
|
|
||||||
instead of prescribing new D&D retry budgets.
|
|
||||||
4. Note v0.8.1's profile-source checkpoint identity change: old matching
|
|
||||||
checkpoints are not reused; source-keyed chunk plans and published output
|
|
||||||
are unaffected. No deletion, forced stages, or automated migration.
|
|
||||||
5. Record role commits and validation evidence in the feature roadmap;
|
|
||||||
update this plan's progress notes, `docs/status.md`, and
|
|
||||||
`docs/roadmap/application-upgrade-sequence.md` concisely. Leave F0020
|
|
||||||
`in_progress`, awaiting independent review. Do not describe the revision as
|
|
||||||
reviewed or check off the sequence item yet.
|
|
||||||
|
|
||||||
### Validation
|
|
||||||
|
|
||||||
Review documentation against tagged upstream contracts and implemented
|
|
||||||
variables. From the workspace root:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
git -C ansible-role-notarius diff --check
|
|
||||||
git diff --check
|
|
||||||
scripts/status
|
|
||||||
```
|
|
||||||
|
|
||||||
Confirm only the role and workspace changed; suite/collection/consumer pins
|
|
||||||
remain untouched. Reuse Stage 2 evidence for documentation-only changes;
|
|
||||||
rerun affected checks if implementation changes.
|
|
||||||
|
|
||||||
### Completion and Commit
|
|
||||||
|
|
||||||
Documentation describes the standalone contract and deferred integration.
|
|
||||||
Commit the role as `Document the Notarius overlay upgrade`, then workspace
|
|
||||||
tracking as `Record Notarius upgrade validation`.
|
|
||||||
|
|
||||||
## Final Validation and Handoff
|
|
||||||
|
|
||||||
Report commit hashes, checks and outcomes, environment limitations or
|
|
||||||
deviations, and final working-tree state. Identify any added complexity and
|
|
||||||
its requirement. Leave the feature awaiting independent review; closeout will
|
|
||||||
record the reviewed revision. Narratio adoption is next, then suite integration.
|
|
||||||
Do not publish or deploy from this plan.
|
|
||||||
|
|
||||||
## Progress Notes
|
|
||||||
|
|
||||||
Plan approved.
|
|
||||||
|
|
||||||
- Stage 1: role commit `b1b922c`. Syntax check and production-profile lint
|
|
||||||
passed for the role's integration playbooks. Role and workspace
|
|
||||||
`git diff --check` passed. The role diff contains only defaults, argument
|
|
||||||
specifications, the configuration template, and README; no production task
|
|
||||||
or suite pin changed.
|
|
||||||
- Stage 2: `bash -n` and the local integration harness passed. Parsed rendered
|
|
||||||
YAML confirms null omission and retry-only zero; native validation and
|
|
||||||
effective configuration confirm zero in both retry-only and representative
|
|
||||||
cases. Existing v0.7.0 selection, supplied-Go recovery, imports, pipelines,
|
|
||||||
cache behavior, and clean immediate repeats passed. Role `git diff --check`
|
|
||||||
passed.
|
|
||||||
- Stage 3: role commits `b1b922c`, `380b6a3`, and `6aef48b` provide the
|
|
||||||
implementation and documentation. The README was checked against tagged
|
|
||||||
v0.8.0/v0.8.1 upstream guidance. Documentation-only changes reused Stage 2
|
|
||||||
integration evidence; role and workspace `git diff --check` and
|
|
||||||
`scripts/status` passed. F0020 remains open for independent review.
|
|
||||||
|
|
||||||
## Open Questions
|
|
||||||
|
|
||||||
None.
|
|
||||||
|
|||||||
@@ -4,9 +4,9 @@ Last updated: 2026-09-28
|
|||||||
|
|
||||||
Current milestone: Operational D&D pipeline deployment
|
Current milestone: Operational D&D pipeline deployment
|
||||||
|
|
||||||
Current focus: Independently review Feature 0020's completed standalone
|
Current focus: Plan standalone Narratio v3.0.0 adoption as the next unit of work.
|
||||||
Notarius v0.8.1 implementation. The suite remains unchanged.
|
The suite remains unchanged.
|
||||||
Features 0018 and 0019 are complete after independent review with no remediation
|
Features 0018 through 0020 are complete after independent review with no remediation
|
||||||
findings. Follow the agreed
|
findings. Follow the agreed
|
||||||
[application upgrade sequence](roadmap/application-upgrade-sequence.md):
|
[application upgrade sequence](roadmap/application-upgrade-sequence.md):
|
||||||
Scriptorium → Audita → Notarius → Narratio → suite integration. Retain the
|
Scriptorium → Audita → Notarius → Narratio → suite integration. Retain the
|
||||||
@@ -43,7 +43,7 @@ is complete.
|
|||||||
| F0017 | Compose the Notarius testing overlay | Narratio role, pipeline role, collection, consumer, and workspace | done | Published through Narratio `330afe7`, Notarius `a82a83d`, pipeline `c56a942`, collection `ce5b838`, and consumer `0ced48c`; independent review found no remediation issues; validation evidence is in the feature roadmap |
|
| F0017 | Compose the Notarius testing overlay | Narratio role, pipeline role, collection, consumer, and workspace | done | Published through Narratio `330afe7`, Notarius `a82a83d`, pipeline `c56a942`, collection `ce5b838`, and consumer `0ced48c`; independent review found no remediation issues; validation evidence is in the feature roadmap |
|
||||||
| F0018 | Adopt Scriptorium v0.15.0 | Scriptorium role and workspace | done | Role commits `61dcafe`, `2fce529`, and `b174c8c` passed independent review with no findings; feature roadmap records validation; suite pins unchanged |
|
| F0018 | Adopt Scriptorium v0.15.0 | Scriptorium role and workspace | done | Role commits `61dcafe`, `2fce529`, and `b174c8c` passed independent review with no findings; feature roadmap records validation; suite pins unchanged |
|
||||||
| F0019 | Adopt Audita v2.0.1 | Audita role and workspace | done | Role `c3dd59f`, following `6137ff2` and `52f67fe`, passed independent review with no findings; [roadmap](roadmap/features/0019-audita-v2-adoption.md) records validation; suite pins unchanged |
|
| F0019 | Adopt Audita v2.0.1 | Audita role and workspace | done | Role `c3dd59f`, following `6137ff2` and `52f67fe`, passed independent review with no findings; [roadmap](roadmap/features/0019-audita-v2-adoption.md) records validation; suite pins unchanged |
|
||||||
| F0020 | Adopt Notarius v0.8.1 | Notarius role and workspace | in_progress | Role `b1b922c`, `380b6a3`, and `6aef48b` implemented and validated; [feature roadmap](roadmap/features/0020-notarius-v0-8-adoption.md) records evidence; independent review pending, suite migration deferred |
|
| F0020 | Adopt Notarius v0.8.1 | Notarius role and workspace | done | Role `6aef48b`, following `b1b922c` and `380b6a3`, passed independent review with no findings; [feature roadmap](roadmap/features/0020-notarius-v0-8-adoption.md) records evidence; suite pins unchanged |
|
||||||
| A0001 | Audit completed standalone-role test suites | workspace and standalone roles | done | Findings recorded in `docs/roadmap/test-suite-audit-findings.md` |
|
| A0001 | Audit completed standalone-role test suites | workspace and standalone roles | done | Findings recorded in `docs/roadmap/test-suite-audit-findings.md` |
|
||||||
| R0001 | Simplify completed standalone-role test suites | workspace and standalone roles | done | Role commits `e08c63c`, `d2d0b9d`, and `cfecf37` passed implementation and independent review |
|
| R0001 | Simplify completed standalone-role test suites | workspace and standalone roles | done | Role commits `e08c63c`, `d2d0b9d`, and `cfecf37` passed implementation and independent review |
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user