feat(e2e): behaviour-first BDD, near-full UI coverage + malformed-diff renderer fix (v0.1.4) - #17
Merged
Conversation
The layout-standardization commit moved the plugin from <root>/diff_visualizer to usr/plugins/diff_visualizer (per .devkit.yml plugin_dir) but left the conftest fixture on the old path. Red evidence: 5/7 tests failed with FileNotFoundError on diff_visualizer/plugin.yaml before this fix; 7/7 pass after.
… malformed diffs (v0.1.4) New BDD scenarios (20-diff-interactions.feature, BEH-tagged): maximize overlay, all three close paths (button/backdrop/Escape), copy-raw-source, multi-file fence, malformed-diff fallback, non-diff-fence negative. Closes spec gaps SR-4/SR-5/SR-6. Negative scenarios carry positive anchors so the seam-off red-proof stays red (Gate 3 caught the first fake-green formulation). Renderer fix the red test caught: diff2html emits an outer d2h-wrapper even for unparseable text, so the swap gate matched and replaced readable content with an EMPTY container. Gate now keys on d2h-file-wrapper (>=1 parsed file). Red: 'Malformed diff' scenario Expected 1 container, Received 2. Green after. Harness result: 11 passed (2.5m), 0 skipped, red-proof 0-pass seam-off, EXIT=0.
The unit workflow (merged from main) checks out with submodules: recursive using the default GITHUB_TOKEN, which cannot read the private agent-zero-plugin-development-testkit repo — observed 'Repository not found' 10s failure on chore/license-apache2. Use the shared sync App (same secrets as devkit-sync.yml) per the org-wide App-token preference.
… via App-token extraheader Previous attempt fed the App token to checkout itself — but the sync App is not installed on this repo, so checkout failed 'Repository not found' (run 30449937662). Mirror the reusable plugin-e2e workflow's proven pattern: default-token checkout (submodules: false), then 'git -c http.extraheader submodule update --init --recursive tests/_testkit' with the App token (also pulls the nested public .agent-zero the L1 surface-validation tests read).
Contributor
|
🚫 Merge blocked — |
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.
What
20-diff-interactions.featurewith BEH-tagged scenarios: maximize overlay (BEH-4), close via button/backdrop/Escape (BEH-5a-c), copy raw source (BEH-6), multi-file fence, malformed-diff fallback (BEH-3), non-diff-fence negative. Closes spec gaps SR-4/SR-5/SR-6.d2h-wrappereven for unparseable text, so the swap gate replaced readable content with an EMPTY container. Gate now keys ond2h-file-wrapper(≥1 parsed file). v0.1.2 → v0.1.4.Verification (local harness, replicating CI invocation)