Flip render.use_manifest default to true — v0.5.0 cut#45
Merged
Conversation
The v3 navigation manifest renderer has been opt-in since 0.4.6 (PR #36). All scaffolding, schema entries, hand-maintained docs registration, derived-file generators, and doc-coverage CLI shipped in 0.4.7 through 0.4.13 have been built ON TOP OF the manifest model. Time to make it the default. ### What flips - `DEFAULT_CONFIG["render"]["use_manifest"]` in config.py: `False` → `True`. New projects scaffolded via `dotagent init` get v3 by default. Existing projects whose `.agent/config.yaml` does NOT override the field also pick up v3 on next `dotagent sync`. - Comment on the field updated to reflect "v0.5.0+ default true; set false to opt out" instead of the prior "v0.4.x default false; flip for v0.5.0". - `_dispatch.py` docstring updated for the same reason. ### Opt-out unchanged `render.use_manifest: false` in `.agent/config.yaml` still selects the v1 compendium. Failure-mode fallback (malformed `render:` block) still degrades to v1 — v1 stays in the codebase as the safety net. ### Test changes - `test_claude_adapter_uses_v1_when_flag_off` → `test_claude_adapter_uses_v1_when_flag_explicitly_off`. Same logic, but now sets `use_manifest: False` explicitly since the default flipped. - Same for `test_cursor_copilot_opencode_use_v1_when_flag_off`. - New `test_default_config_emits_v3_manifest` asserts the new default behaviour. - `test_claude_adapter_renders_full_context_with_bug_registry` (in test_adapters.py) explicitly sets v1 opt-out — it's testing v1's inline-content behaviour, which the test name describes. ### Rollout Existing projects pick up v3 the next time someone runs `dotagent sync` and either (a) their config doesn't have a `render:` block at all, or (b) they explicitly remove the `use_manifest: false` line. Either gets them v3. To stay on v1: add `render: { use_manifest: false }` to `.agent/config.yaml`. That's the supported opt-out and will remain so for at least the v0.5.x line. Full suite: 733 passed, 2 skipped. Version: 0.4.13 → 0.5.0.
2 tasks
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
The v3 navigation manifest has been opt-in since 0.4.6. Every feature shipped since (manifest CLI, service-repo schema, derived-file generators, hand-maintained docs convention, doc-coverage CLI) was built on top of it. Time to make it the default.
DEFAULT_CONFIG["render"]["use_manifest"]:False→True.Behavior change
dotagent init)render:blockdotagent sync)use_manifest: trueuse_manifest: falseOpt-out
Still works. v1 renderer stays in the codebase as the safety net. Malformed
render:block still degrades to v1.Test plan
test_default_config_emits_v3_manifest(new) —merge_defaults({})produces v3 output.test_claude_adapter_uses_v1_when_flag_explicitly_off(renamed) — explicit opt-out still works.test_cursor_copilot_opencode_use_v1_when_flag_explicitly_off(renamed) — all four adapters honor opt-out.test_malformed_render_block_falls_back_to_v1— unchanged; safety net intact.test_claude_adapter_renders_full_context_with_bug_registry— updated to explicitly opt into v1 (it's testing v1's inline-content behavior).Rollout for Aigent's four repos
If any repo's
.agent/config.yamlhasrender: { use_manifest: false }lingering from earlier testing, remove it.Version
0.4.13 → 0.5.0. The v3 model is now the contract.Generated by Claude Code