diff --git a/.github/workflows/agent-performance-analyzer.lock.yml b/.github/workflows/agent-performance-analyzer.lock.yml index e72fd036f0..2bf3afc03f 100644 --- a/.github/workflows/agent-performance-analyzer.lock.yml +++ b/.github/workflows/agent-performance-analyzer.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: f7ba17ae6c234dae7ffe7727c4e022446952056ce100a70cdf4c88b4512bb629 +# frontmatter-hash: 06a6916b31d2dd5c1670559f8ce00fb050ea5f61c940b124fc6f565fd8ca2045 name: "Agent Performance Analyzer - Meta-Orchestrator" "on": diff --git a/.github/workflows/agent-persona-explorer.lock.yml b/.github/workflows/agent-persona-explorer.lock.yml index 8b0b61be40..d306125beb 100644 --- a/.github/workflows/agent-persona-explorer.lock.yml +++ b/.github/workflows/agent-persona-explorer.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 860921708921bd0cc3ef679ad46b45eb2782faee88bf177f6f44b072fccc1209 +# frontmatter-hash: b6fa2f44bccb5561260bd9cc0eac609a02b0b011426985128cf5aa32ad2318d4 name: "Agent Persona Explorer" "on": diff --git a/.github/workflows/ai-moderator.lock.yml b/.github/workflows/ai-moderator.lock.yml index 6ce776d486..6e0e20bfe2 100644 --- a/.github/workflows/ai-moderator.lock.yml +++ b/.github/workflows/ai-moderator.lock.yml @@ -20,7 +20,7 @@ # For more information: https://github.com/githubnext/gh-aw/blob/main/.github/aw/github-agentic-workflows.md # # -# frontmatter-hash: d3c9bf14c6b003a50c63bb8fa02fb2924d263243e32367667d0c039a63d2b3b6 +# frontmatter-hash: 7c8513d44d368ad1240b75cea8267a7b9b86a68704ae358f048526ddc318d05b name: "AI Moderator" "on": diff --git a/.github/workflows/archie.lock.yml b/.github/workflows/archie.lock.yml index d52347f22d..6f0b780dec 100644 --- a/.github/workflows/archie.lock.yml +++ b/.github/workflows/archie.lock.yml @@ -21,7 +21,7 @@ # # Generates Mermaid diagrams to visualize issue and pull request relationships when invoked with the /archie command # -# frontmatter-hash: b3d3db6342483b49d6e37988f970d5318f9a93c94cbf01c335907bc9cf182bec +# frontmatter-hash: 0b3e5dc1cffd4dbac5ad4d4c02d8d60eeb55dac35e3b03fc2c161872eb291b4f name: "Archie" "on": diff --git a/.github/workflows/artifacts-summary.lock.yml b/.github/workflows/artifacts-summary.lock.yml index 5646f495db..2bd8992068 100644 --- a/.github/workflows/artifacts-summary.lock.yml +++ b/.github/workflows/artifacts-summary.lock.yml @@ -26,7 +26,7 @@ # - shared/reporting.md # - shared/safe-output-app.md # -# frontmatter-hash: b9b25a4efbc06dfff71cdb639093874a1bc33e9c918bbc9b7e9e3158ce5b8224 +# frontmatter-hash: 3017acdf01d9cb76256bc9c5cafbf8607c9a120d4323cdc0b87c579b3e8b7aef name: "Artifacts Summary" "on": diff --git a/.github/workflows/audit-workflows.lock.yml b/.github/workflows/audit-workflows.lock.yml index adb2feded1..d32e78b535 100644 --- a/.github/workflows/audit-workflows.lock.yml +++ b/.github/workflows/audit-workflows.lock.yml @@ -28,7 +28,7 @@ # - shared/reporting.md # - shared/trending-charts-simple.md # -# frontmatter-hash: 39c18e261c514fd524df7f8ebddd5fa0762bd630c6f27ae951456fe6882ed2d4 +# frontmatter-hash: 79eaa31256adfec92e5d4ba0a4d19d72f786c76763c2bc718912e107d54b56d5 name: "Agentic Workflow Audit Agent" "on": diff --git a/.github/workflows/auto-triage-issues.lock.yml b/.github/workflows/auto-triage-issues.lock.yml index 2dc74efdef..c404d264c0 100644 --- a/.github/workflows/auto-triage-issues.lock.yml +++ b/.github/workflows/auto-triage-issues.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 5318ecde09c3652ad8b8e8c47eca1566e14225f6005d25a873c8eab0a5b96258 +# frontmatter-hash: 6ac8803e809e91dc0ad3f9989219b0c2d6f3ab03fb6f5fd6dfbe9b66311958d1 name: "Auto-Triage Issues" "on": diff --git a/.github/workflows/blog-auditor.lock.yml b/.github/workflows/blog-auditor.lock.yml index f402590d5a..8e0c3039a3 100644 --- a/.github/workflows/blog-auditor.lock.yml +++ b/.github/workflows/blog-auditor.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 6d505aa33bf9f5b2e5a96310ca8db32c88284ecb9cd32ad0d9de1a47b7f7d773 +# frontmatter-hash: 67cd434395d3738bd286f64c7660f2690b0026fdcdcc9d23a790446e21c0b728 name: "Blog Auditor" "on": diff --git a/.github/workflows/brave.lock.yml b/.github/workflows/brave.lock.yml index 746f9d27b9..a5f03e45d2 100644 --- a/.github/workflows/brave.lock.yml +++ b/.github/workflows/brave.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mcp/brave.md # -# frontmatter-hash: e0c95efdecdcb019d0351b4b111a67c68e67d1a34cca2fe0e696b24434158114 +# frontmatter-hash: 90e39363de1e667a07fc2b125c7c1c1958293be251eb40364fefda463994d3ab name: "Brave Web Search Agent" "on": diff --git a/.github/workflows/breaking-change-checker.lock.yml b/.github/workflows/breaking-change-checker.lock.yml index 8af08ae484..fee31d2200 100644 --- a/.github/workflows/breaking-change-checker.lock.yml +++ b/.github/workflows/breaking-change-checker.lock.yml @@ -21,7 +21,7 @@ # # Daily analysis of recent commits and merged PRs for breaking CLI changes # -# frontmatter-hash: f55c34ad2905204258a41f1406b66d9067e1e02342ba09f3367f31c40f89a34f +# frontmatter-hash: de25808bbf583e9878f742d1074bc95ac1372fe2a900f8d5a78ba5a9993d866a name: "Breaking Change Checker" "on": diff --git a/.github/workflows/changeset.lock.yml b/.github/workflows/changeset.lock.yml index cd66981d7f..7bcfe0722a 100644 --- a/.github/workflows/changeset.lock.yml +++ b/.github/workflows/changeset.lock.yml @@ -27,7 +27,7 @@ # - shared/jqschema.md # - shared/safe-output-app.md # -# frontmatter-hash: 14da160c1637da456b6cf15f788b34cf3e2b824e648dee0f8ff28aa073e88638 +# frontmatter-hash: a0eb89ba99eb2435579438e225b5c2a181fdf37966f6db1e69977332f79c541d name: "Changeset Generator" "on": diff --git a/.github/workflows/chroma-issue-indexer.lock.yml b/.github/workflows/chroma-issue-indexer.lock.yml index 53d537d388..e39127de00 100644 --- a/.github/workflows/chroma-issue-indexer.lock.yml +++ b/.github/workflows/chroma-issue-indexer.lock.yml @@ -24,7 +24,7 @@ # Imports: # - shared/mcp/chroma.md # -# frontmatter-hash: 191ab7f86d58c5826ff49f73480813c09797c938f8c4dc85c279b59e2d5d85d8 +# frontmatter-hash: d458eda01712d746c0dcb2836c461f8aec80c66c5e8bffd838b7db0d96010d66 name: "Chroma Issue Indexer" "on": diff --git a/.github/workflows/ci-coach.lock.yml b/.github/workflows/ci-coach.lock.yml index 63aaaa10a4..9e430f10f3 100644 --- a/.github/workflows/ci-coach.lock.yml +++ b/.github/workflows/ci-coach.lock.yml @@ -28,7 +28,7 @@ # - shared/ci-data-analysis.md # - shared/reporting.md # -# frontmatter-hash: c9028ef7b5fe6a4d62e5bf0fa8170ecd3e23d50127122e2c068ee77300958592 +# frontmatter-hash: 853ead63ee6ff9ebe2727a27a57b7f0025ae0c422f534a1b1c49511061ad7133 name: "CI Optimization Coach" "on": diff --git a/.github/workflows/ci-doctor.lock.yml b/.github/workflows/ci-doctor.lock.yml index 736dfabfd3..abeca4b149 100644 --- a/.github/workflows/ci-doctor.lock.yml +++ b/.github/workflows/ci-doctor.lock.yml @@ -23,7 +23,7 @@ # # Source: githubnext/agentics/workflows/ci-doctor.md@ea350161ad5dcc9624cf510f134c6a9e39a6f94d # -# frontmatter-hash: fd78e8183e3a4c0c3bd23b924c1c3164dae64a7589e74ef9a3102788475ad145 +# frontmatter-hash: 489e3a658dc2ebe2b24f6511c71591773ff3a4981a826963a56f5e08a20b062f # # Effective stop-time: 2026-03-03 16:27:58 diff --git a/.github/workflows/claude-code-user-docs-review.lock.yml b/.github/workflows/claude-code-user-docs-review.lock.yml index ceae95ab33..d154d4e54e 100644 --- a/.github/workflows/claude-code-user-docs-review.lock.yml +++ b/.github/workflows/claude-code-user-docs-review.lock.yml @@ -21,7 +21,7 @@ # # Reviews project documentation from the perspective of a Claude Code user who does not use GitHub Copilot or Copilot CLI # -# frontmatter-hash: 1744c4488cfb8ddc4274e32a3a436f73d9e22af340b861af2f26062c1de6d6f1 +# frontmatter-hash: d73892150543966ec1cf551748eebaa22dbe15001826f15ebacfeab52c2673d9 name: "Claude Code User Documentation Review" "on": diff --git a/.github/workflows/cli-consistency-checker.lock.yml b/.github/workflows/cli-consistency-checker.lock.yml index e491fed64d..faa456877b 100644 --- a/.github/workflows/cli-consistency-checker.lock.yml +++ b/.github/workflows/cli-consistency-checker.lock.yml @@ -21,7 +21,7 @@ # # Inspects the gh-aw CLI to identify inconsistencies, typos, bugs, or documentation gaps by running commands and analyzing output # -# frontmatter-hash: d13dbdc2a7d699f7c0926196340c1111e4f173de0d5661b2878a388bc1bd5fef +# frontmatter-hash: ab88845fa2bc60c33cca92fa42375739181cf733c22d39005b54ca584b649371 name: "CLI Consistency Checker" "on": diff --git a/.github/workflows/cli-version-checker.lock.yml b/.github/workflows/cli-version-checker.lock.yml index 6c8066c7f0..8a810d17b9 100644 --- a/.github/workflows/cli-version-checker.lock.yml +++ b/.github/workflows/cli-version-checker.lock.yml @@ -26,7 +26,7 @@ # - shared/jqschema.md # - shared/reporting.md # -# frontmatter-hash: c10bdb1d1632b03e5ad28c2aec32d85ded7eb1d5db7bda95b899c207b80b8fe3 +# frontmatter-hash: 30a667d8d3bdc6e003b2589f57bf9986968753dcbb6b979dbd1a72ce38e71967 name: "CLI Version Checker" "on": diff --git a/.github/workflows/cloclo.lock.yml b/.github/workflows/cloclo.lock.yml index 7181d6c016..0575d214ed 100644 --- a/.github/workflows/cloclo.lock.yml +++ b/.github/workflows/cloclo.lock.yml @@ -25,7 +25,7 @@ # - shared/jqschema.md # - shared/mcp/gh-aw.md # -# frontmatter-hash: d4567c57cf1452a2214a4496e2c7cc7a6e21bdf64f587ca96c51b5c1ea2b153f +# frontmatter-hash: 3e62bab2fa717758db538a0938f7835e1779d26f205b72a14ae154fe64290449 name: "/cloclo" "on": diff --git a/.github/workflows/code-scanning-fixer.lock.yml b/.github/workflows/code-scanning-fixer.lock.yml index e2da1619b8..27d94d4f78 100644 --- a/.github/workflows/code-scanning-fixer.lock.yml +++ b/.github/workflows/code-scanning-fixer.lock.yml @@ -21,7 +21,7 @@ # # Automatically fixes code scanning alerts by creating pull requests with remediation # -# frontmatter-hash: 275f765d853af9b4b17cdec21064a408f46f749b955603a91dda5f8459b08a70 +# frontmatter-hash: 8e2b139e13fdfcb7585acd59510b1c96df7bb1f8b8b3e5d07e79d51b63a04b41 name: "Code Scanning Fixer" "on": diff --git a/.github/workflows/code-simplifier.lock.yml b/.github/workflows/code-simplifier.lock.yml index d0bd569123..737aeccf45 100644 --- a/.github/workflows/code-simplifier.lock.yml +++ b/.github/workflows/code-simplifier.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 75a52a4cef21f4ad213917d799f010a2857f5b0cf3bfa7c9d3e367d48140daf9 +# frontmatter-hash: c14a6be26df31e8641c7f2235bfbc5170d3fd74bf5af8b853df8cff60f22d975 name: "Code Simplifier" "on": diff --git a/.github/workflows/codex-github-remote-mcp-test.lock.yml b/.github/workflows/codex-github-remote-mcp-test.lock.yml index 4968ebe53f..82376456c4 100644 --- a/.github/workflows/codex-github-remote-mcp-test.lock.yml +++ b/.github/workflows/codex-github-remote-mcp-test.lock.yml @@ -21,7 +21,7 @@ # # Test Codex engine with GitHub remote MCP server # -# frontmatter-hash: ff9e5c7f1795d9337420655fc43f1cb0f4f4c3da62c80932d95e90ea38a1fc60 +# frontmatter-hash: 2619161c5507d5f62446cb647eb77e65faeca67193a3b2d1af8e939c07ab0f30 name: "Codex GitHub Remote MCP Test" "on": diff --git a/.github/workflows/commit-changes-analyzer.lock.yml b/.github/workflows/commit-changes-analyzer.lock.yml index 0abab80c4c..4794fcfd34 100644 --- a/.github/workflows/commit-changes-analyzer.lock.yml +++ b/.github/workflows/commit-changes-analyzer.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: ed762fdde229088df2e3e89baad80e8f041476dcf984f13d00f2fcc15391de3b +# frontmatter-hash: 6f3bd878d1bde03ffa7ee4bc3270afa60b30654f6a31e610192a17e3c84e37da name: "Commit Changes Analyzer" "on": diff --git a/.github/workflows/copilot-agent-analysis.lock.yml b/.github/workflows/copilot-agent-analysis.lock.yml index e77427bf9f..5d8ddf0068 100644 --- a/.github/workflows/copilot-agent-analysis.lock.yml +++ b/.github/workflows/copilot-agent-analysis.lock.yml @@ -27,7 +27,7 @@ # - shared/jqschema.md # - shared/reporting.md # -# frontmatter-hash: 6e1625a048ec1b3bd3968985ed51edb52a5ae880c632902043be60d81ccae560 +# frontmatter-hash: aea64ebf948c98867c63a46ecbe7f70d4b6a8de8fe633c0c70a85b62dcd05cda name: "Copilot Agent PR Analysis" "on": diff --git a/.github/workflows/copilot-cli-deep-research.lock.yml b/.github/workflows/copilot-cli-deep-research.lock.yml index d0c68f27f4..fed56c1398 100644 --- a/.github/workflows/copilot-cli-deep-research.lock.yml +++ b/.github/workflows/copilot-cli-deep-research.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 13d12b6a0276a4e0bdc483cfc5ec52469b013c21978f6aa726931ed4148008b6 +# frontmatter-hash: a558bf5e019cc45a54cf483a1911d2806b885e69077cace20f6855c19255089a name: "Copilot CLI Deep Research Agent" "on": diff --git a/.github/workflows/copilot-pr-merged-report.lock.yml b/.github/workflows/copilot-pr-merged-report.lock.yml index bef972a781..e56fb41e8d 100644 --- a/.github/workflows/copilot-pr-merged-report.lock.yml +++ b/.github/workflows/copilot-pr-merged-report.lock.yml @@ -26,7 +26,7 @@ # - shared/gh.md # - shared/reporting.md # -# frontmatter-hash: 05e48bc91a9a371cb9744454aff75f84194cdd5424b07dc441c7bd2aa45ab476 +# frontmatter-hash: ca6df2f120a66f19deb3b67df84fe45ec253f6e1aacca6f5f13152c18686f438 name: "Daily Copilot PR Merged Report" "on": diff --git a/.github/workflows/copilot-pr-nlp-analysis.lock.yml b/.github/workflows/copilot-pr-nlp-analysis.lock.yml index 8eaad0934a..244664408b 100644 --- a/.github/workflows/copilot-pr-nlp-analysis.lock.yml +++ b/.github/workflows/copilot-pr-nlp-analysis.lock.yml @@ -28,7 +28,7 @@ # - shared/python-dataviz.md # - shared/reporting.md # -# frontmatter-hash: 1bb48b8ff11bb6224b27c02ce8429442ce24d57acac3e00a7e5d3a105537f0f6 +# frontmatter-hash: ca5b038691a3d93f1fad9db5f457e87e4c22dd4bc7399e4843a7904e009f5e92 name: "Copilot PR Conversation NLP Analysis" "on": diff --git a/.github/workflows/copilot-pr-prompt-analysis.lock.yml b/.github/workflows/copilot-pr-prompt-analysis.lock.yml index a3da0fc541..1a6dc947e2 100644 --- a/.github/workflows/copilot-pr-prompt-analysis.lock.yml +++ b/.github/workflows/copilot-pr-prompt-analysis.lock.yml @@ -27,7 +27,7 @@ # - shared/jqschema.md # - shared/reporting.md # -# frontmatter-hash: 2cfe5dc1dddb6dd7932190de431b1616496f47362a2c6b9d519fb19e73822485 +# frontmatter-hash: 2bab0bcf85c0bfb240781c5c3cc2495f532cc7d1d7aa9394c3bf1ac672c8fbc9 name: "Copilot PR Prompt Pattern Analysis" "on": diff --git a/.github/workflows/copilot-session-insights.lock.yml b/.github/workflows/copilot-session-insights.lock.yml index fadf398732..92072e63fb 100644 --- a/.github/workflows/copilot-session-insights.lock.yml +++ b/.github/workflows/copilot-session-insights.lock.yml @@ -30,7 +30,7 @@ # - shared/session-analysis-charts.md # - shared/session-analysis-strategies.md # -# frontmatter-hash: ecd520b5565ab95c14fa7eaf7274120b3f335f57601f831958ea8d460c5e9eb8 +# frontmatter-hash: c6b97526e3d288a9982cbef50e5e1d1550e7363910bec5ea88290a2719c7bc1f name: "Copilot Session Insights" "on": diff --git a/.github/workflows/craft.lock.yml b/.github/workflows/craft.lock.yml index 581db00633..6ee85e4a69 100644 --- a/.github/workflows/craft.lock.yml +++ b/.github/workflows/craft.lock.yml @@ -21,7 +21,7 @@ # # Generates new agentic workflow markdown files based on user requests when invoked with /craft command # -# frontmatter-hash: 4363d5077179817247cf9ef123de1f11b010bb85b03874e3d01f5ad72f6ba8d6 +# frontmatter-hash: d8dff84143db9c166089e2c90d2b2955ebd459eb29603f1138696b57b2dba403 name: "Workflow Craft Agent" "on": diff --git a/.github/workflows/daily-assign-issue-to-user.lock.yml b/.github/workflows/daily-assign-issue-to-user.lock.yml index 3023b4cb98..cd5d65401c 100644 --- a/.github/workflows/daily-assign-issue-to-user.lock.yml +++ b/.github/workflows/daily-assign-issue-to-user.lock.yml @@ -20,7 +20,7 @@ # For more information: https://github.com/githubnext/gh-aw/blob/main/.github/aw/github-agentic-workflows.md # # -# frontmatter-hash: f91876cdd5f50529a883fa78f73b25c15771fa6c5608e0e0ff7abe76e723b43a +# frontmatter-hash: 7bf8f3a0a566f050c4996bc9244d8fde4aa57e42d06eed3819d6001dae165f28 name: "Auto-Assign Issue" "on": diff --git a/.github/workflows/daily-choice-test.lock.yml b/.github/workflows/daily-choice-test.lock.yml index c7098009e3..4b942f6b35 100644 --- a/.github/workflows/daily-choice-test.lock.yml +++ b/.github/workflows/daily-choice-test.lock.yml @@ -21,7 +21,7 @@ # # Daily test workflow using Claude with custom safe-output job containing choice inputs # -# frontmatter-hash: 4bd88567f6ddafaeeed3eeca0fa3aa5b290be8c5c4b59b0c78f2f1439a88de16 +# frontmatter-hash: d0077a6940555f5f417afea8b9d9e43bfb9025f11d0c02fb05b0d421f0b315a6 name: "Daily Choice Type Test" "on": diff --git a/.github/workflows/daily-cli-performance.lock.yml b/.github/workflows/daily-cli-performance.lock.yml index 52f3cd6abb..6e26b726f7 100644 --- a/.github/workflows/daily-cli-performance.lock.yml +++ b/.github/workflows/daily-cli-performance.lock.yml @@ -26,7 +26,7 @@ # - shared/go-make.md # - shared/reporting.md # -# frontmatter-hash: 851d537dfa3f33b22c99d4acb7984284ad1f35b759da4ebd7b570794a2a81446 +# frontmatter-hash: 96f859411d8d9b133313653e221b41ccc900a627241e16cf50b0c1936b4ae346 name: "Daily CLI Performance Agent" "on": diff --git a/.github/workflows/daily-code-metrics.lock.yml b/.github/workflows/daily-code-metrics.lock.yml index d24274b0f4..6fcc36d518 100644 --- a/.github/workflows/daily-code-metrics.lock.yml +++ b/.github/workflows/daily-code-metrics.lock.yml @@ -27,7 +27,7 @@ # - shared/reporting.md # - shared/trends.md # -# frontmatter-hash: 9bc588d9ae8f6c4388b7c9df6691424e29e0630871fa54aa903d7361dfb48fe2 +# frontmatter-hash: cc9ab0d92c1e5c3933552f0b57c60439443d4fb8d064065eeeb7c74d30bdc36b name: "Daily Code Metrics and Trend Tracking Agent" "on": diff --git a/.github/workflows/daily-compiler-quality.lock.yml b/.github/workflows/daily-compiler-quality.lock.yml index 007246ac86..1682e3816c 100644 --- a/.github/workflows/daily-compiler-quality.lock.yml +++ b/.github/workflows/daily-compiler-quality.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: f19d6ae4f6b9f50309d5fa2f5c8d13e7fd74c63ba692ee873333a8c4f2cc8c96 +# frontmatter-hash: 4bb17e0350a20ddfc526eaa2cef701aeda2d40dcac36462e5ceebef6a0dfcbb3 name: "Daily Compiler Quality Check" "on": diff --git a/.github/workflows/daily-copilot-token-report.lock.yml b/.github/workflows/daily-copilot-token-report.lock.yml index 6f59faaed7..b1409a0d91 100644 --- a/.github/workflows/daily-copilot-token-report.lock.yml +++ b/.github/workflows/daily-copilot-token-report.lock.yml @@ -26,7 +26,7 @@ # - shared/python-dataviz.md # - shared/reporting.md # -# frontmatter-hash: 23f71bacfbd433988e1813952b3fa9a3020750d29f53d310c62095087ff06359 +# frontmatter-hash: 7b3f631fb4f772c116ffcebcc5a8ad310ebd8d23f47d50ece4628b306fd2542f name: "Daily Copilot Token Consumption Report" "on": diff --git a/.github/workflows/daily-doc-updater.lock.yml b/.github/workflows/daily-doc-updater.lock.yml index 525a461523..8387debcad 100644 --- a/.github/workflows/daily-doc-updater.lock.yml +++ b/.github/workflows/daily-doc-updater.lock.yml @@ -21,7 +21,7 @@ # # Automatically reviews and updates documentation to ensure accuracy and completeness # -# frontmatter-hash: 4aa8687abe86cca2a6df4597f15437ae7b648bec328c8059d5ae7c7ccba2edd9 +# frontmatter-hash: 511f67470f98ff648693a961aa97daf273ddfa65aa4fb5ec64a549e3480c2c19 name: "Daily Documentation Updater" "on": diff --git a/.github/workflows/daily-fact.lock.yml b/.github/workflows/daily-fact.lock.yml index c340d48ada..9c0e0d22e0 100644 --- a/.github/workflows/daily-fact.lock.yml +++ b/.github/workflows/daily-fact.lock.yml @@ -21,7 +21,7 @@ # # Posts a daily poetic verse about the gh-aw project to a discussion thread # -# frontmatter-hash: e5a7020143715e46128329e503fb24f926095ef8787948daad749e6ffdd0cbd6 +# frontmatter-hash: 94102aae25727251895cce00cf0890806bff73286fb9b305a871e259776fbe2f name: "Daily Fact About gh-aw" "on": diff --git a/.github/workflows/daily-file-diet.lock.yml b/.github/workflows/daily-file-diet.lock.yml index f8b23032b3..ce1efaf606 100644 --- a/.github/workflows/daily-file-diet.lock.yml +++ b/.github/workflows/daily-file-diet.lock.yml @@ -26,7 +26,7 @@ # - shared/reporting.md # - shared/safe-output-app.md # -# frontmatter-hash: 3687bc9aff3f0f8510571312acbf7558c46448c763999e1ad64c675d3348b9e4 +# frontmatter-hash: 72094726e1c887a874ae00fd18a9b0e96bff1044763a6d52c1ad96757a35392a name: "Daily File Diet" "on": diff --git a/.github/workflows/daily-firewall-report.lock.yml b/.github/workflows/daily-firewall-report.lock.yml index 78d10edbf3..9470c20070 100644 --- a/.github/workflows/daily-firewall-report.lock.yml +++ b/.github/workflows/daily-firewall-report.lock.yml @@ -27,7 +27,7 @@ # - shared/reporting.md # - shared/trending-charts-simple.md # -# frontmatter-hash: 734bdd0feb322640b432936010ad600bd5390ffe531d4557b6e19c0d79dbd20c +# frontmatter-hash: e05b06dcd8683c555173a9b5601ecea1381d0b784bb2ad6d98cd04885a93f7fd name: "Daily Firewall Logs Collector and Reporter" "on": diff --git a/.github/workflows/daily-issues-report.lock.yml b/.github/workflows/daily-issues-report.lock.yml index 8d823fbe91..500b712b11 100644 --- a/.github/workflows/daily-issues-report.lock.yml +++ b/.github/workflows/daily-issues-report.lock.yml @@ -29,7 +29,7 @@ # - shared/reporting.md # - shared/trends.md # -# frontmatter-hash: 1bf7191a3d67dea988dc52c96d835fd7f2f8c34cd7641311c35aace2186f2aea +# frontmatter-hash: 40cc9919bfde680d1f8fd6520ab602acb29841c994c8944134fc3e2a44a5646f name: "Daily Issues Report Generator" "on": diff --git a/.github/workflows/daily-malicious-code-scan.lock.yml b/.github/workflows/daily-malicious-code-scan.lock.yml index 7fb6f52f9d..2eadb94c1f 100644 --- a/.github/workflows/daily-malicious-code-scan.lock.yml +++ b/.github/workflows/daily-malicious-code-scan.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: e3fa819e89c26f2b2e58fd5d73a59eba1537aa5c039d84e697ab2a7c914fb198 +# frontmatter-hash: 91fce624bb3a01a6d39cd8cd33aaff87ac45a9da3cd104dedc0bce12b9f9f0f3 name: "Daily Malicious Code Scan Agent" "on": diff --git a/.github/workflows/daily-multi-device-docs-tester.lock.yml b/.github/workflows/daily-multi-device-docs-tester.lock.yml index 103f75cc6c..d3710031e2 100644 --- a/.github/workflows/daily-multi-device-docs-tester.lock.yml +++ b/.github/workflows/daily-multi-device-docs-tester.lock.yml @@ -26,7 +26,7 @@ # - shared/docs-server-lifecycle.md # - shared/reporting.md # -# frontmatter-hash: 40ea4735c0bedebd0fac0b6929973ec25d6077eccc43afc23b4cab261967f989 +# frontmatter-hash: cdef09a83917a26bdede4621ab9e8eff9dbcb068d0cadeef5a06cf72195c4f92 name: "Multi-Device Docs Tester" "on": diff --git a/.github/workflows/daily-news.lock.yml b/.github/workflows/daily-news.lock.yml index 6c2beabf2f..85e42e38ac 100644 --- a/.github/workflows/daily-news.lock.yml +++ b/.github/workflows/daily-news.lock.yml @@ -29,7 +29,7 @@ # - shared/reporting.md # - shared/trends.md # -# frontmatter-hash: 2b98580ed6d2f7fd7e85845ecd40ecc9c19a05a563211869eb25ced98e9d196a +# frontmatter-hash: c1486f4b969ece6b292c75349d0a44c4c189c3f5abae4d77349190c2fdeaef2b name: "Daily News" "on": diff --git a/.github/workflows/daily-observability-report.lock.yml b/.github/workflows/daily-observability-report.lock.yml index 2ec86f3794..be76dd280f 100644 --- a/.github/workflows/daily-observability-report.lock.yml +++ b/.github/workflows/daily-observability-report.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 25286853a8ea2f5320b9781e11709a7e6e16c6c14d7fa0bb9152a51b149f3f02 +# frontmatter-hash: d87fd38e4e5b67de2602dd6178617fd88a6382d87cda54094ce3834b3804aca7 name: "Daily Observability Report for AWF Firewall and MCP Gateway" "on": diff --git a/.github/workflows/daily-performance-summary.lock.yml b/.github/workflows/daily-performance-summary.lock.yml index e2dde2b48e..e1fe8cc5c7 100644 --- a/.github/workflows/daily-performance-summary.lock.yml +++ b/.github/workflows/daily-performance-summary.lock.yml @@ -27,7 +27,7 @@ # - shared/reporting.md # - shared/trending-charts-simple.md # -# frontmatter-hash: 60a93f80c26d23d7fa8972b57bec335a8cb7cd8f6e0ff245de1fe02d65a6fa61 +# frontmatter-hash: abea58021b7ead9348d97b112441a56ec1d189c60404c971f4d55b258f043d8a name: "Daily Project Performance Summary Generator (Using Safe Inputs)" "on": diff --git a/.github/workflows/daily-regulatory.lock.yml b/.github/workflows/daily-regulatory.lock.yml index 59c5307aaa..df10151c9a 100644 --- a/.github/workflows/daily-regulatory.lock.yml +++ b/.github/workflows/daily-regulatory.lock.yml @@ -26,7 +26,7 @@ # - shared/github-queries-safe-input.md # - shared/reporting.md # -# frontmatter-hash: d31b538239e0a7c55c360164a9a5eb6873449b38d14d76befcb0f281dbd980da +# frontmatter-hash: 2762fd9531ac7354422e51c24b4db3448aeb41e06a65a1814053628ce8887a52 name: "Daily Regulatory Report Generator" "on": diff --git a/.github/workflows/daily-repo-chronicle.lock.yml b/.github/workflows/daily-repo-chronicle.lock.yml index 1f32abe2e8..67819970b0 100644 --- a/.github/workflows/daily-repo-chronicle.lock.yml +++ b/.github/workflows/daily-repo-chronicle.lock.yml @@ -27,7 +27,7 @@ # - shared/reporting.md # - shared/trends.md # -# frontmatter-hash: 8186e730d106c8c4ed4c080121d08416a982be9203994ba6726a8d08997e7878 +# frontmatter-hash: 2b33f95d19a501b105a24682952f7e69dbec6c124e64e140bf414776aa9c41cf name: "The Daily Repository Chronicle" "on": diff --git a/.github/workflows/daily-safe-output-optimizer.lock.yml b/.github/workflows/daily-safe-output-optimizer.lock.yml index 03ff944051..eb6378b377 100644 --- a/.github/workflows/daily-safe-output-optimizer.lock.yml +++ b/.github/workflows/daily-safe-output-optimizer.lock.yml @@ -27,7 +27,7 @@ # - shared/mcp/gh-aw.md # - shared/reporting.md # -# frontmatter-hash: fbf02c0946bcdf53d62db66fc77e4fb40ffebd0e15f5de22b5a63ee89f1c6bb5 +# frontmatter-hash: 57310ba888bc93177c0d47a677ec1c14e3670223a71366b1934b618459de2dc3 name: "Daily Safe Output Tool Optimizer" "on": diff --git a/.github/workflows/daily-secrets-analysis.lock.yml b/.github/workflows/daily-secrets-analysis.lock.yml index f8f5e1a65a..4c3bd37434 100644 --- a/.github/workflows/daily-secrets-analysis.lock.yml +++ b/.github/workflows/daily-secrets-analysis.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: c4d6e021a85dd02462cf63b9f226125dc654e13a05aa3604c0df24f0c48d03d2 +# frontmatter-hash: 7a1379c1e839b1d206aba088d888161651080c846f63e08fcf2447d39a5cd045 name: "Daily Secrets Analysis Agent" "on": diff --git a/.github/workflows/daily-semgrep-scan.lock.yml b/.github/workflows/daily-semgrep-scan.lock.yml index dc7f85c14b..f425e00cbe 100644 --- a/.github/workflows/daily-semgrep-scan.lock.yml +++ b/.github/workflows/daily-semgrep-scan.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mcp/semgrep.md # -# frontmatter-hash: 2902167ec9e4aea0fd5e8a8d63b4edc8bc49a687948d8f1cfde9244626ad693b +# frontmatter-hash: af3d6fe908f0484e662b20465773369f8e44d177205d3201d82ee513f4e5cb17 name: "Daily Semgrep Scan" "on": diff --git a/.github/workflows/daily-team-evolution-insights.lock.yml b/.github/workflows/daily-team-evolution-insights.lock.yml index a52cac4638..2e4ba26fa0 100644 --- a/.github/workflows/daily-team-evolution-insights.lock.yml +++ b/.github/workflows/daily-team-evolution-insights.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: d9314d3d66decf43cfe77de618acdfccfe04279055b21efa47f79ef2a4216fce +# frontmatter-hash: 37f335b09255dc9d6230c1304e079c91692ee7a55c14ba0c328ffd86d557f185 name: "Daily Team Evolution Insights" "on": diff --git a/.github/workflows/daily-team-status.lock.yml b/.github/workflows/daily-team-status.lock.yml index 4718f03b29..377bd553cc 100644 --- a/.github/workflows/daily-team-status.lock.yml +++ b/.github/workflows/daily-team-status.lock.yml @@ -31,7 +31,7 @@ # Imports: # - githubnext/agentics/workflows/shared/reporting.md@d3422bf940923ef1d43db5559652b8e1e71869f3 # -# frontmatter-hash: 66f93c3489917ed4a59c1cb1fbd3840a87c87217b84a7a2d52e581fbe1b545fa +# frontmatter-hash: fe2a58caed6cc5884516bfae33ba63bde0d32014dde419406063bd864e7082a2 # # Effective stop-time: 2026-02-09 04:24:39 diff --git a/.github/workflows/daily-testify-uber-super-expert.lock.yml b/.github/workflows/daily-testify-uber-super-expert.lock.yml index 87cdce4b4e..ae7ee27439 100644 --- a/.github/workflows/daily-testify-uber-super-expert.lock.yml +++ b/.github/workflows/daily-testify-uber-super-expert.lock.yml @@ -26,7 +26,7 @@ # - shared/reporting.md # - shared/safe-output-app.md # -# frontmatter-hash: f62bba13fea7256953c409f42031d0f900900ff85aadc314601cc26d3f56dd2c +# frontmatter-hash: 0eef8e2e9e2fc61b47d8ad307e861c2a0558dff99519ec1ea73d0c207bf93654 name: "Daily Testify Uber Super Expert" "on": diff --git a/.github/workflows/daily-workflow-updater.lock.yml b/.github/workflows/daily-workflow-updater.lock.yml index d02ffb1468..12c0eec682 100644 --- a/.github/workflows/daily-workflow-updater.lock.yml +++ b/.github/workflows/daily-workflow-updater.lock.yml @@ -21,7 +21,7 @@ # # Automatically updates GitHub Actions versions and creates a PR if changes are detected # -# frontmatter-hash: 2dda4a9ad3b569122fa52c1fea46171e7132aa523b8564bf2526fcf35df5b273 +# frontmatter-hash: f8b08276d9d7a614c2532f9f3ca108124c6269d9961ff349e39c4979f967b610 name: "Daily Workflow Updater" "on": diff --git a/.github/workflows/deep-report.lock.yml b/.github/workflows/deep-report.lock.yml index c0bde06080..7c99bf425b 100644 --- a/.github/workflows/deep-report.lock.yml +++ b/.github/workflows/deep-report.lock.yml @@ -28,7 +28,7 @@ # - shared/reporting.md # - shared/weekly-issues-data-fetch.md # -# frontmatter-hash: 6ee2f9512eec75167c5dc8c792424c723a5147d846c02bb3da48daa173ac45a8 +# frontmatter-hash: d309eb58b310875ce3f41175d766ec7adf190a1e67f72819205124d81d8f65c1 name: "DeepReport - Intelligence Gathering Agent" "on": diff --git a/.github/workflows/delight.lock.yml b/.github/workflows/delight.lock.yml index f9836a5f24..737c52b75a 100644 --- a/.github/workflows/delight.lock.yml +++ b/.github/workflows/delight.lock.yml @@ -26,7 +26,7 @@ # - shared/jqschema.md # - shared/reporting.md # -# frontmatter-hash: fc8abbad9ca09608b279c36aacc406fac6b434ddd5d6dbf0a8e3b371b351ab2c +# frontmatter-hash: 5a4146150d329974f3fd1acd323a8b66371d2088c37d2f4f886fb3221d68405f name: "Delight" "on": diff --git a/.github/workflows/dependabot-bundler.lock.yml b/.github/workflows/dependabot-bundler.lock.yml index 3a021b1c5f..39a50f90f0 100644 --- a/.github/workflows/dependabot-bundler.lock.yml +++ b/.github/workflows/dependabot-bundler.lock.yml @@ -21,7 +21,7 @@ # # Bundles Dependabot security alert updates per package.json into a single PR # -# frontmatter-hash: 7cf5d566d83b6429e5ed46a741996e78da06d44e16bd32f5c05edef3ae3a9348 +# frontmatter-hash: 9636a3fc6f708e38cd76e359f274168ecb2d31189590174c9c7f5a2ce760deca name: "Dependabot Bundler" "on": diff --git a/.github/workflows/dependabot-burner.lock.yml b/.github/workflows/dependabot-burner.lock.yml index 908e6e78a3..0c3dd741b9 100644 --- a/.github/workflows/dependabot-burner.lock.yml +++ b/.github/workflows/dependabot-burner.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/campaign.md # -# frontmatter-hash: d450c954c557790fd2747a97adc633027ab85421d23765d3b50a6b92f92b4622 +# frontmatter-hash: f8ec5be315af99f2a29aab2b35194be259f7312eb2982fb063e157fe60cdedc8 name: "Dependabot Burner" "on": @@ -1293,7 +1293,6 @@ jobs: uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 env: GH_AW_AGENT_OUTPUT: ${{ env.GH_AW_AGENT_OUTPUT }} - GH_AW_TEMPORARY_PROJECT_MAP: ${{ steps.process_project_safe_outputs.outputs.temporary_project_map }} GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"create_issue\":{\"expires\":48,\"max\":5},\"create_project_status_update\":{\"max\":1,\"project\":\"https://github.com/orgs/githubnext/projects/144\"},\"missing_data\":{},\"missing_tool\":{},\"update_project\":{\"max\":100,\"project\":\"https://github.com/orgs/githubnext/projects/144\"}}" with: github-token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/dependabot-go-checker.lock.yml b/.github/workflows/dependabot-go-checker.lock.yml index 684f70908d..c6c6738fae 100644 --- a/.github/workflows/dependabot-go-checker.lock.yml +++ b/.github/workflows/dependabot-go-checker.lock.yml @@ -21,7 +21,7 @@ # # Checks for Go module and NPM dependency updates and analyzes Dependabot PRs for compatibility and breaking changes # -# frontmatter-hash: 228a8bf7c290a50446f102aaa6a9a3f13263f08af880b9406c5bd84bd23826a2 +# frontmatter-hash: 0d94a098ca5652180bac72fb28e23e4c59da0f15a8a13803725ea6b233d8bca0 name: "Dependabot Dependency Checker" "on": diff --git a/.github/workflows/dev-hawk.lock.yml b/.github/workflows/dev-hawk.lock.yml index 059ce3f768..332bafe7b8 100644 --- a/.github/workflows/dev-hawk.lock.yml +++ b/.github/workflows/dev-hawk.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mcp/gh-aw.md # -# frontmatter-hash: 041832f53c93f5fedd311bfdfbfb921e536d900f21095eef28ad1f5b13acd7f3 +# frontmatter-hash: 30d4d8dbef47cd8694f5cc27d5b23342fa2b6c2f1d5121315a83733b0ea9ea95 name: "Dev Hawk" "on": diff --git a/.github/workflows/dev.lock.yml b/.github/workflows/dev.lock.yml index a5ef9207c8..73e40e0a5a 100644 --- a/.github/workflows/dev.lock.yml +++ b/.github/workflows/dev.lock.yml @@ -21,7 +21,7 @@ # # Build and test this project # -# frontmatter-hash: e10375d4383a6b26880d16248b66b38600bae8a4e03964b4ec27398aa5adfb18 +# frontmatter-hash: fc593fca0d89228db3f0fa1cc356355c0c3d9de71344aa1231deafc1aaeb8c68 name: "Dev" "on": diff --git a/.github/workflows/developer-docs-consolidator.lock.yml b/.github/workflows/developer-docs-consolidator.lock.yml index 4f24d5416d..22b94e5a55 100644 --- a/.github/workflows/developer-docs-consolidator.lock.yml +++ b/.github/workflows/developer-docs-consolidator.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 6ff3989e178859e70ff7f465f7d6acd7b4d06b1a65b1045e04acff90e080ad07 +# frontmatter-hash: 21028dbf4e509c5d2c2a70b9171ed0bb4b6027397c083b6e4e140ab4ae85cba0 name: "Developer Documentation Consolidator" "on": diff --git a/.github/workflows/dictation-prompt.lock.yml b/.github/workflows/dictation-prompt.lock.yml index 7b3156028e..04b019ef47 100644 --- a/.github/workflows/dictation-prompt.lock.yml +++ b/.github/workflows/dictation-prompt.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: fe62a096afa855b1560f6c5ee8be610171a38dc006dca5b190588a729317e978 +# frontmatter-hash: d2008e977d4bfefb003362f03825147fb78bbce2d1687964f5af7d4a8e182404 name: "Dictation Prompt Generator" "on": diff --git a/.github/workflows/discussion-task-miner.lock.yml b/.github/workflows/discussion-task-miner.lock.yml index 386ea8193c..ed68594d16 100644 --- a/.github/workflows/discussion-task-miner.lock.yml +++ b/.github/workflows/discussion-task-miner.lock.yml @@ -26,7 +26,7 @@ # - shared/jqschema.md # - shared/reporting.md # -# frontmatter-hash: 78b66b4cc9f3fc3377d3defce36507f34804c01fdebd2f71e6f7ed8805ac9d3e +# frontmatter-hash: e0a9e740f1d95e914c6a9cb836fa5a25fce4a67b5263329720a224296d0f933e name: "Discussion Task Miner - Code Quality Improvement Agent" "on": diff --git a/.github/workflows/docs-noob-tester.lock.yml b/.github/workflows/docs-noob-tester.lock.yml index 7d5d365049..59731cc595 100644 --- a/.github/workflows/docs-noob-tester.lock.yml +++ b/.github/workflows/docs-noob-tester.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/docs-server-lifecycle.md # -# frontmatter-hash: 360735bdd98aaf30ffc5be5ed07116d2e598ea97fd5dbe118ce16322e21ca875 +# frontmatter-hash: a3c1e6efebee463db7ceef7ea9b84cd96c781458676df5b3910d1abc3d721ec9 name: "Documentation Noob Tester" "on": diff --git a/.github/workflows/draft-pr-cleanup.lock.yml b/.github/workflows/draft-pr-cleanup.lock.yml index abc0d55686..cf95648ed2 100644 --- a/.github/workflows/draft-pr-cleanup.lock.yml +++ b/.github/workflows/draft-pr-cleanup.lock.yml @@ -21,7 +21,7 @@ # # Automated cleanup policy for stale draft pull requests to reduce clutter and improve triage efficiency # -# frontmatter-hash: 8aee479aaf830cc11b3836bbbe9da21b377f268572fefd60fde4f7fb7a476fc4 +# frontmatter-hash: aa4cdf6eb60ddb489f53bbcc8a3ee0b50062d28e617fc6aeb5ac37704621de71 name: "Draft PR Cleanup" "on": diff --git a/.github/workflows/duplicate-code-detector.lock.yml b/.github/workflows/duplicate-code-detector.lock.yml index 6f628f38f3..8b7545f8e0 100644 --- a/.github/workflows/duplicate-code-detector.lock.yml +++ b/.github/workflows/duplicate-code-detector.lock.yml @@ -21,7 +21,7 @@ # # Identifies duplicate code patterns across the codebase and suggests refactoring opportunities # -# frontmatter-hash: bf048778f57f454da56dcf5ca81fb57f1eeb98575e29f78d5434febd4535819a +# frontmatter-hash: 877627e3f053b4f2cc541918a4b9db12fa8543e4bb46a6144b190eac8b442a1d name: "Duplicate Code Detector" "on": diff --git a/.github/workflows/example-custom-error-patterns.lock.yml b/.github/workflows/example-custom-error-patterns.lock.yml index 18337382eb..f387c4f61a 100644 --- a/.github/workflows/example-custom-error-patterns.lock.yml +++ b/.github/workflows/example-custom-error-patterns.lock.yml @@ -20,7 +20,7 @@ # For more information: https://github.com/githubnext/gh-aw/blob/main/.github/aw/github-agentic-workflows.md # # -# frontmatter-hash: 51057432400cd05fd3aa5637bc8c87f22e3e457c61fba96247be6b6ac06fe700 +# frontmatter-hash: b7702ec00e59a35aacdd0044ed532941d4e7235c904c0de0f00b00bae7f00b93 name: "Example: Custom Error Patterns" "on": diff --git a/.github/workflows/example-permissions-warning.lock.yml b/.github/workflows/example-permissions-warning.lock.yml index a168d13ab0..18b6039cb3 100644 --- a/.github/workflows/example-permissions-warning.lock.yml +++ b/.github/workflows/example-permissions-warning.lock.yml @@ -21,7 +21,7 @@ # # Example workflow demonstrating proper permission provisioning and security best practices # -# frontmatter-hash: a3eed7a84f446b0851b2b725421fb90089bb1e73e5743900a8d8c658c7310280 +# frontmatter-hash: ecf6b9cb72e73daf3e6be04de3c6083a68df2127c76634a1054cd7c23279cb09 name: "Example: Properly Provisioned Permissions" "on": diff --git a/.github/workflows/example-workflow-analyzer.lock.yml b/.github/workflows/example-workflow-analyzer.lock.yml index c98082345b..7bbef9367d 100644 --- a/.github/workflows/example-workflow-analyzer.lock.yml +++ b/.github/workflows/example-workflow-analyzer.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 737f0615376674c6ff226e2566048130828a8d5a688005e7aaee77996608a226 +# frontmatter-hash: 0d6270d8f8edb255ebaa4fe38bcafb6227a4e27e65a38d9455cc7e84aa147bf6 name: "Weekly Workflow Analysis" "on": diff --git a/.github/workflows/firewall-escape.lock.yml b/.github/workflows/firewall-escape.lock.yml index 66a5af35d8..0d62a59253 100644 --- a/.github/workflows/firewall-escape.lock.yml +++ b/.github/workflows/firewall-escape.lock.yml @@ -21,7 +21,7 @@ # # Security testing to find escape paths in the AWF (Agent Workflow Firewall) # -# frontmatter-hash: d90d4a31353a89bf6f7be40664de06c9080347f3d9d3017289e32b363c6afc68 +# frontmatter-hash: 9f5b6c732bb00815ff23dc71e9cc6c757dd18da4ccc13985c9865a18acfbe6ac name: "The Great Escapi" "on": diff --git a/.github/workflows/firewall.lock.yml b/.github/workflows/firewall.lock.yml index 12d12c2ff0..ada8f3d20c 100644 --- a/.github/workflows/firewall.lock.yml +++ b/.github/workflows/firewall.lock.yml @@ -21,7 +21,7 @@ # # Tests network firewall functionality and validates security rules for workflow network access # -# frontmatter-hash: c4c2b310d15c42edc0b60ae06033fdc21cfc49f5d3c7277e949734a13e5db98a +# frontmatter-hash: e31e3777e40673db2800d00539f83f16d581eb07b23fe65f98046a378003b0a5 name: "Firewall Test Agent" "on": diff --git a/.github/workflows/functional-pragmatist.lock.yml b/.github/workflows/functional-pragmatist.lock.yml index c6c4d69b22..fdc6bc55a8 100644 --- a/.github/workflows/functional-pragmatist.lock.yml +++ b/.github/workflows/functional-pragmatist.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 32464d9c07ea5d4669709a94c78136eff407abf4bb951a089193f7c16ecd8968 +# frontmatter-hash: b19abafb587b7ae34ee191f2e7fd3079b07925b3fb868dc63d0926113ea2b028 name: "Functional Pragmatist" "on": diff --git a/.github/workflows/github-mcp-structural-analysis.lock.yml b/.github/workflows/github-mcp-structural-analysis.lock.yml index a02033a77e..02b75d3321 100644 --- a/.github/workflows/github-mcp-structural-analysis.lock.yml +++ b/.github/workflows/github-mcp-structural-analysis.lock.yml @@ -26,7 +26,7 @@ # - shared/python-dataviz.md # - shared/reporting.md # -# frontmatter-hash: 5895db574ebe50d3b57d9b4fbe1d6487d9125a7243a870b5b18c8e09a1350acb +# frontmatter-hash: dd21f7b5fc76ffcb65cb1e50594d9468dd654ade27c49886a92b6260cd32ee1a name: "GitHub MCP Structural Analysis" "on": diff --git a/.github/workflows/github-mcp-tools-report.lock.yml b/.github/workflows/github-mcp-tools-report.lock.yml index 7770205bea..a670cc605c 100644 --- a/.github/workflows/github-mcp-tools-report.lock.yml +++ b/.github/workflows/github-mcp-tools-report.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: b0d0df8ea14fac422ca8b447cf2a1a0aa615874b258a3919967bb2117672b2e3 +# frontmatter-hash: c5cea41d7eb565dc3f633cbd4bb0bbb59c458aa9f790096206f9edf34c40ae8e name: "GitHub MCP Remote Server Tools Report Generator" "on": diff --git a/.github/workflows/github-remote-mcp-auth-test.lock.yml b/.github/workflows/github-remote-mcp-auth-test.lock.yml index 49028ed811..88742642a4 100644 --- a/.github/workflows/github-remote-mcp-auth-test.lock.yml +++ b/.github/workflows/github-remote-mcp-auth-test.lock.yml @@ -21,7 +21,7 @@ # # Daily test of GitHub remote MCP authentication with GitHub Actions token # -# frontmatter-hash: eacfa40ada603b2b0aea04a0884bd18b8efcad87edb6a573dae3967addaf32ea +# frontmatter-hash: a1ace06e0c17f50d4b915f0cda12e3ad47463da7dcacc900508fd0b57032a416 name: "GitHub Remote MCP Authentication Test" "on": diff --git a/.github/workflows/glossary-maintainer.lock.yml b/.github/workflows/glossary-maintainer.lock.yml index 094b08f0ec..2489255721 100644 --- a/.github/workflows/glossary-maintainer.lock.yml +++ b/.github/workflows/glossary-maintainer.lock.yml @@ -26,7 +26,7 @@ # - ../../skills/documentation/SKILL.md # - ../agents/technical-doc-writer.agent.md # -# frontmatter-hash: 0f30ab2c963138af8fef5106ffd40a2ffe0ed87758b136745ba49c90101a2572 +# frontmatter-hash: acd78ade7c8b4197c46e3458494028c68341e929020164460ebe5e79c21d04cb name: "Glossary Maintainer" "on": diff --git a/.github/workflows/go-fan.lock.yml b/.github/workflows/go-fan.lock.yml index fe5c1070c9..4762605c55 100644 --- a/.github/workflows/go-fan.lock.yml +++ b/.github/workflows/go-fan.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 54abdfb189e0169063142c6241df0189bb4a206be18cbe94d3f4e17ae87c3217 +# frontmatter-hash: 3ba99048e2edc0bf8d4a2e2229090b940812c7ac90dd0c45d73e7c3d6b8788e0 name: "Go Fan" "on": diff --git a/.github/workflows/go-logger.lock.yml b/.github/workflows/go-logger.lock.yml index ed85b87fd0..cbf7621e41 100644 --- a/.github/workflows/go-logger.lock.yml +++ b/.github/workflows/go-logger.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/go-make.md # -# frontmatter-hash: e69909a227ec0fc932b6d97d3a7296c5a8dd1c0bd8bd91414e7287aafe47a3aa +# frontmatter-hash: bfce7946dc11cc3be23d39054e798a6dd3cc0ba9f46737df5472446781acc69b name: "Go Logger Enhancement" "on": diff --git a/.github/workflows/go-pattern-detector.lock.yml b/.github/workflows/go-pattern-detector.lock.yml index d13f313f31..fe12902934 100644 --- a/.github/workflows/go-pattern-detector.lock.yml +++ b/.github/workflows/go-pattern-detector.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mcp/ast-grep.md # -# frontmatter-hash: d3bc341c0385764ae7f8c424d1b2f06f4663190a6747bc84dfb216320d8e9591 +# frontmatter-hash: 6fd71119ccfe8c3c82827167a705ef7f9fc534c0f2f4e49b5103c82a4d56cd03 name: "Go Pattern Detector" "on": diff --git a/.github/workflows/grumpy-reviewer.lock.yml b/.github/workflows/grumpy-reviewer.lock.yml index 657da3c22c..a2acf7e08e 100644 --- a/.github/workflows/grumpy-reviewer.lock.yml +++ b/.github/workflows/grumpy-reviewer.lock.yml @@ -21,7 +21,7 @@ # # Performs critical code review with a focus on edge cases, potential bugs, and code quality issues # -# frontmatter-hash: 46d17ed2c90a62f44ae8ae71378d01eff002309a97794d23f94520b3eaf6bd6b +# frontmatter-hash: 2cbc9155088552740491b8aeace6b2bfb7123e08468fa43bcd531f81a3c378a4 name: "Grumpy Code Reviewer 🔥" "on": diff --git a/.github/workflows/hourly-ci-cleaner.lock.yml b/.github/workflows/hourly-ci-cleaner.lock.yml index 19ca29bd8f..2412418c1e 100644 --- a/.github/workflows/hourly-ci-cleaner.lock.yml +++ b/.github/workflows/hourly-ci-cleaner.lock.yml @@ -25,7 +25,7 @@ # Imports: # - ../agents/ci-cleaner.agent.md # -# frontmatter-hash: 48d545ba3901a9892d7b7c0239e0987288367bb53e62f12f170f1f9c37db806d +# frontmatter-hash: a4b502eb1eca00c0abc6e6f6cca6dad1059fdd266ed40716669f5bba322bb6c0 name: "CI Cleaner" "on": diff --git a/.github/workflows/instructions-janitor.lock.yml b/.github/workflows/instructions-janitor.lock.yml index 6fad37d23b..3045a2b267 100644 --- a/.github/workflows/instructions-janitor.lock.yml +++ b/.github/workflows/instructions-janitor.lock.yml @@ -21,7 +21,7 @@ # # Reviews and cleans up instruction files to ensure clarity, consistency, and adherence to best practices # -# frontmatter-hash: fe374842323149e3f0762834c629453a8dcfdf4a11134b22498f4bbf4809af48 +# frontmatter-hash: 4ac0250dae919c34f05879baa5e3675d599715b9da8dedeca4cb01130550a9cf name: "Instructions Janitor" "on": diff --git a/.github/workflows/issue-arborist.lock.yml b/.github/workflows/issue-arborist.lock.yml index f72d8783e0..ead51e4d15 100644 --- a/.github/workflows/issue-arborist.lock.yml +++ b/.github/workflows/issue-arborist.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/jqschema.md # -# frontmatter-hash: 2fbb2b30aa792184dec5c05292b9d2ffdca4324cafef26a4b70123866479c826 +# frontmatter-hash: 349f62245ddff4f62fead94cccadefc23f4588646d61cb0fdbcf528fffc3313b name: "Issue Arborist" "on": diff --git a/.github/workflows/issue-classifier.lock.yml b/.github/workflows/issue-classifier.lock.yml index 577e2100e4..ed2d8ed7a4 100644 --- a/.github/workflows/issue-classifier.lock.yml +++ b/.github/workflows/issue-classifier.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/actions-ai-inference.md # -# frontmatter-hash: 2eb17beec0f718a04122b623bef8cb29156dbcdd09e4ed6cf58f14f97e6aeb22 +# frontmatter-hash: e9cdb89de05a95db57c973c02f8eae654712af129cc35c425c1f0f610586b197 name: "Issue Classifier" "on": diff --git a/.github/workflows/issue-monster.lock.yml b/.github/workflows/issue-monster.lock.yml index fc9fa56eb4..22ae7e9969 100644 --- a/.github/workflows/issue-monster.lock.yml +++ b/.github/workflows/issue-monster.lock.yml @@ -21,7 +21,7 @@ # # The Cookie Monster of issues - assigns issues to Copilot agents one at a time # -# frontmatter-hash: 0de2cc988d68a0fc28ae9a4d2e57b265d61ed75a422ec3c359938ba86ce0df46 +# frontmatter-hash: 63e7deb738f8420f2bd4ce52735604e273fe9a2dad34e8cef1f58a201390ff15 name: "Issue Monster" "on": diff --git a/.github/workflows/issue-triage-agent.lock.yml b/.github/workflows/issue-triage-agent.lock.yml index ba474e1e90..394b7f69de 100644 --- a/.github/workflows/issue-triage-agent.lock.yml +++ b/.github/workflows/issue-triage-agent.lock.yml @@ -24,7 +24,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 99ca769c7a4aed55f666baf540295ff5f0cb7c0695d450d873ce6dd9e8375a42 +# frontmatter-hash: bd11229943f8049e18f105562032126816a21250b4537410607ac591ba0d9ff8 name: "Issue Triage Agent" "on": diff --git a/.github/workflows/jsweep.lock.yml b/.github/workflows/jsweep.lock.yml index d851dc5d86..8f1c2642be 100644 --- a/.github/workflows/jsweep.lock.yml +++ b/.github/workflows/jsweep.lock.yml @@ -21,7 +21,7 @@ # # Daily JavaScript unbloater that cleans one .cjs file per day, prioritizing files with @ts-nocheck to enable type checking # -# frontmatter-hash: 22e06b502e1ade3de2db955470530f627e764b0bba41773a2cd33cbddcaa1e64 +# frontmatter-hash: e944db6339dbf45a6c1711e668e486d43b74368e259ec719a7d0bafdbf84b30a name: "jsweep - JavaScript Unbloater" "on": diff --git a/.github/workflows/layout-spec-maintainer.lock.yml b/.github/workflows/layout-spec-maintainer.lock.yml index ea94451c34..4e8ebef90a 100644 --- a/.github/workflows/layout-spec-maintainer.lock.yml +++ b/.github/workflows/layout-spec-maintainer.lock.yml @@ -21,7 +21,7 @@ # # Maintains scratchpad/layout.md with patterns of file paths, folder names, and artifact names used in lock.yml files # -# frontmatter-hash: 8b265c97957fc1fff6a4938fdeaadbbb8b4af6e03a440d67455d7a8366ae6a8e +# frontmatter-hash: b6a295435334a9ca337f3d3e5c89f3d8baefed2e60e5fbc7877973e819604bf9 name: "Layout Specification Maintainer" "on": diff --git a/.github/workflows/lockfile-stats.lock.yml b/.github/workflows/lockfile-stats.lock.yml index e0432d915a..40a3a7e66a 100644 --- a/.github/workflows/lockfile-stats.lock.yml +++ b/.github/workflows/lockfile-stats.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: a18ed84fe9cef4d1e670e1152e34fcd6ba79bcde92c848862600e570762c84cd +# frontmatter-hash: 311f79771b61c9c8a72b784e70e3ecbb81d37ecefb328431e63db47f3a3c72cb name: "Lockfile Statistics Analysis Agent" "on": diff --git a/.github/workflows/mcp-inspector.lock.yml b/.github/workflows/mcp-inspector.lock.yml index 65b6f70396..b5e805cb0b 100644 --- a/.github/workflows/mcp-inspector.lock.yml +++ b/.github/workflows/mcp-inspector.lock.yml @@ -40,7 +40,7 @@ # - shared/mcp/tavily.md # - shared/reporting.md # -# frontmatter-hash: aeb970b9d4d388a9370e2acbecdf93bbad665dc88a0a6fa3bbf0b9f02b925fbe +# frontmatter-hash: 05701122c8dde0bd155e25c00db139d2f6f9e5ee943a08094cc55aea41c57246 name: "MCP Inspector Agent" "on": diff --git a/.github/workflows/mergefest.lock.yml b/.github/workflows/mergefest.lock.yml index a8e1a9ef88..873436bf05 100644 --- a/.github/workflows/mergefest.lock.yml +++ b/.github/workflows/mergefest.lock.yml @@ -21,7 +21,7 @@ # # Automatically merges the main branch into pull request branches when invoked with /mergefest command # -# frontmatter-hash: cb02d91c5955ebf5441a3962edcc7290a28d8aa9ac1107f13efbe00a7f5157f8 +# frontmatter-hash: ca1f760bac23da88685d3d2135e21e2acaad70e4527b613f6d088ff0bbbc37f1 name: "Mergefest" "on": diff --git a/.github/workflows/metrics-collector.lock.yml b/.github/workflows/metrics-collector.lock.yml index 3dc991ed1e..45f946fc22 100644 --- a/.github/workflows/metrics-collector.lock.yml +++ b/.github/workflows/metrics-collector.lock.yml @@ -21,7 +21,7 @@ # # Collects daily performance metrics for the agent ecosystem and stores them in repo-memory # -# frontmatter-hash: 66d360de7176b9520482f6a6eeb8e0503d06227596e03418b631073575f9ec45 +# frontmatter-hash: 58830438f9fb80048f8094e965c0ec20ad8d92ec82e0e091b693acc1124125bb name: "Metrics Collector - Infrastructure Agent" "on": diff --git a/.github/workflows/notion-issue-summary.lock.yml b/.github/workflows/notion-issue-summary.lock.yml index 5d7772d2ef..4fce54c9bd 100644 --- a/.github/workflows/notion-issue-summary.lock.yml +++ b/.github/workflows/notion-issue-summary.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mcp/notion.md # -# frontmatter-hash: f2ba71e67d667391989255ca8b7dd1f27499191aafcacf910ebbc17c9d6ce4d4 +# frontmatter-hash: b5f9e4fa191395687efd550864a29293e225a2b2a1fd776fce4890b4640b03c3 name: "Issue Summary to Notion" "on": diff --git a/.github/workflows/org-health-report.lock.yml b/.github/workflows/org-health-report.lock.yml index b9f058455b..f601c8d9dc 100644 --- a/.github/workflows/org-health-report.lock.yml +++ b/.github/workflows/org-health-report.lock.yml @@ -27,7 +27,7 @@ # - shared/python-dataviz.md # - shared/reporting.md # -# frontmatter-hash: 2b647d838ffb49e97a0c9bde4e509191effe18d79734ebc471082faecb84be65 +# frontmatter-hash: d5cc600ac60029ed42fbd3dde1020e9ee4d9bd4cc482b6bdaa7f9f280489e975 name: "Organization Health Report" "on": diff --git a/.github/workflows/package-lock.json b/.github/workflows/package-lock.json index 303d9dcb80..2e2800d33f 100644 --- a/.github/workflows/package-lock.json +++ b/.github/workflows/package-lock.json @@ -83,7 +83,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=8.0.0" } @@ -105,7 +104,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-2.4.0.tgz", "integrity": "sha512-jn0phJ+hU7ZuvaoZE/8/Euw3gvHJrn2yi+kXrymwObEPVPjtwCmkvXDRQCWli+fCTTF/aSOtXaLr7CLIvv3LQg==", "license": "Apache-2.0", - "peer": true, "engines": { "node": "^18.19.0 || >=20.6.0" }, @@ -118,7 +116,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-2.4.0.tgz", "integrity": "sha512-KtcyFHssTn5ZgDu6SXmUznS80OFs/wN7y6MyFRRcKU6TOw8hNcGxKvt8hsdaLJfhzUszNSjURetq5Qpkad14Gw==", "license": "Apache-2.0", - "peer": true, "dependencies": { "@opentelemetry/semantic-conventions": "^1.29.0" }, @@ -134,7 +131,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.208.0.tgz", "integrity": "sha512-Eju0L4qWcQS+oXxi6pgh7zvE2byogAkcsVv0OjHF/97iOz1N/aKE6etSGowYkie+YA1uo6DNwdSxaaNnLvcRlA==", "license": "Apache-2.0", - "peer": true, "dependencies": { "@opentelemetry/api-logs": "0.208.0", "import-in-the-middle": "^2.0.0", @@ -537,7 +533,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-2.4.0.tgz", "integrity": "sha512-RWvGLj2lMDZd7M/5tjkI/2VHMpXebLgPKvBUd9LRasEWR2xAynDwEYZuLvY9P2NGG73HF07jbbgWX2C9oavcQg==", "license": "Apache-2.0", - "peer": true, "dependencies": { "@opentelemetry/core": "2.4.0", "@opentelemetry/semantic-conventions": "^1.29.0" @@ -554,7 +549,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-2.4.0.tgz", "integrity": "sha512-WH0xXkz/OHORDLKqaxcUZS0X+t1s7gGlumr2ebiEgNZQl2b0upK2cdoD0tatf7l8iP74woGJ/Kmxe82jdvcWRw==", "license": "Apache-2.0", - "peer": true, "dependencies": { "@opentelemetry/core": "2.4.0", "@opentelemetry/resources": "2.4.0", @@ -572,7 +566,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.39.0.tgz", "integrity": "sha512-R5R9tb2AXs2IRLNKLBJDynhkfmx7mX0vi8NkhZb3gUkPWHn6HXk5J8iQ/dql0U3ApfWym4kXXmBDRGO+oeOfjg==", "license": "Apache-2.0", - "peer": true, "engines": { "node": ">=14" } @@ -795,7 +788,6 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -1133,7 +1125,6 @@ "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz", "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==", "license": "MIT", - "peer": true, "dependencies": { "accepts": "^2.0.0", "body-parser": "^2.2.1", @@ -2001,7 +1992,6 @@ "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", "license": "MIT", - "peer": true, "funding": { "url": "https://github.com/sponsors/colinhacks" } diff --git a/.github/workflows/pdf-summary.lock.yml b/.github/workflows/pdf-summary.lock.yml index c910e7055e..d821d61f63 100644 --- a/.github/workflows/pdf-summary.lock.yml +++ b/.github/workflows/pdf-summary.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mcp/markitdown.md # -# frontmatter-hash: 387df7c6d652148e2ad5b39f795ba195df20289e530bbc967562c9367427fcb5 +# frontmatter-hash: 129b55e3b661d88497e4a6377467bbade6769bfd3c899ca921d62694a0641a0d name: "Resource Summarizer Agent" "on": diff --git a/.github/workflows/plan.lock.yml b/.github/workflows/plan.lock.yml index daab6345ac..573d30fd3e 100644 --- a/.github/workflows/plan.lock.yml +++ b/.github/workflows/plan.lock.yml @@ -21,7 +21,7 @@ # # Generates project plans and task breakdowns when invoked with /plan command in issues or PRs # -# frontmatter-hash: 345df14c463f1dddcf3c410e1382e182b37c6b9a6d66fda36b4c348d080352a9 +# frontmatter-hash: 79e1652a48b4f662b9b6aae9ceb89bc4949a4564853e353e15e1a47b565a6659 name: "Plan Command" "on": diff --git a/.github/workflows/poem-bot.lock.yml b/.github/workflows/poem-bot.lock.yml index 7dc53f17b3..13d0d259dd 100644 --- a/.github/workflows/poem-bot.lock.yml +++ b/.github/workflows/poem-bot.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 441709c7a5c96f7ca939f39fc66e7fbe1c791be696f9dce4cf12da067fb9bcdf +# frontmatter-hash: 3d86cfb27941748e1a7df02e015a8b253ecf1b6d3445da110865a9cc32b54b06 name: "Poem Bot - A Creative Agentic Workflow" "on": diff --git a/.github/workflows/portfolio-analyst.lock.yml b/.github/workflows/portfolio-analyst.lock.yml index f59aafd7aa..469fa6b05a 100644 --- a/.github/workflows/portfolio-analyst.lock.yml +++ b/.github/workflows/portfolio-analyst.lock.yml @@ -28,7 +28,7 @@ # - shared/reporting.md # - shared/trending-charts-simple.md # -# frontmatter-hash: f9178cb42f7994a4487adc6c510d8b1258d957613b5e72340f818436911db812 +# frontmatter-hash: cc71f6162a2775235cd3695c447bd4430491bcab3414bf210d1c0a54c252ce64 name: "Automated Portfolio Analyst" "on": diff --git a/.github/workflows/pr-nitpick-reviewer.lock.yml b/.github/workflows/pr-nitpick-reviewer.lock.yml index 3142c6516b..d0a916c445 100644 --- a/.github/workflows/pr-nitpick-reviewer.lock.yml +++ b/.github/workflows/pr-nitpick-reviewer.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 33ec1bd743315bcdf8dde7dfd9ebb549edee7107f38c6c1f68d1d487dee611ee +# frontmatter-hash: d3cf90a4b662d935ebf45dff94a0449902d15462cb5457ad313fa84529cde36e name: "PR Nitpick Reviewer 🔍" "on": diff --git a/.github/workflows/pr-triage-agent.lock.yml b/.github/workflows/pr-triage-agent.lock.yml index 23eea6760a..e286381155 100644 --- a/.github/workflows/pr-triage-agent.lock.yml +++ b/.github/workflows/pr-triage-agent.lock.yml @@ -21,7 +21,7 @@ # # Automates PR categorization, risk assessment, and prioritization for agent-created pull requests # -# frontmatter-hash: 5fa7cdc5a1159b0edb147dbf516dc2bea019f92f5f1da994f5c8f00c500a9dcc +# frontmatter-hash: fd90da3f3b9229ae82451b3dbc08745a3cb2ad752ad745f277dd6d050bd8b88d name: "PR Triage Agent" "on": diff --git a/.github/workflows/prompt-clustering-analysis.lock.yml b/.github/workflows/prompt-clustering-analysis.lock.yml index 8dac0d724e..8df79b611f 100644 --- a/.github/workflows/prompt-clustering-analysis.lock.yml +++ b/.github/workflows/prompt-clustering-analysis.lock.yml @@ -29,7 +29,7 @@ # - shared/reporting.md # - shared/trending-charts-simple.md # -# frontmatter-hash: ebb5451da430a4a2da2342a41c3fadb34527d40fbe28297e72e6082f761082d3 +# frontmatter-hash: e7e4a68916fa00cf8fd2533b24774ff30c517052d3cf190d0204839975f61321 name: "Copilot Agent Prompt Clustering Analysis" "on": diff --git a/.github/workflows/python-data-charts.lock.yml b/.github/workflows/python-data-charts.lock.yml index 3d3f328fcd..b38b3e899c 100644 --- a/.github/workflows/python-data-charts.lock.yml +++ b/.github/workflows/python-data-charts.lock.yml @@ -27,7 +27,7 @@ # - shared/trends.md # - shared/charts-with-trending.md # -# frontmatter-hash: 388acca74c06bff23943b96bd218d7f36c86131357e17c98752fa4cb6445029a +# frontmatter-hash: fb8e4d0b4e8d02e67b16e2349defbf1d3bc2aca9d2460f071bd1eddc14c3a23c name: "Python Data Visualization Generator" "on": diff --git a/.github/workflows/q.lock.yml b/.github/workflows/q.lock.yml index b55e931f29..21010dd929 100644 --- a/.github/workflows/q.lock.yml +++ b/.github/workflows/q.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mcp/gh-aw.md # -# frontmatter-hash: edf4a4cfed887f01ae896c8de41326d3aa97235e972ca00bab9acc28abdb4d49 +# frontmatter-hash: 957e9be1877aa13b5ed6641b8e8f648e724f9467d3b51f097e9647614e9f0c57 name: "Q" "on": diff --git a/.github/workflows/release.lock.yml b/.github/workflows/release.lock.yml index 4f42b9626d..42ecc97871 100644 --- a/.github/workflows/release.lock.yml +++ b/.github/workflows/release.lock.yml @@ -21,7 +21,7 @@ # # Build, test, and release gh-aw extension, then generate and prepend release highlights # -# frontmatter-hash: d7edcedcee6d65355e4a25c753a0f39b35d763a15078ec12d604e2c539e49b35 +# frontmatter-hash: 58d3484208f1ed1a5e32051df87688ce17c09b283e24c5ac4ca016d4b72c6c37 name: "Release" "on": diff --git a/.github/workflows/repo-audit-analyzer.lock.yml b/.github/workflows/repo-audit-analyzer.lock.yml index b38a9fe3f0..69f04b96c5 100644 --- a/.github/workflows/repo-audit-analyzer.lock.yml +++ b/.github/workflows/repo-audit-analyzer.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 51feded9311edded426078313ed837558347169968c0a3b49754170e099f6e69 +# frontmatter-hash: 9f7297ca4fb44d50c366a5d41a52c6f8b9568ed09fce804adc39e2009a6d4319 name: "Repo Audit Analyzer" "on": diff --git a/.github/workflows/repo-tree-map.lock.yml b/.github/workflows/repo-tree-map.lock.yml index d1a7d06c11..767121b3fe 100644 --- a/.github/workflows/repo-tree-map.lock.yml +++ b/.github/workflows/repo-tree-map.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: ff6999de5dcd76fbfc2692c7b84096e526969d712142e343f3bff663ada9db6f +# frontmatter-hash: f3aebc49e033f69b2425b78a7f002cded0bc2dc54c229ab6087d937e792222a1 name: "Repository Tree Map Generator" "on": diff --git a/.github/workflows/repository-quality-improver.lock.yml b/.github/workflows/repository-quality-improver.lock.yml index 46050eb716..bff215875c 100644 --- a/.github/workflows/repository-quality-improver.lock.yml +++ b/.github/workflows/repository-quality-improver.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: c981af9d124515f6f8cfad18a0ff0c9d16c5d306e74eda6fe538d968d7f0f16f +# frontmatter-hash: 1193a4223a3eb766d12db1cb9e34f5bae1acec5f8fc72401d712d3089313c143 name: "Repository Quality Improvement Agent" "on": diff --git a/.github/workflows/research.lock.yml b/.github/workflows/research.lock.yml index 034080ac8f..57a18d5b65 100644 --- a/.github/workflows/research.lock.yml +++ b/.github/workflows/research.lock.yml @@ -26,7 +26,7 @@ # - shared/mcp/tavily.md # - shared/reporting.md # -# frontmatter-hash: 6f0b49ab934be2107cd4862683935c61b20cd60d62323c26b25096db66a4cd31 +# frontmatter-hash: 4b9bdd257623153df0447db5727d0ab713e1918921930db5a6dc5e9956a0aa6c name: "Basic Research Agent" "on": diff --git a/.github/workflows/safe-output-health.lock.yml b/.github/workflows/safe-output-health.lock.yml index c501539f45..9a3707c4e2 100644 --- a/.github/workflows/safe-output-health.lock.yml +++ b/.github/workflows/safe-output-health.lock.yml @@ -27,7 +27,7 @@ # - shared/mcp/gh-aw.md # - shared/reporting.md # -# frontmatter-hash: 824b8c205f28ce0a084f7b0f87ae2b9566aa0e10cf409df793b721eb276c99fc +# frontmatter-hash: 8d86caf02dcabe246d3913e305fcedfb436678c77e17adba17fae46d91775b18 name: "Safe Output Health Monitor" "on": diff --git a/.github/workflows/schema-consistency-checker.lock.yml b/.github/workflows/schema-consistency-checker.lock.yml index cde923efb9..8c917f9139 100644 --- a/.github/workflows/schema-consistency-checker.lock.yml +++ b/.github/workflows/schema-consistency-checker.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: b787df95979f84f3579fe62b1f9c812096a41f073e83b84d48c4ea5b91c6fa55 +# frontmatter-hash: fce9ab5fd3bc06ba997b95621fa1dcf3c3fe5b9fbcdf10437cd61b93412f7081 name: "Schema Consistency Checker" "on": diff --git a/.github/workflows/scout.lock.yml b/.github/workflows/scout.lock.yml index 2fc85e1bf4..b55414e8a1 100644 --- a/.github/workflows/scout.lock.yml +++ b/.github/workflows/scout.lock.yml @@ -31,7 +31,7 @@ # - shared/mcp/tavily.md # - shared/reporting.md # -# frontmatter-hash: 897ff687dd9dadf8ac51b8fcb6f1d26040ce2014a861ab909d5d287399e1c704 +# frontmatter-hash: c4c417f7f1fc5ad909dd134e346e58c8c76f08cdc58bda00c141499a8680e7c9 name: "Scout" "on": diff --git a/.github/workflows/secret-scanning-triage.lock.yml b/.github/workflows/secret-scanning-triage.lock.yml index 969857f7e8..0902d815a9 100644 --- a/.github/workflows/secret-scanning-triage.lock.yml +++ b/.github/workflows/secret-scanning-triage.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: c0b97e25ddcde5d23be82ae00b411b7c7cf2766d7bd7cb00d4d8a3fc8476b41f +# frontmatter-hash: 01f2f3e6ee8009c85ee8ae6c29ddd3e2c4716777a77528d54c8b53938f6245cc name: "Secret Scanning Triage" "on": diff --git a/.github/workflows/security-alert-burndown.lock.yml b/.github/workflows/security-alert-burndown.lock.yml index 53c3461917..582f7b9fc7 100644 --- a/.github/workflows/security-alert-burndown.lock.yml +++ b/.github/workflows/security-alert-burndown.lock.yml @@ -21,7 +21,7 @@ # # Discovers security work items (Dependabot PRs, code scanning alerts, secret scanning alerts) # -# frontmatter-hash: eb077c13d4d8e97733256f4b5716186f5944164341d75203eb1ac6c1bda70a70 +# frontmatter-hash: 51efa58c66954302e9c9d54582047aaa2f8b4404ee092ea60c8d87059cea8160 name: "Security Alert Burndown" "on": @@ -1255,7 +1255,6 @@ jobs: uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 env: GH_AW_AGENT_OUTPUT: ${{ env.GH_AW_AGENT_OUTPUT }} - GH_AW_TEMPORARY_PROJECT_MAP: ${{ steps.process_project_safe_outputs.outputs.temporary_project_map }} GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"create_issue\":{\"assignees\":[\"copilot\"],\"max\":1},\"create_project_status_update\":{\"max\":1,\"project\":\"https://github.com/orgs/githubnext/projects/144\"},\"missing_data\":{},\"missing_tool\":{},\"update_project\":{\"max\":100,\"project\":\"https://github.com/orgs/githubnext/projects/144\"}}" GH_AW_ASSIGN_COPILOT: "true" with: diff --git a/.github/workflows/security-compliance.lock.yml b/.github/workflows/security-compliance.lock.yml index af62fa0de2..d03c11aed0 100644 --- a/.github/workflows/security-compliance.lock.yml +++ b/.github/workflows/security-compliance.lock.yml @@ -21,7 +21,7 @@ # # Fix critical vulnerabilities before audit deadline with full tracking and reporting # -# frontmatter-hash: 314b05878ec7e997e4ae2f93a29daa3885c8dae8e4755174a590d3e5bf0acb87 +# frontmatter-hash: fa196cbd40227d9ef74dd1222fc8604fde9464975b5de5d620ad06c9e2c39e0c name: "Security Compliance Campaign" "on": diff --git a/.github/workflows/security-fix-pr.lock.yml b/.github/workflows/security-fix-pr.lock.yml index 4cfdc61506..eee7b9f553 100644 --- a/.github/workflows/security-fix-pr.lock.yml +++ b/.github/workflows/security-fix-pr.lock.yml @@ -21,7 +21,7 @@ # # Identifies and automatically fixes code security issues by creating autofixes via GitHub Code Scanning # -# frontmatter-hash: 27acb6ff6ceed2bf5cba15244620ebac5650d9d801911285951448d754f2264d +# frontmatter-hash: 152ef52b934092e252619cfa4cedadf9b12a6e956b3e6b334a64802de3665838 name: "Security Fix PR" "on": diff --git a/.github/workflows/security-guard.lock.yml b/.github/workflows/security-guard.lock.yml index b0d47f4800..8c48c5e1e8 100644 --- a/.github/workflows/security-guard.lock.yml +++ b/.github/workflows/security-guard.lock.yml @@ -21,7 +21,7 @@ # # Automated security guard that reviews every PR for changes that could weaken security posture, only commenting when concrete evidence of security concerns exists # -# frontmatter-hash: 0a14604c80d938e78e62dfb103d5bf64af53fc8b76c5dc0ff3787ad14cde2571 +# frontmatter-hash: abcf9e2daed839292f7d1500a6f7ef38014fdc16ff083d7def2cc18d2c010096 name: "Security Guard Agent 🛡️" "on": diff --git a/.github/workflows/security-review.lock.yml b/.github/workflows/security-review.lock.yml index 9284e6acf3..078ba1a63e 100644 --- a/.github/workflows/security-review.lock.yml +++ b/.github/workflows/security-review.lock.yml @@ -21,7 +21,7 @@ # # Security-focused AI agent that reviews pull requests to identify changes that could weaken security posture or extend AWF boundaries # -# frontmatter-hash: 8dce89076b1b133ae139d49a510e143dca1d5ec212179446f56c615c6277eba5 +# frontmatter-hash: 7e0fe2b8c53c7e22b33337bf8e9fa4908b12591b2dfad4654a69978128602b10 name: "Security Review Agent 🔒" "on": diff --git a/.github/workflows/semantic-function-refactor.lock.yml b/.github/workflows/semantic-function-refactor.lock.yml index 09d9a9de66..2e03d3d5d3 100644 --- a/.github/workflows/semantic-function-refactor.lock.yml +++ b/.github/workflows/semantic-function-refactor.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: a24e9636fcb0d104228c989565200a62be073fbea9d7a72c27c2da7ff0553cb8 +# frontmatter-hash: 22e40ca38ef042b7d0c9ab4c11b28ca1228e5446828e6d05a81ed1aabe109710 name: "Semantic Function Refactoring" "on": diff --git a/.github/workflows/sergo.lock.yml b/.github/workflows/sergo.lock.yml index 4b42c4a97f..34414b85c3 100644 --- a/.github/workflows/sergo.lock.yml +++ b/.github/workflows/sergo.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: ebc57d406d82f83aa41251dcc7a533622bb8df385228b7c10e222205391197e1 +# frontmatter-hash: 73af2fea28d507cc8daee08a2978313548527ece6ca774f8159ed7bc5ae01e77 name: "Sergo - Serena Go Expert" "on": diff --git a/.github/workflows/slide-deck-maintainer.lock.yml b/.github/workflows/slide-deck-maintainer.lock.yml index f286f76677..365bcc77d1 100644 --- a/.github/workflows/slide-deck-maintainer.lock.yml +++ b/.github/workflows/slide-deck-maintainer.lock.yml @@ -21,7 +21,7 @@ # # Maintains the gh-aw slide deck by scanning repository content and detecting layout issues using Playwright # -# frontmatter-hash: 1029f2405a4d0266649ee4a0daa2334a95d5836c0f7cbe497fd174beef4f4e9d +# frontmatter-hash: 425121d73d927d957af0876ad36195c3ab514bf41e546ee6956ad38b75b44118 name: "Slide Deck Maintainer" "on": diff --git a/.github/workflows/smoke-claude.lock.yml b/.github/workflows/smoke-claude.lock.yml index 0e136c8018..24da52c97f 100644 --- a/.github/workflows/smoke-claude.lock.yml +++ b/.github/workflows/smoke-claude.lock.yml @@ -31,7 +31,7 @@ # - shared/mcp/tavily.md # - shared/reporting.md # -# frontmatter-hash: 08b4ac2bdfa8a22ca1fb3368447b3418e314946244a2c7947cb6e9ebe1b59bbe +# frontmatter-hash: b271a6e3e76e5c852fe05b1e1b5829f21ef4c6afaa43b85da15034bc59bb6ae3 name: "Smoke Claude" "on": diff --git a/.github/workflows/smoke-codex.lock.yml b/.github/workflows/smoke-codex.lock.yml index e2460a5c41..0b4c468857 100644 --- a/.github/workflows/smoke-codex.lock.yml +++ b/.github/workflows/smoke-codex.lock.yml @@ -28,7 +28,7 @@ # - shared/mcp/tavily.md # - shared/reporting.md # -# frontmatter-hash: f62ef990837531797b9718e6e1ffe5463386d88c1c1f1282d3e949fff85008b8 +# frontmatter-hash: 9bdea6e7fd311ae4b5f6ea064b91ff47f82eb7869878b5a3a0f1c9a1223a2d8b name: "Smoke Codex" "on": diff --git a/.github/workflows/smoke-copilot.lock.yml b/.github/workflows/smoke-copilot.lock.yml index a883ddead8..6985e1375a 100644 --- a/.github/workflows/smoke-copilot.lock.yml +++ b/.github/workflows/smoke-copilot.lock.yml @@ -27,7 +27,7 @@ # - shared/github-queries-safe-input.md # - shared/reporting.md # -# frontmatter-hash: 0899786e057960d0c71d8f7c7d02b43629245f56f3bdbdfcddabc8342163b04a +# frontmatter-hash: 93ac6babdb426bdd9ca113f8b067a10de4ef77737d5d1360c3fc4b568d853275 name: "Smoke Copilot" "on": @@ -1890,8 +1890,7 @@ jobs: uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 env: GH_AW_AGENT_OUTPUT: ${{ env.GH_AW_AGENT_OUTPUT }} - GH_AW_TEMPORARY_PROJECT_MAP: ${{ steps.process_project_safe_outputs.outputs.temporary_project_map }} - GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"add_comment\":{\"hide_older_comments\":true,\"max\":2},\"add_labels\":{\"allowed\":[\"smoke-copilot\"]},\"create_issue\":{\"close_older_issues\":true,\"expires\":2,\"group\":true,\"max\":1},\"create_project_status_update\":{\"max\":5,\"project\":\"https://github.com/orgs/nonexistent-test-org-12345/projects/99999\"},\"missing_data\":{},\"missing_tool\":{},\"remove_labels\":{\"allowed\":[\"smoke\"]},\"update_project\":{\"max\":20,\"project\":\"https://github.com/orgs/nonexistent-test-org-12345/projects/99999\",\"views\":[{\"name\":\"Smoke Test Board\",\"layout\":\"board\",\"filter\":\"is:open\"},{\"name\":\"Smoke Test Table\",\"layout\":\"table\"}]}}" + GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"add_comment\":{\"hide_older_comments\":true,\"max\":2},\"add_labels\":{\"allowed\":[\"smoke-copilot\"]},\"create_issue\":{\"close_older_issues\":true,\"expires\":2,\"group\":true,\"max\":1},\"missing_data\":{},\"missing_tool\":{},\"remove_labels\":{\"allowed\":[\"smoke\"]}}" with: github-token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} script: | diff --git a/.github/workflows/smoke-opencode.lock.yml b/.github/workflows/smoke-opencode.lock.yml index e1e57450f3..9264f7bf37 100644 --- a/.github/workflows/smoke-opencode.lock.yml +++ b/.github/workflows/smoke-opencode.lock.yml @@ -27,7 +27,7 @@ # - shared/github-queries-safe-input.md # - shared/opencode.md # -# frontmatter-hash: 73588d4ef81362824549e6defdd2216e20ea9418426b65d3463447dfa7efb05e +# frontmatter-hash: 9f87266d1dd544ee5ff48a03e3b1fb382b4d259777a85ad6d29502bbc8f64429 name: "Smoke OpenCode" "on": diff --git a/.github/workflows/smoke-project.lock.yml b/.github/workflows/smoke-project.lock.yml index 7d8ea90c9a..3d927f11ad 100644 --- a/.github/workflows/smoke-project.lock.yml +++ b/.github/workflows/smoke-project.lock.yml @@ -26,7 +26,7 @@ # - shared/gh.md # - shared/reporting.md # -# frontmatter-hash: 9368dd5dc127fd99c0e1b7a7300469260b6136dbf18f5883bbac8e1126857109 +# frontmatter-hash: 736ce27cd92c43f6faeef52c6877dd5c1a02e41cf04ccf86cd453c3bc9113788 name: "Smoke Project" "on": diff --git a/.github/workflows/smoke-test-tools.lock.yml b/.github/workflows/smoke-test-tools.lock.yml index 0fe9adafa8..25bf1ab00e 100644 --- a/.github/workflows/smoke-test-tools.lock.yml +++ b/.github/workflows/smoke-test-tools.lock.yml @@ -21,7 +21,7 @@ # # Smoke test to validate common development tools are available in the agent container # -# frontmatter-hash: dafd90c27272b0b858d8444a842dfdd57744f08942ed8f634f0e7f782d23792b +# frontmatter-hash: 763f0380c35cc716f2a5dbbb1783fcdc18d51fbeada047786ae23b177686fc64 name: "Agent Container Smoke Test" "on": diff --git a/.github/workflows/stale-repo-identifier.lock.yml b/.github/workflows/stale-repo-identifier.lock.yml index 70c819a71a..4969c492f6 100644 --- a/.github/workflows/stale-repo-identifier.lock.yml +++ b/.github/workflows/stale-repo-identifier.lock.yml @@ -27,7 +27,7 @@ # - shared/python-dataviz.md # - shared/trending-charts-simple.md # -# frontmatter-hash: cfe7dc6f92032b146eee3b3d55efa4ceb70a2cf5f34db0a49eaca536ce43fff5 +# frontmatter-hash: 4769e17a5c22ae5dba932594722a3533425ae7398386bcab92c1b684cca4b923 name: "Stale Repository Identifier" "on": diff --git a/.github/workflows/static-analysis-report.lock.yml b/.github/workflows/static-analysis-report.lock.yml index eed9db45d4..c16e83bbd1 100644 --- a/.github/workflows/static-analysis-report.lock.yml +++ b/.github/workflows/static-analysis-report.lock.yml @@ -26,7 +26,7 @@ # - shared/mcp/gh-aw.md # - shared/reporting.md # -# frontmatter-hash: 138717d0e18ce511037e9cd5c4a52ac07bd21c1f322622e34a2757ac720a98c5 +# frontmatter-hash: 5623cbe7ad0e5710c636b3e9561b944be9e74682a4116581b8d0ecb71c810d1d name: "Static Analysis Report" "on": diff --git a/.github/workflows/step-name-alignment.lock.yml b/.github/workflows/step-name-alignment.lock.yml index 6ec925ea8c..9f4a3d91a2 100644 --- a/.github/workflows/step-name-alignment.lock.yml +++ b/.github/workflows/step-name-alignment.lock.yml @@ -21,7 +21,7 @@ # # Scans step names in .lock.yml files and aligns them with step intent and project glossary # -# frontmatter-hash: 9c35dfecf19f2d4bd92bc1aae54faf598ea269d8e19246e22584c6cc16988f44 +# frontmatter-hash: 78ad00486910761817d1fbf6fb457f15ced16793c18f91b85b6c486509cc60b9 name: "Step Name Alignment" "on": diff --git a/.github/workflows/sub-issue-closer.lock.yml b/.github/workflows/sub-issue-closer.lock.yml index 8d115815a4..fa29b8e481 100644 --- a/.github/workflows/sub-issue-closer.lock.yml +++ b/.github/workflows/sub-issue-closer.lock.yml @@ -21,7 +21,7 @@ # # Scheduled workflow that recursively closes parent issues when all sub-issues are 100% complete # -# frontmatter-hash: e8b6ecaa713b7ffe7e6f1b27222e8f26a896cc05bbdea1232669e45dd9ef99c9 +# frontmatter-hash: 904f36e6ded474b53a95a84896ec56b1821a54914259f4f94434814bc222f554 name: "Sub-Issue Closer" "on": diff --git a/.github/workflows/super-linter.lock.yml b/.github/workflows/super-linter.lock.yml index 2c35b4329e..05297fbf15 100644 --- a/.github/workflows/super-linter.lock.yml +++ b/.github/workflows/super-linter.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 53bdcf5bfa526ed222aca60778b257254ab93a98ffe366bd11542ba9be577322 +# frontmatter-hash: 42651a1ffa326678a5baef88a692cb59ee09a349c85b697feb4dbf1b8d8545a9 name: "Super Linter Report" "on": diff --git a/.github/workflows/technical-doc-writer.lock.yml b/.github/workflows/technical-doc-writer.lock.yml index 0593511398..25095429af 100644 --- a/.github/workflows/technical-doc-writer.lock.yml +++ b/.github/workflows/technical-doc-writer.lock.yml @@ -26,7 +26,7 @@ # - ../../skills/documentation/SKILL.md # - ../agents/technical-doc-writer.agent.md # -# frontmatter-hash: 6df5c8073f7d997424a2cf6633f3645a507a107bb94c1cd54c1808a0057caed0 +# frontmatter-hash: 0871c69a68b0e7bddd200dc36d0d74f8dfeafcc8ed6ac0439ff370202d87bf3c name: "Rebuild the documentation after making changes" "on": diff --git a/.github/workflows/terminal-stylist.lock.yml b/.github/workflows/terminal-stylist.lock.yml index 7480245b4a..cbdc6ab898 100644 --- a/.github/workflows/terminal-stylist.lock.yml +++ b/.github/workflows/terminal-stylist.lock.yml @@ -21,7 +21,7 @@ # # Analyzes and improves console output styling and formatting in the codebase # -# frontmatter-hash: 7d4c0df7c40ea925c2cc10260508d0317a4ce59e0a845531f187351f42f7a879 +# frontmatter-hash: 21db27295faf0bbff9b82aa4e888b062ef01c2ec33f32b9659dbf27d3231cca8 name: "Terminal Stylist" "on": diff --git a/.github/workflows/test-create-pr-error-handling.lock.yml b/.github/workflows/test-create-pr-error-handling.lock.yml index 3aa85a8503..82822e75ac 100644 --- a/.github/workflows/test-create-pr-error-handling.lock.yml +++ b/.github/workflows/test-create-pr-error-handling.lock.yml @@ -21,7 +21,7 @@ # # Test workflow to verify create_pull_request error handling # -# frontmatter-hash: 9c9a59cd494ff609b807d6d0534347d066878e24d50be7d9a3e8fdcf406d15da +# frontmatter-hash: e1ed8a77901fd7fb8914f7b7558cd13ccea7b5aa35a46fb2e43fedcd2bb9a876 name: "Test Create PR Error Handling" "on": diff --git a/.github/workflows/test-dispatcher.lock.yml b/.github/workflows/test-dispatcher.lock.yml index dd0cbadaed..9790c09e88 100644 --- a/.github/workflows/test-dispatcher.lock.yml +++ b/.github/workflows/test-dispatcher.lock.yml @@ -20,7 +20,7 @@ # For more information: https://github.com/githubnext/gh-aw/blob/main/.github/aw/github-agentic-workflows.md # # -# frontmatter-hash: ad6d98de0a821706eec493d4079ef3e02a98a318605ca3164ab794f9717842e4 +# frontmatter-hash: 66f0def98b2e3e5761665c2b0b3d70e999f42edb5763b365ca749257e2245863 name: "Test Dispatcher Workflow" "on": issues diff --git a/.github/workflows/test-project-url-default.lock.yml b/.github/workflows/test-project-url-default.lock.yml index a629dea6cf..fea0cd1a8d 100644 --- a/.github/workflows/test-project-url-default.lock.yml +++ b/.github/workflows/test-project-url-default.lock.yml @@ -20,7 +20,7 @@ # For more information: https://github.com/githubnext/gh-aw/blob/main/.github/aw/github-agentic-workflows.md # # -# frontmatter-hash: 6e6b463dc434c49e73882d3baddeea802a753fd71c093baec942a5b97da00f81 +# frontmatter-hash: c40d2a0d0dd4c9161859ac192c7e53b80b2feda2f1dd25e294c61b9d932eeccb name: "Test Project URL Default" "on": @@ -1176,7 +1176,6 @@ jobs: uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 env: GH_AW_AGENT_OUTPUT: ${{ env.GH_AW_AGENT_OUTPUT }} - GH_AW_TEMPORARY_PROJECT_MAP: ${{ steps.process_project_safe_outputs.outputs.temporary_project_map }} GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"create_project_status_update\":{\"max\":1,\"project\":\"https://github.com/orgs/\\u003cORG\\u003e/projects/\\u003cNUMBER\\u003e\"},\"missing_data\":{},\"missing_tool\":{},\"update_project\":{\"max\":5,\"project\":\"https://github.com/orgs/\\u003cORG\\u003e/projects/\\u003cNUMBER\\u003e\"}}" with: github-token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/test-yaml-import.lock.yml b/.github/workflows/test-yaml-import.lock.yml index 82e115cc21..3b3441325f 100644 --- a/.github/workflows/test-yaml-import.lock.yml +++ b/.github/workflows/test-yaml-import.lock.yml @@ -24,7 +24,7 @@ # Imports: # - license-check.yml # -# frontmatter-hash: bd3ea28db3af8531133c1d0a7e51e8c319a6a572d24e0ca6a03190734a2e2311 +# frontmatter-hash: aa7960a6f150b3a70259d29dcb4e95340fb9f7eecf8ee853fcae66400f2260bd name: "Test YAML Import" "on": issue_comment diff --git a/.github/workflows/tidy.lock.yml b/.github/workflows/tidy.lock.yml index c4714f902a..9556efaa7a 100644 --- a/.github/workflows/tidy.lock.yml +++ b/.github/workflows/tidy.lock.yml @@ -21,7 +21,7 @@ # # Automatically formats and tidies code files (Go, JS, TypeScript) when code changes are pushed or on command # -# frontmatter-hash: 16de6681c390c9d36e68be81e672c7e8aa707674ce51721ad75e0e681093aca9 +# frontmatter-hash: 2adfd51254f0f240100988bd71f12fbd6cebd945a55dd756c318ce9be9136816 name: "Tidy" "on": diff --git a/.github/workflows/typist.lock.yml b/.github/workflows/typist.lock.yml index 542a2d5c5d..84fd49e3aa 100644 --- a/.github/workflows/typist.lock.yml +++ b/.github/workflows/typist.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 1a77de0356523a1669f501f87a19f56aaddc41b37836ce0f9b01eb7b0a2c36b3 +# frontmatter-hash: ef5db98b66669bd25fba125ac7de68fe676275ad4c63593d52f1dcfe320befdb name: "Typist - Go Type Analysis" "on": diff --git a/.github/workflows/ubuntu-image-analyzer.lock.yml b/.github/workflows/ubuntu-image-analyzer.lock.yml index 6ec4f409d6..c8233f0baa 100644 --- a/.github/workflows/ubuntu-image-analyzer.lock.yml +++ b/.github/workflows/ubuntu-image-analyzer.lock.yml @@ -21,7 +21,7 @@ # # Weekly analysis of the default Ubuntu Actions runner image and guidance for creating Docker mimics # -# frontmatter-hash: 25e195821bb8d1992b5f7d2f0175b9ddc251ba345d1fcc9d9692b598ec5269bf +# frontmatter-hash: be9ff981946cb104b9b1e16edf2203dea2367f080f6560a9d911be5fcba668fa name: "Ubuntu Actions Image Analyzer" "on": diff --git a/.github/workflows/unbloat-docs.lock.yml b/.github/workflows/unbloat-docs.lock.yml index d1be7a42e1..9aa96358de 100644 --- a/.github/workflows/unbloat-docs.lock.yml +++ b/.github/workflows/unbloat-docs.lock.yml @@ -26,7 +26,7 @@ # - shared/docs-server-lifecycle.md # - shared/reporting.md # -# frontmatter-hash: 55bf1911a9af197b39b88177bb67e47d9b7ebda24422d86062eb6ceff3ec6ca5 +# frontmatter-hash: 5fe9c52ab6bc5726e9c8225db8d05676b065b8b242c533abc38c5b7e1d583e40 name: "Documentation Unbloat" "on": diff --git a/.github/workflows/video-analyzer.lock.yml b/.github/workflows/video-analyzer.lock.yml index 0a72bd36bb..832635480b 100644 --- a/.github/workflows/video-analyzer.lock.yml +++ b/.github/workflows/video-analyzer.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/ffmpeg.md # -# frontmatter-hash: fee2b44311535c77e49d272666d5d2d69fcaf30d52ca0d69653e05c00b049c3d +# frontmatter-hash: 59f7b078cf120ba3cfa11bbe15e5346da954a674461e50793ac90936c5f34e93 name: "Video Analysis Agent" "on": diff --git a/.github/workflows/weekly-issue-summary.lock.yml b/.github/workflows/weekly-issue-summary.lock.yml index 77c13614c9..4c42a5a279 100644 --- a/.github/workflows/weekly-issue-summary.lock.yml +++ b/.github/workflows/weekly-issue-summary.lock.yml @@ -27,7 +27,7 @@ # - shared/reporting.md # - shared/trends.md # -# frontmatter-hash: 73a308010e18004d39ae7f3738e505dd98a41212b6c3102aaa8475a2cfed1aed +# frontmatter-hash: 6ce6d330063080e2e8a1aec538e3bc82ecbac57830711e8378681e43f8dee39c name: "Weekly Issue Summary" "on": diff --git a/.github/workflows/workflow-generator.lock.yml b/.github/workflows/workflow-generator.lock.yml index 76f6d65e81..bf3470c4de 100644 --- a/.github/workflows/workflow-generator.lock.yml +++ b/.github/workflows/workflow-generator.lock.yml @@ -21,7 +21,7 @@ # # Workflow generator that updates issue status and assigns to Copilot agent for workflow design # -# frontmatter-hash: e7d6f46450212e659b52a84a7464feffaf11004dabba535ec37df34c79a82610 +# frontmatter-hash: 293240bf45d28bb958db0b37b5fdf3222e4720dc48c1b802ca63aaaedea8159a name: "Workflow Generator" "on": diff --git a/.github/workflows/workflow-health-manager.lock.yml b/.github/workflows/workflow-health-manager.lock.yml index 1100df5952..a4385c96e5 100644 --- a/.github/workflows/workflow-health-manager.lock.yml +++ b/.github/workflows/workflow-health-manager.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 5106483304964d45cf529dc9e1ac2ec3b8ad1939215e4a1b9c52a1a260f45a02 +# frontmatter-hash: c3ac72413fe2287a4685e26ead94cbff9d6d0afd8a34aeec19abb4126c4e8d75 name: "Workflow Health Manager - Meta-Orchestrator" "on": diff --git a/.github/workflows/workflow-normalizer.lock.yml b/.github/workflows/workflow-normalizer.lock.yml index f0616ef415..4eade8a96c 100644 --- a/.github/workflows/workflow-normalizer.lock.yml +++ b/.github/workflows/workflow-normalizer.lock.yml @@ -26,7 +26,7 @@ # - shared/mcp/gh-aw.md # - shared/reporting.md # -# frontmatter-hash: 114f573a5b010db698bcb86d67358cbce72932fcca82e547ff6d47cc5a7268fd +# frontmatter-hash: 981fe5459e2a27bb0a81451c3560fe09c5fb097bdb026cf00b8a0e8e72d82879 name: "Workflow Normalizer" "on": diff --git a/.github/workflows/workflow-skill-extractor.lock.yml b/.github/workflows/workflow-skill-extractor.lock.yml index bce2638654..6279286917 100644 --- a/.github/workflows/workflow-skill-extractor.lock.yml +++ b/.github/workflows/workflow-skill-extractor.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/reporting.md # -# frontmatter-hash: 566fb48dcfc680908bf2585b9156585d0fd12ecec6fe1bbce834d746414dd893 +# frontmatter-hash: 711775a708248db09a7f141c7856cf71c392ebc2a458ea611a91b7bf0a768a99 name: "Workflow Skill Extractor" "on": diff --git a/actions/setup/js/frontmatter_hash_pure.cjs b/actions/setup/js/frontmatter_hash_pure.cjs index 39c5cfa0d5..58cad9b635 100644 --- a/actions/setup/js/frontmatter_hash_pure.cjs +++ b/actions/setup/js/frontmatter_hash_pure.cjs @@ -10,8 +10,8 @@ const crypto = require("crypto"); const VERSIONS = { // "gh-aw": "dev", // Excluded for non-release builds awf: "v0.11.2", - agents: "v0.0.84", - gateway: "v0.0.84", + agents: "v0.0.86", + gateway: "v0.0.86", }; /** diff --git a/pkg/parser/frontmatter_hash.go b/pkg/parser/frontmatter_hash.go index 200b4efb97..2df1331776 100644 --- a/pkg/parser/frontmatter_hash.go +++ b/pkg/parser/frontmatter_hash.go @@ -248,7 +248,7 @@ func marshalSorted(data any) string { } // ComputeFrontmatterHashFromFile computes the frontmatter hash for a workflow file -// including template expressions that reference env. or vars. from the markdown body +// using text-based approach (no YAML parsing) to match JavaScript implementation func ComputeFrontmatterHashFromFile(filePath string, cache *ImportCache) (string, error) { frontmatterHashLog.Printf("Computing hash for file: %s", filePath) @@ -258,8 +258,8 @@ func ComputeFrontmatterHashFromFile(filePath string, cache *ImportCache) (string return "", fmt.Errorf("failed to read file: %w", err) } - // Extract frontmatter - result, err := ExtractFrontmatterFromContent(string(content)) + // Extract frontmatter and markdown as text (no YAML parsing) + frontmatterText, markdown, err := extractFrontmatterAndBodyText(string(content)) if err != nil { return "", fmt.Errorf("failed to extract frontmatter: %w", err) } @@ -268,10 +268,10 @@ func ComputeFrontmatterHashFromFile(filePath string, cache *ImportCache) (string baseDir := filepath.Dir(filePath) // Extract relevant template expressions from markdown body - relevantExpressions := extractRelevantTemplateExpressions(result.Markdown) + relevantExpressions := extractRelevantTemplateExpressions(markdown) - // Compute hash including template expressions - return ComputeFrontmatterHashWithExpressions(result.Frontmatter, baseDir, cache, relevantExpressions) + // Compute hash using text-based approach + return computeFrontmatterHashTextBased(frontmatterText, markdown, baseDir, cache, relevantExpressions) } // ComputeFrontmatterHashWithExpressions computes the hash including template expressions @@ -340,6 +340,7 @@ func buildVersionInfo() map[string]string { // that reference env. or vars. contexts func extractRelevantTemplateExpressions(markdown string) []string { var expressions []string + seen := make(map[string]bool) // Regex to match ${{ ... }} expressions expressionRegex := regexp.MustCompile(`\$\{\{(.*?)\}\}`) @@ -355,9 +356,234 @@ func extractRelevantTemplateExpressions(markdown string) []string { // Check if expression references env. or vars. if strings.Contains(content, "env.") || strings.Contains(content, "vars.") { // Store the full expression including ${{ }} - expressions = append(expressions, match[0]) + expr := match[0] + // Deduplicate expressions + if !seen[expr] { + expressions = append(expressions, expr) + seen[expr] = true + } } } + // Sort for deterministic output + sort.Strings(expressions) return expressions } + +// extractFrontmatterAndBodyText extracts frontmatter as raw text without parsing YAML +// Returns: frontmatterText, markdownBody, error +func extractFrontmatterAndBodyText(content string) (string, string, error) { + lines := strings.Split(content, "\n") + + // Check if content starts with frontmatter delimiter + if len(lines) == 0 || strings.TrimSpace(lines[0]) != "---" { + // No frontmatter + return "", content, nil + } + + // Find end of frontmatter + endIndex := -1 + for i := 1; i < len(lines); i++ { + if strings.TrimSpace(lines[i]) == "---" { + endIndex = i + break + } + } + + if endIndex == -1 { + return "", "", fmt.Errorf("frontmatter not properly closed") + } + + // Extract frontmatter text (lines between --- delimiters) + frontmatterText := strings.Join(lines[1:endIndex], "\n") + + // Extract markdown body (everything after closing ---) + var markdown string + if endIndex+1 < len(lines) { + markdown = strings.Join(lines[endIndex+1:], "\n") + } + + return frontmatterText, markdown, nil +} + +// normalizeFrontmatterText normalizes frontmatter text for consistent hashing +// Removes leading/trailing whitespace and normalizes line endings +func normalizeFrontmatterText(text string) string { + // Normalize Windows line endings to Unix + normalized := strings.ReplaceAll(text, "\r\n", "\n") + // Trim leading and trailing whitespace + return strings.TrimSpace(normalized) +} + +// extractImportsFromText extracts import paths from frontmatter text using simple text parsing +// Only extracts array items under "imports:" key +func extractImportsFromText(frontmatterText string) []string { + var imports []string + lines := strings.Split(frontmatterText, "\n") + + inImports := false + baseIndent := 0 + + for i := 0; i < len(lines); i++ { + line := lines[i] + trimmed := strings.TrimSpace(line) + + // Skip empty lines and comments + if trimmed == "" || strings.HasPrefix(trimmed, "#") { + continue + } + + // Check if this is the imports: key + if strings.HasPrefix(trimmed, "imports:") { + inImports = true + // Find the base indentation (position of first non-whitespace character) + baseIndent = len(line) - len(strings.TrimLeft(line, " \t")) + continue + } + + if inImports { + // Calculate current line's indentation + lineIndent := len(line) - len(strings.TrimLeft(line, " \t")) + + // If indentation decreased or same level, we're out of the imports array + if lineIndent <= baseIndent && trimmed != "" && !strings.HasPrefix(trimmed, "#") { + break + } + + // Extract array item + if strings.HasPrefix(trimmed, "-") { + item := strings.TrimSpace(trimmed[1:]) + // Remove quotes if present + item = strings.Trim(item, `"'`) + if item != "" { + imports = append(imports, item) + } + } + } + } + + return imports +} + +// processImportsTextBased processes imports from frontmatter using text-based parsing +// Returns: importedFiles (list of import paths), importedFrontmatterTexts (list of frontmatter texts) +func processImportsTextBased(frontmatterText, baseDir string, visited map[string]bool) ([]string, []string, error) { + var importedFiles []string + var importedFrontmatterTexts []string + + // Extract imports from frontmatter text + imports := extractImportsFromText(frontmatterText) + + if len(imports) == 0 { + return importedFiles, importedFrontmatterTexts, nil + } + + // Sort imports for deterministic processing + sortedImports := make([]string, len(imports)) + copy(sortedImports, imports) + sort.Strings(sortedImports) + + for _, importPath := range sortedImports { + // Resolve import path relative to base directory + fullPath := filepath.Join(baseDir, importPath) + + // Skip if already visited (cycle detection) + if visited[fullPath] { + continue + } + visited[fullPath] = true + + // Read imported file + content, err := os.ReadFile(fullPath) + if err != nil { + // Skip missing imports silently (matches JavaScript behavior) + continue + } + + // Extract frontmatter text from imported file + importFrontmatterText, _, err := extractFrontmatterAndBodyText(string(content)) + if err != nil { + // Skip files with invalid frontmatter + continue + } + + // Add to imported files and texts + importedFiles = append(importedFiles, importPath) + importedFrontmatterTexts = append(importedFrontmatterTexts, importFrontmatterText) + + // Recursively process imports in the imported file + importBaseDir := filepath.Dir(fullPath) + nestedFiles, nestedTexts, err := processImportsTextBased(importFrontmatterText, importBaseDir, visited) + if err != nil { + // Continue processing other imports even if one fails + continue + } + + // Add nested imports + importedFiles = append(importedFiles, nestedFiles...) + importedFrontmatterTexts = append(importedFrontmatterTexts, nestedTexts...) + } + + return importedFiles, importedFrontmatterTexts, nil +} + +// computeFrontmatterHashTextBased computes the hash using text-based approach (no YAML parsing) +// This matches the JavaScript implementation +func computeFrontmatterHashTextBased(frontmatterText, markdown, baseDir string, cache *ImportCache, expressions []string) (string, error) { + frontmatterHashLog.Print("Computing frontmatter hash using text-based approach") + + // Process imports using text-based parsing + visited := make(map[string]bool) + importedFiles, importedFrontmatterTexts, err := processImportsTextBased(frontmatterText, baseDir, visited) + if err != nil { + return "", fmt.Errorf("failed to process imports: %w", err) + } + + // Build canonical representation from text + canonical := make(map[string]any) + + // Add the main frontmatter text as-is (trimmed and normalized) + canonical["frontmatter-text"] = normalizeFrontmatterText(frontmatterText) + + // Add sorted imported files list + if len(importedFiles) > 0 { + sortedImports := make([]string, len(importedFiles)) + copy(sortedImports, importedFiles) + sort.Strings(sortedImports) + canonical["imports"] = sortedImports + } + + // Add sorted imported frontmatter texts (concatenated with delimiter) + if len(importedFrontmatterTexts) > 0 { + // Normalize and sort all imported texts + normalizedTexts := make([]string, len(importedFrontmatterTexts)) + for i, text := range importedFrontmatterTexts { + normalizedTexts[i] = normalizeFrontmatterText(text) + } + sort.Strings(normalizedTexts) + canonical["imported-frontmatters"] = strings.Join(normalizedTexts, "\n---\n") + } + + // Add template expressions if present + if len(expressions) > 0 { + canonical["template-expressions"] = expressions + } + + // Add version information + canonical["versions"] = buildVersionInfo() + + // Serialize to canonical JSON + canonicalJSON, err := marshalCanonicalJSON(canonical) + if err != nil { + return "", fmt.Errorf("failed to marshal canonical JSON: %w", err) + } + + frontmatterHashLog.Printf("Canonical JSON length: %d bytes", len(canonicalJSON)) + + // Compute SHA-256 hash + hash := sha256.Sum256([]byte(canonicalJSON)) + hashHex := hex.EncodeToString(hash[:]) + + frontmatterHashLog.Printf("Computed hash: %s", hashHex) + return hashHex, nil +} diff --git a/pkg/parser/frontmatter_hash_consistency_test.go b/pkg/parser/frontmatter_hash_consistency_test.go index bf984b9f33..417992aa77 100644 --- a/pkg/parser/frontmatter_hash_consistency_test.go +++ b/pkg/parser/frontmatter_hash_consistency_test.go @@ -342,7 +342,9 @@ labels: } // TestHashConsistency_KeyOrdering validates that different key ordering -// in frontmatter produces the same hash (canonical ordering). +// in frontmatter produces different hashes (text-based approach). +// With text-based parsing, the hash is based on the literal frontmatter text, +// so reordering keys changes the hash. func TestHashConsistency_KeyOrdering(t *testing.T) { tempDir := t.TempDir() cache := NewImportCache("") @@ -386,7 +388,9 @@ engine: copilot goHash2, err := ComputeFrontmatterHashFromFile(file2, cache) require.NoError(t, err, "Go should compute hash for file2") - assert.Equal(t, goHash1, goHash2, "Go: Different key ordering should produce same hash") + // Text-based approach: Different key ordering produces different text, thus different hashes + // This is expected behavior - the hash is based on the literal frontmatter text + assert.NotEqual(t, goHash1, goHash2, "Go (text-based): Different key ordering produces different hash") // Compute hashes with JavaScript jsHash1, err := computeHashViaNode(file1) @@ -398,34 +402,34 @@ engine: copilot jsHash2, err := computeHashViaNode(file2) require.NoError(t, err, "JS should compute hash for file2") - // JavaScript implementation currently doesn't properly normalize key ordering in frontmatter text - // This is a known limitation of the text-based parsing approach - // For now, just log the results instead of asserting + // JavaScript implementation uses text-based parsing, so key ordering affects hash t.Logf("JS hash for file 1: %s", jsHash1) t.Logf("JS hash for file 2: %s", jsHash2) if jsHash1 == jsHash2 { t.Logf("✓ JS: Different key ordering produces same hash") } else { - t.Logf("⚠ JS: Different key ordering produces different hashes (text-based parsing limitation)") + t.Logf("✓ JS: Different key ordering produces different hashes (expected with text-based parsing)") } - // Cross-language validation - // TODO: Skip for now until JS implementation is updated - if false { // Set to true when JS implementation matches Go - assert.Equal(t, goHash1, jsHash1, "Go and JS should produce same hash") - assert.Equal(t, jsHash1, jsHash2, "JS: Different key ordering should produce same hash") - } + // Cross-language validation: Both Go and JS should match since both use text-based approach + assert.Equal(t, goHash1, jsHash1, "Go and JS should produce same hash for file 1") + assert.Equal(t, goHash2, jsHash2, "Go and JS should produce same hash for file 2") + assert.NotEqual(t, jsHash1, jsHash2, "JS: Different key ordering should produce different hash (text-based)") t.Logf("✓ File 1 - Go: %s, JS: %s", goHash1, jsHash1) t.Logf("✓ File 2 - Go: %s, JS: %s", goHash2, jsHash2) - if goHash1 == goHash2 && goHash2 == jsHash1 && jsHash1 == jsHash2 { - t.Logf("✓ All hashes identical - implementations are consistent!") + + // Check consistency + goMatch := goHash1 != goHash2 // Different orderings should produce different hashes + jsMatch := jsHash1 != jsHash2 // Different orderings should produce different hashes + crossMatch1 := goHash1 == jsHash1 // Same ordering should match across languages + crossMatch2 := goHash2 == jsHash2 // Same ordering should match across languages + + if goMatch && jsMatch && crossMatch1 && crossMatch2 { + t.Logf("✓ All checks pass - text-based implementations are consistent!") } else { - bothGoMatch := goHash1 == goHash2 - bothJSMatch := jsHash1 == jsHash2 - crossMatch := goHash1 == jsHash1 - t.Logf("✓ Go hashes match: %v, JS hashes match: %v, Cross-language match: %v", - bothGoMatch, bothJSMatch, crossMatch) + t.Logf("⚠ Go ordering-dependent: %v, JS ordering-dependent: %v, File 1 cross-match: %v, File 2 cross-match: %v", + goMatch, jsMatch, crossMatch1, crossMatch2) } }