From f9efafc58a92387ac62640f2ee11f08ce7fb03c0 Mon Sep 17 00:00:00 2001 From: konard Date: Tue, 12 May 2026 11:07:04 +0000 Subject: [PATCH 1/3] Initial commit with task details Adding .gitkeep for PR creation (default mode). This file will be removed when the task is complete. Issue: https://github.com/link-foundation/link-cli/issues/77 --- .gitkeep | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitkeep b/.gitkeep index 2a41a33..a52fb79 100644 --- a/.gitkeep +++ b/.gitkeep @@ -1 +1,2 @@ -# .gitkeep file auto-generated at 2026-05-12T09:35:32.242Z for PR creation at branch issue-75-2384a28fe185 for issue https://github.com/link-foundation/link-cli/issues/75 \ No newline at end of file +# .gitkeep file auto-generated at 2026-05-12T09:35:32.242Z for PR creation at branch issue-75-2384a28fe185 for issue https://github.com/link-foundation/link-cli/issues/75 +# Updated: 2026-05-12T11:07:04.345Z \ No newline at end of file From b4b0f02b2e477c9dabbfc48b4f26df90f5b6b0bb Mon Sep 17 00:00:00 2001 From: konard Date: Tue, 12 May 2026 11:56:17 +0000 Subject: [PATCH 2/3] fix: split language package layout --- .github/workflows/csharp.yml | 18 +- .github/workflows/rust.yml | 193 +- .github/workflows/wasm.yml | 12 +- README-WASM.md | 6 +- README.md | 18 +- WEBASSEMBLY_IMPLEMENTATION.md | 6 +- csharp/.changeset/split-csharp-scripts.md | 6 + .../Foundation.Data.Doublets.Cli.csproj | 2 +- csharp/README.md | 41 + {scripts => csharp/scripts}/bump-version.mjs | 6 +- .../scripts}/check-file-size.mjs | 2 +- .../scripts}/create-github-release.mjs | 4 +- .../scripts}/detect-code-changes.mjs | 3 +- .../scripts}/merge-changesets.mjs | 2 +- .../scripts}/release-scripts.test.mjs | 60 +- .../scripts}/validate-changeset.mjs | 2 +- .../scripts/version-and-commit.mjs | 6 +- docs/ARCHITECTURE.md | 8 +- docs/HOW-IT-WORKS.md | 2 +- docs/REQUIREMENTS.md | 2 +- docs/case-studies/issue-77/README.md | 62 + .../evidence/cargo-search-link-cli.txt | 6 + .../issue-77/evidence/crates-link-cli.json | 1 + .../evidence/csharp-25594941803-log.txt | 5756 +++++++++++++++++ .../issue-77/evidence/issue-77-comments.json | 1 + .../issue-77/evidence/issue-77.json | 1 + .../evidence/link-cli-file-tree-after.txt | 351 + .../evidence/link-cli-file-tree-before.txt | 750 +++ .../issue-77/evidence/npm-doublets-web.json | 12 + .../issue-77/evidence/npm-link-cli-web.json | 7 + .../issue-77/evidence/nuget-search-clink.json | 1 + .../evidence/pr-78-conversation-comments.json | 1 + .../evidence/pr-78-review-comments.json | 1 + .../issue-77/evidence/pr-78-reviews.json | 1 + .../case-studies/issue-77/evidence/pr-78.json | 1 + .../evidence/recent-runs-issue-branch.json | 1 + .../issue-77/evidence/recent-runs-main.json | 1 + .../issue-77/evidence/recent-runs-pages.json | 0 .../issue-77/evidence/recent-runs-wasm.json | 1 + .../issue-77/evidence/releases.txt | 11 + .../issue-77/evidence/run-25245349330.json | 1 + .../issue-77/evidence/run-25594941803.json | 1 + .../issue-77/evidence/run-25728494285.json | 1 + .../issue-77/evidence/run-25728494305.json | 1 + .../issue-77/evidence/run-25728494323.json | 1 + .../evidence/template-csharp-file-tree.txt | 31 + .../evidence/template-csharp-release.yml | 485 ++ .../evidence/template-js-file-tree.txt | 184 + .../issue-77/evidence/template-js-links.yml | 84 + .../issue-77/evidence/template-js-release.yml | 617 ++ .../evidence/template-rust-file-tree.txt | 119 + .../evidence/template-rust-release.yml | 657 ++ .../evidence/webassembly-25245349330-log.txt | 1992 ++++++ package.json | 8 +- rust/Cargo.toml | 1 + rust/README.md | 34 + .../20260512_000000_issue_77_layout.md | 6 + rust/scripts/bump-version.rs | 173 + rust/scripts/check-changelog-fragment.rs | 188 + rust/scripts/check-file-size.rs | 293 + rust/scripts/check-release-needed.rs | 395 ++ rust/scripts/check-version-modification.rs | 166 + rust/scripts/collect-changelog.rs | 235 + rust/scripts/create-changelog-fragment.rs | 122 + rust/scripts/create-github-release.rs | 417 ++ rust/scripts/detect-code-changes.rs | 222 + rust/scripts/get-bump-type.rs | 188 + rust/scripts/get-version.rs | 72 + rust/scripts/git-config.rs | 62 + rust/scripts/publish-crate.rs | 195 + rust/scripts/rust-paths.rs | 273 + rust/scripts/version-and-commit.rs | 578 ++ rust/scripts/wait-for-crate.rs | 178 + Cargo.lock => rust/wasm/Cargo.lock | 0 Cargo.toml => rust/wasm/Cargo.toml | 2 +- {src => rust/wasm/src}/lib.rs | 0 .../wasm/tests}/dependabot_alert_tests.rs | 12 +- {tests => rust/wasm/tests}/web.rs | 0 scripts/collect-changelog.mjs | 202 - scripts/get-bump-type.mjs | 157 - scripts/version-and-commit-rust.mjs | 283 - web/test/repositoryLayout.test.mjs | 45 + 82 files changed, 15196 insertions(+), 850 deletions(-) create mode 100644 csharp/.changeset/split-csharp-scripts.md create mode 100644 csharp/README.md rename {scripts => csharp/scripts}/bump-version.mjs (89%) rename {scripts => csharp/scripts}/check-file-size.mjs (98%) rename {scripts => csharp/scripts}/create-github-release.mjs (91%) rename {scripts => csharp/scripts}/detect-code-changes.mjs (99%) rename {scripts => csharp/scripts}/merge-changesets.mjs (98%) rename {scripts => csharp/scripts}/release-scripts.test.mjs (53%) rename {scripts => csharp/scripts}/validate-changeset.mjs (98%) rename scripts/version-and-commit-csharp.mjs => csharp/scripts/version-and-commit.mjs (98%) create mode 100644 docs/case-studies/issue-77/README.md create mode 100644 docs/case-studies/issue-77/evidence/cargo-search-link-cli.txt create mode 100644 docs/case-studies/issue-77/evidence/crates-link-cli.json create mode 100644 docs/case-studies/issue-77/evidence/csharp-25594941803-log.txt create mode 100644 docs/case-studies/issue-77/evidence/issue-77-comments.json create mode 100644 docs/case-studies/issue-77/evidence/issue-77.json create mode 100644 docs/case-studies/issue-77/evidence/link-cli-file-tree-after.txt create mode 100644 docs/case-studies/issue-77/evidence/link-cli-file-tree-before.txt create mode 100644 docs/case-studies/issue-77/evidence/npm-doublets-web.json create mode 100644 docs/case-studies/issue-77/evidence/npm-link-cli-web.json create mode 100644 docs/case-studies/issue-77/evidence/nuget-search-clink.json create mode 100644 docs/case-studies/issue-77/evidence/pr-78-conversation-comments.json create mode 100644 docs/case-studies/issue-77/evidence/pr-78-review-comments.json create mode 100644 docs/case-studies/issue-77/evidence/pr-78-reviews.json create mode 100644 docs/case-studies/issue-77/evidence/pr-78.json create mode 100644 docs/case-studies/issue-77/evidence/recent-runs-issue-branch.json create mode 100644 docs/case-studies/issue-77/evidence/recent-runs-main.json create mode 100644 docs/case-studies/issue-77/evidence/recent-runs-pages.json create mode 100644 docs/case-studies/issue-77/evidence/recent-runs-wasm.json create mode 100644 docs/case-studies/issue-77/evidence/releases.txt create mode 100644 docs/case-studies/issue-77/evidence/run-25245349330.json create mode 100644 docs/case-studies/issue-77/evidence/run-25594941803.json create mode 100644 docs/case-studies/issue-77/evidence/run-25728494285.json create mode 100644 docs/case-studies/issue-77/evidence/run-25728494305.json create mode 100644 docs/case-studies/issue-77/evidence/run-25728494323.json create mode 100644 docs/case-studies/issue-77/evidence/template-csharp-file-tree.txt create mode 100644 docs/case-studies/issue-77/evidence/template-csharp-release.yml create mode 100644 docs/case-studies/issue-77/evidence/template-js-file-tree.txt create mode 100644 docs/case-studies/issue-77/evidence/template-js-links.yml create mode 100644 docs/case-studies/issue-77/evidence/template-js-release.yml create mode 100644 docs/case-studies/issue-77/evidence/template-rust-file-tree.txt create mode 100644 docs/case-studies/issue-77/evidence/template-rust-release.yml create mode 100644 docs/case-studies/issue-77/evidence/webassembly-25245349330-log.txt create mode 100644 rust/README.md create mode 100644 rust/changelog.d/20260512_000000_issue_77_layout.md create mode 100644 rust/scripts/bump-version.rs create mode 100644 rust/scripts/check-changelog-fragment.rs create mode 100644 rust/scripts/check-file-size.rs create mode 100644 rust/scripts/check-release-needed.rs create mode 100644 rust/scripts/check-version-modification.rs create mode 100644 rust/scripts/collect-changelog.rs create mode 100644 rust/scripts/create-changelog-fragment.rs create mode 100644 rust/scripts/create-github-release.rs create mode 100644 rust/scripts/detect-code-changes.rs create mode 100644 rust/scripts/get-bump-type.rs create mode 100644 rust/scripts/get-version.rs create mode 100644 rust/scripts/git-config.rs create mode 100644 rust/scripts/publish-crate.rs create mode 100644 rust/scripts/rust-paths.rs create mode 100644 rust/scripts/version-and-commit.rs create mode 100644 rust/scripts/wait-for-crate.rs rename Cargo.lock => rust/wasm/Cargo.lock (100%) rename Cargo.toml => rust/wasm/Cargo.toml (96%) rename {src => rust/wasm/src}/lib.rs (100%) rename {tests => rust/wasm/tests}/dependabot_alert_tests.rs (50%) rename {tests => rust/wasm/tests}/web.rs (100%) delete mode 100644 scripts/collect-changelog.mjs delete mode 100644 scripts/get-bump-type.mjs delete mode 100644 scripts/version-and-commit-rust.mjs create mode 100644 web/test/repositoryLayout.test.mjs diff --git a/.github/workflows/csharp.yml b/.github/workflows/csharp.yml index 74ca8cc..6643060 100644 --- a/.github/workflows/csharp.yml +++ b/.github/workflows/csharp.yml @@ -6,13 +6,13 @@ on: - main paths: - 'csharp/**' - - 'scripts/**' + - 'csharp/scripts/**' - '.github/workflows/csharp.yml' pull_request: types: [opened, synchronize, reopened] paths: - 'csharp/**' - - 'scripts/**' + - 'csharp/scripts/**' - '.github/workflows/csharp.yml' workflow_dispatch: inputs: @@ -83,7 +83,7 @@ jobs: GITHUB_EVENT_NAME: ${{ github.event_name }} GITHUB_BASE_SHA: ${{ github.event.pull_request.base.sha }} GITHUB_HEAD_SHA: ${{ github.event.pull_request.head.sha }} - run: node scripts/detect-code-changes.mjs + run: node csharp/scripts/detect-code-changes.mjs # === CHANGESET CHECK - only runs on PRs with code changes === changeset-check: @@ -154,7 +154,7 @@ jobs: - name: Run release script tests working-directory: . - run: node --test scripts/*.test.mjs + run: node --test csharp/scripts/*.test.mjs - name: Restore dependencies run: dotnet restore @@ -265,7 +265,7 @@ jobs: working-directory: . run: | echo "Multiple changesets detected, merging..." - node scripts/merge-changesets.mjs \ + node csharp/scripts/merge-changesets.mjs \ --dir csharp/.changeset \ --package-name Foundation.Data.Doublets.Cli @@ -273,7 +273,7 @@ jobs: if: steps.check_changesets.outputs.has_changesets == 'true' id: version working-directory: . - run: node scripts/version-and-commit-csharp.mjs --mode changeset + run: node csharp/scripts/version-and-commit.mjs --mode changeset - name: Build release package if: steps.version.outputs.version_committed == 'true' @@ -312,7 +312,7 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} working-directory: . run: | - node scripts/create-github-release.mjs \ + node csharp/scripts/create-github-release.mjs \ --release-version "${{ steps.version.outputs.new_version }}" \ --repository "${{ github.repository }}" \ --tag-prefix "csharp-v" \ @@ -349,7 +349,7 @@ jobs: id: version working-directory: . run: | - node scripts/version-and-commit-csharp.mjs \ + node csharp/scripts/version-and-commit.mjs \ --mode instant \ --bump-type "${{ github.event.inputs.bump_type }}" \ --description "${{ github.event.inputs.description }}" @@ -391,7 +391,7 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} working-directory: . run: | - node scripts/create-github-release.mjs \ + node csharp/scripts/create-github-release.mjs \ --release-version "${{ steps.version.outputs.new_version }}" \ --repository "${{ github.repository }}" \ --tag-prefix "csharp-v" \ diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 23ed895..b86ccf3 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -6,13 +6,13 @@ on: - main paths: - 'rust/**' - - 'scripts/**' + - 'rust/scripts/**' - '.github/workflows/rust.yml' pull_request: types: [opened, synchronize, reopened] paths: - 'rust/**' - - 'scripts/**' + - 'rust/scripts/**' - '.github/workflows/rust.yml' workflow_dispatch: inputs: @@ -36,10 +36,8 @@ concurrency: env: CARGO_TERM_COLOR: always RUSTFLAGS: -Dwarnings - -defaults: - run: - working-directory: rust + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN || secrets.CARGO_TOKEN }} + CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} jobs: # === DETECT CHANGES - determines which jobs should run === @@ -60,19 +58,19 @@ jobs: with: fetch-depth: 0 - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: '20.x' + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Install rust-script + run: cargo install rust-script - name: Detect changes id: changes - working-directory: . env: GITHUB_EVENT_NAME: ${{ github.event_name }} GITHUB_BASE_SHA: ${{ github.event.pull_request.base.sha }} GITHUB_HEAD_SHA: ${{ github.event.pull_request.head.sha }} - run: node scripts/detect-code-changes.mjs + run: rust-script rust/scripts/detect-code-changes.rs # === CHANGELOG CHECK - only runs on PRs with code changes === changelog: @@ -85,24 +83,17 @@ jobs: with: fetch-depth: 0 - - name: Check for changelog fragments - working-directory: . - run: | - # Get list of fragment files (excluding README and template) - FRAGMENTS=$(find rust/changelog.d -name "*.md" ! -name "README.md" 2>/dev/null | wc -l) - - if [ "$FRAGMENTS" -eq 0 ]; then - echo "::warning::No changelog fragment found. Please add a changelog entry in rust/changelog.d/" - echo "" - echo "To create a changelog fragment:" - echo " Create a new .md file in rust/changelog.d/ with your changes" - echo "" - echo "See rust/changelog.d/README.md for more information." - # Note: This is a warning, not a failure, to allow flexibility - exit 0 - fi + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable - echo "Changelog check passed - found $FRAGMENTS fragment(s)" + - name: Install rust-script + run: cargo install rust-script + + - name: Check for changelog fragments + env: + GITHUB_BASE_REF: ${{ github.base_ref }} + RUST_ROOT: rust + run: rust-script rust/scripts/check-changelog-fragment.rs # === LINT AND FORMAT CHECK === lint: @@ -127,10 +118,8 @@ jobs: with: components: rustfmt, clippy - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: '20.x' + - name: Install rust-script + run: cargo install rust-script - name: Cache cargo registry uses: actions/cache@v4 @@ -144,18 +133,13 @@ jobs: ${{ runner.os }}-cargo- - name: Check formatting - run: cargo fmt --all -- --check + run: cargo fmt --manifest-path rust/Cargo.toml --all -- --check - name: Run Clippy - run: cargo clippy --all-targets --all-features - - - name: Run release script tests - working-directory: . - run: node --test scripts/*.test.mjs + run: cargo clippy --manifest-path rust/Cargo.toml --all-targets --all-features - name: Check file size limit - working-directory: . - run: node scripts/check-file-size.mjs --lang rust + run: rust-script rust/scripts/check-file-size.rs # === TEST === test: @@ -185,10 +169,10 @@ jobs: ${{ runner.os }}-cargo- - name: Run tests - run: cargo test --all-features --verbose + run: cargo test --manifest-path rust/Cargo.toml --all-features --verbose - name: Run doc tests - run: cargo test --doc --verbose + run: cargo test --manifest-path rust/Cargo.toml --doc --verbose # === BUILD === build: @@ -214,10 +198,10 @@ jobs: ${{ runner.os }}-cargo-build- - name: Build release - run: cargo build --release --verbose + run: cargo build --manifest-path rust/Cargo.toml --release --verbose - name: Check package - run: cargo package --list + run: cargo package --manifest-path rust/Cargo.toml --list --allow-dirty # === AUTO RELEASE === auto-release: @@ -236,73 +220,81 @@ jobs: - name: Setup Rust uses: dtolnay/rust-toolchain@stable - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: '20.x' + - name: Install rust-script + run: cargo install rust-script - name: Configure git - run: | - git config user.name "github-actions[bot]" - git config user.email "github-actions[bot]@users.noreply.github.com" + run: rust-script rust/scripts/git-config.rs - name: Determine bump type from changelog fragments id: bump_type - working-directory: . - run: node scripts/get-bump-type.mjs --dir rust/changelog.d + env: + RUST_ROOT: rust + run: rust-script rust/scripts/get-bump-type.rs - name: Check if version already released or no fragments id: check + env: + HAS_FRAGMENTS: ${{ steps.bump_type.outputs.has_fragments }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + RUST_ROOT: rust run: | - # Check if there are changelog fragments - if [ "${{ steps.bump_type.outputs.has_fragments }}" != "true" ]; then - # No fragments - check if current version tag exists - CURRENT_VERSION=$(grep -Po '(?<=^version = ")[^"]*' Cargo.toml) - if git rev-parse "rust-v$CURRENT_VERSION" >/dev/null 2>&1; then - echo "No changelog fragments and rust-v$CURRENT_VERSION already released" - echo "should_release=false" >> $GITHUB_OUTPUT - else - echo "No changelog fragments but rust-v$CURRENT_VERSION not yet released" - echo "should_release=true" >> $GITHUB_OUTPUT - echo "skip_bump=true" >> $GITHUB_OUTPUT - fi - else - echo "Found changelog fragments, proceeding with release" - echo "should_release=true" >> $GITHUB_OUTPUT - echo "skip_bump=false" >> $GITHUB_OUTPUT - fi + rust-script rust/scripts/check-release-needed.rs \ + --tag-prefix rust-v \ + --repository "${{ github.repository }}" - name: Collect changelog and bump version id: version if: steps.check.outputs.should_release == 'true' && steps.check.outputs.skip_bump != 'true' working-directory: . run: | - node scripts/version-and-commit-rust.mjs \ + rust-script rust/scripts/version-and-commit.rs \ + --rust-root rust \ + --tag-prefix rust-v \ --bump-type "${{ steps.bump_type.outputs.bump_type }}" - name: Get current version id: current_version if: steps.check.outputs.should_release == 'true' - run: | - CURRENT_VERSION=$(grep -Po '(?<=^version = ")[^"]*' Cargo.toml) - echo "version=$CURRENT_VERSION" >> $GITHUB_OUTPUT + env: + RUST_ROOT: rust + run: rust-script rust/scripts/get-version.rs - name: Build release if: steps.check.outputs.should_release == 'true' - run: cargo build --release + run: cargo build --manifest-path rust/Cargo.toml --release + + - name: Publish to Crates.io + id: publish_crate + if: steps.check.outputs.should_release == 'true' && steps.check.outputs.crate_published != 'true' + env: + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN || secrets.CARGO_TOKEN }} + CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} + RUST_ROOT: rust + run: rust-script rust/scripts/publish-crate.rs + + - name: Wait for Crate availability on Crates.io + if: steps.check.outputs.should_release == 'true' + env: + RUST_ROOT: rust + run: rust-script rust/scripts/wait-for-crate.rs --release-version "${{ steps.current_version.outputs.version }}" - name: Create GitHub Release if: steps.check.outputs.should_release == 'true' env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - working-directory: . run: | - node scripts/create-github-release.mjs \ - --release-version "${{ steps.current_version.outputs.version }}" \ + RELEASE_VERSION="${{ steps.version.outputs.new_version }}" + if [ -z "$RELEASE_VERSION" ]; then + RELEASE_VERSION="${{ steps.current_version.outputs.version }}" + fi + + rust-script rust/scripts/create-github-release.rs \ + --rust-root rust \ + --release-version "$RELEASE_VERSION" \ --repository "${{ github.repository }}" \ --tag-prefix "rust-v" \ - --language "Rust" \ - --changelog-path "rust/CHANGELOG.md" + --language "Rust" # === MANUAL RELEASE === manual-release: @@ -321,37 +313,48 @@ jobs: - name: Setup Rust uses: dtolnay/rust-toolchain@stable - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: '20.x' + - name: Install rust-script + run: cargo install rust-script - name: Configure git - run: | - git config user.name "github-actions[bot]" - git config user.email "github-actions[bot]@users.noreply.github.com" + run: rust-script rust/scripts/git-config.rs - name: Version and commit id: version - working-directory: . run: | - node scripts/version-and-commit-rust.mjs \ + rust-script rust/scripts/version-and-commit.rs \ + --rust-root rust \ + --tag-prefix rust-v \ --bump-type "${{ github.event.inputs.bump_type }}" \ --description "${{ github.event.inputs.description }}" - name: Build release if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' - run: cargo build --release + run: cargo build --manifest-path rust/Cargo.toml --release + + - name: Publish to Crates.io + id: publish_crate + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + env: + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN || secrets.CARGO_TOKEN }} + CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} + RUST_ROOT: rust + run: rust-script rust/scripts/publish-crate.rs + + - name: Wait for Crate availability on Crates.io + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + env: + RUST_ROOT: rust + run: rust-script rust/scripts/wait-for-crate.rs --release-version "${{ steps.version.outputs.new_version }}" - name: Create GitHub Release if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - working-directory: . run: | - node scripts/create-github-release.mjs \ + rust-script rust/scripts/create-github-release.rs \ + --rust-root rust \ --release-version "${{ steps.version.outputs.new_version }}" \ --repository "${{ github.repository }}" \ --tag-prefix "rust-v" \ - --language "Rust" \ - --changelog-path "rust/CHANGELOG.md" + --language "Rust" diff --git a/.github/workflows/wasm.yml b/.github/workflows/wasm.yml index 0efe209..bc0b2a5 100644 --- a/.github/workflows/wasm.yml +++ b/.github/workflows/wasm.yml @@ -7,26 +7,18 @@ on: - issue-* paths: - '.github/workflows/wasm.yml' - - 'Cargo.lock' - - 'Cargo.toml' - 'package-lock.json' - 'package.json' - 'rust/**' - - 'src/**' - - 'tests/**' - 'web/**' pull_request: branches: - main paths: - '.github/workflows/wasm.yml' - - 'Cargo.lock' - - 'Cargo.toml' - 'package-lock.json' - 'package.json' - 'rust/**' - - 'src/**' - - 'tests/**' - 'web/**' workflow_dispatch: inputs: @@ -71,9 +63,9 @@ jobs: path: | ~/.cargo/registry ~/.cargo/git - target rust/target - key: ${{ runner.os }}-wasm-cargo-${{ hashFiles('Cargo.lock', 'rust/Cargo.lock') }} + rust/wasm/target + key: ${{ runner.os }}-wasm-cargo-${{ hashFiles('rust/wasm/Cargo.lock', 'rust/Cargo.lock') }} restore-keys: | ${{ runner.os }}-wasm-cargo- diff --git a/README-WASM.md b/README-WASM.md index 5caf65e..de23912 100644 --- a/README-WASM.md +++ b/README-WASM.md @@ -2,8 +2,8 @@ The browser workbench combines three runtimes: -- Rust `link-cli` core compiled to WebAssembly through the root `clink-wasm` - crate. +- Rust `link-cli` core compiled to WebAssembly through the `rust/wasm` + `clink-wasm` crate. - React and Vite for the single-page browser interface in `web/`. - `doublets-web` for a live WebAssembly `UnitedLinks` mirror built from the current query result. The committed lockfile currently pins `0.1.2`. @@ -81,7 +81,7 @@ Supported options are `before`, `changes`, `after`, `trace`, ```bash cargo test --manifest-path rust/Cargo.toml --all-features -cargo test --lib +cargo test --manifest-path rust/wasm/Cargo.toml --lib npm run test:wasm npm run build ``` diff --git a/README.md b/README.md index 3f3aa64..a33a5e9 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,20 @@ # link-cli + +[![C# CI/CD Pipeline](https://github.com/link-foundation/link-cli/actions/workflows/csharp.yml/badge.svg)](https://github.com/link-foundation/link-cli/actions/workflows/csharp.yml) +[![Rust CI/CD Pipeline](https://github.com/link-foundation/link-cli/actions/workflows/rust.yml/badge.svg)](https://github.com/link-foundation/link-cli/actions/workflows/rust.yml) +[![WebAssembly CI](https://github.com/link-foundation/link-cli/actions/workflows/wasm.yml/badge.svg)](https://github.com/link-foundation/link-cli/actions/workflows/wasm.yml) +[![NuGet](https://img.shields.io/nuget/v/clink?logo=nuget&label=NuGet)](https://www.nuget.org/packages/clink) +[![Crates.io](https://img.shields.io/crates/v/link-cli?logo=rust&label=Crates.io)](https://crates.io/crates/link-cli) +[![C# Release](https://img.shields.io/github/v/release/link-foundation/link-cli?filter=csharp-v*&label=C%23%20release)](https://github.com/link-foundation/link-cli/releases) +[![Rust Release](https://img.shields.io/github/v/release/link-foundation/link-cli?filter=rust-v*&label=Rust%20release)](https://github.com/link-foundation/link-cli/releases) + `clink` (`CLInk` `cLINK`), a CLI tool to manipulate links using single substitution operation. It is based on [associative theory](https://habr.com/ru/articles/895896) (also in [ru](https://habr.com/ru/articles/804617)) and [Links Notation](https://github.com/linksplatform/Protocols.Lino) (also in [ru](https://github.com/linksplatform/Protocols.Lino/blob/main/README.ru.md)) -It uses C# implementation of [a links data store](https://github.com/linksplatform?view_as=public) (see also in [ru](https://github.com/linksplatform/.github/blob/main/profile/README.ru.md)). +It includes a production C# CLI package, a Rust CLI/library package, and a +Rust-powered WebAssembly browser workbench built on [links data store](https://github.com/linksplatform?view_as=public) +concepts (see also in [ru](https://github.com/linksplatform/.github/blob/main/profile/README.ru.md)). ## WebAssembly Browser Workbench @@ -25,6 +36,11 @@ package built from `doublets-rs`. ## Installation +Language package documentation: + +- [C# NuGet tool](csharp/README.md) +- [Rust crate](rust/README.md) + This CLI tool can be installed globally as `clink` using single command (that will work if you have [.NET](https://dotnet.microsoft.com/en-us/download) installed): ```bash diff --git a/WEBASSEMBLY_IMPLEMENTATION.md b/WEBASSEMBLY_IMPLEMENTATION.md index 58a15d7..757c39b 100644 --- a/WEBASSEMBLY_IMPLEMENTATION.md +++ b/WEBASSEMBLY_IMPLEMENTATION.md @@ -9,7 +9,7 @@ React single-page app for GitHub Pages. ```text rust/ Native Rust link-cli library and clink binary -src/lib.rs wasm-bindgen wrapper around the Rust query processor +rust/wasm/ wasm-bindgen wrapper around the Rust query processor web/src/ React workbench web/pkg/ Generated Rust WASM package, ignored by git dist/ Generated GitHub Pages artifact, ignored by git @@ -39,7 +39,7 @@ now delegates query semantics to that shared Rust core. 1. Installs stable Rust with the `wasm32-unknown-unknown` target. 2. Installs npm dependencies with `npm ci`. 3. Runs the Rust CLI core tests. -4. Runs `wasm-pack test --node` for the wrapper. +4. Runs `wasm-pack test rust/wasm --node` for the wrapper. 5. Builds the React app. 6. Deploys `dist/` to GitHub Pages on pushes to `main`. @@ -54,7 +54,7 @@ The workflow uses current Pages and artifact actions: ```bash cargo test --manifest-path rust/Cargo.toml --all-features -cargo test --lib +cargo test --manifest-path rust/wasm/Cargo.toml --lib npm run test:wasm npm run build npm run dev diff --git a/csharp/.changeset/split-csharp-scripts.md b/csharp/.changeset/split-csharp-scripts.md new file mode 100644 index 0000000..11e0518 --- /dev/null +++ b/csharp/.changeset/split-csharp-scripts.md @@ -0,0 +1,6 @@ +--- +'Foundation.Data.Doublets.Cli': patch +--- + +Moved C# release automation into `csharp/scripts/` and packaged the C# README +with the NuGet tool. diff --git a/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj b/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj index c891d91..7b63ead 100644 --- a/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj +++ b/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj @@ -29,6 +29,6 @@ - + diff --git a/csharp/README.md b/csharp/README.md new file mode 100644 index 0000000..6d14bf0 --- /dev/null +++ b/csharp/README.md @@ -0,0 +1,41 @@ +# clink C# Package + +[![C# CI/CD Pipeline](https://github.com/link-foundation/link-cli/actions/workflows/csharp.yml/badge.svg)](https://github.com/link-foundation/link-cli/actions/workflows/csharp.yml) +[![NuGet](https://img.shields.io/nuget/v/clink?logo=nuget&label=NuGet)](https://www.nuget.org/packages/clink) +[![GitHub Release](https://img.shields.io/github/v/release/link-foundation/link-cli?filter=csharp-v*&label=C%23%20release)](https://github.com/link-foundation/link-cli/releases) + +This directory contains the production .NET CLI implementation published as +the NuGet tool package `clink`. + +## Install + +```bash +dotnet tool install --global clink +``` + +Update an existing installation: + +```bash +dotnet tool update --global clink +``` + +## Use + +```bash +clink '() ((1 1))' --changes --after +``` + +The C# package exposes the complete command surface, including persistent +transformation triggers with `--always`, `--once`, `--never`, `--triggers`, +`--triggers-file`, and `--embed-triggers`. + +## Develop + +```bash +dotnet restore +dotnet build --configuration Release +dotnet test --configuration Release +``` + +Release automation for this package lives in `csharp/scripts/` and uses +changesets from `csharp/.changeset/`. diff --git a/scripts/bump-version.mjs b/csharp/scripts/bump-version.mjs similarity index 89% rename from scripts/bump-version.mjs rename to csharp/scripts/bump-version.mjs index 8a983af..cfece01 100644 --- a/scripts/bump-version.mjs +++ b/csharp/scripts/bump-version.mjs @@ -2,7 +2,7 @@ /** * Bump version in csproj file - * Usage: bun run scripts/bump-version.mjs --bump-type [--dry-run] + * Usage: node csharp/scripts/bump-version.mjs --bump-type [--dry-run] */ import { readFileSync, writeFileSync } from 'fs'; @@ -21,12 +21,12 @@ const dryRun = hasFlag('dry-run'); if (!bumpType || !['major', 'minor', 'patch'].includes(bumpType)) { console.error( - 'Usage: bun run scripts/bump-version.mjs --bump-type [--dry-run]' + 'Usage: node csharp/scripts/bump-version.mjs --bump-type [--dry-run]' ); process.exit(1); } -const CSPROJ_PATH = 'src/MyPackage/MyPackage.csproj'; +const CSPROJ_PATH = 'csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj'; /** * Get current version from csproj diff --git a/scripts/check-file-size.mjs b/csharp/scripts/check-file-size.mjs similarity index 98% rename from scripts/check-file-size.mjs rename to csharp/scripts/check-file-size.mjs index 595ac14..3e07ecf 100644 --- a/scripts/check-file-size.mjs +++ b/csharp/scripts/check-file-size.mjs @@ -5,7 +5,7 @@ * Exits with error code 1 if any files exceed the limit * * Usage: - * node scripts/check-file-size.mjs [--lang csharp|rust|all] [--dir path] + * node csharp/scripts/check-file-size.mjs [--lang csharp|rust|all] [--dir path] * * Options: * --lang Language to check: csharp, rust, or all (default: all) diff --git a/scripts/create-github-release.mjs b/csharp/scripts/create-github-release.mjs similarity index 91% rename from scripts/create-github-release.mjs rename to csharp/scripts/create-github-release.mjs index 4989fa2..9014098 100644 --- a/scripts/create-github-release.mjs +++ b/csharp/scripts/create-github-release.mjs @@ -3,7 +3,7 @@ /** * Create GitHub Release from CHANGELOG.md * Usage: - * node scripts/create-github-release.mjs --release-version --repository [--tag-prefix v] [--changelog-path CHANGELOG.md] + * node csharp/scripts/create-github-release.mjs --release-version --repository [--tag-prefix v] [--changelog-path CHANGELOG.md] */ import { readFileSync, existsSync } from 'fs'; @@ -28,7 +28,7 @@ const dryRun = args.includes('--dry-run'); if (!version || !repository) { console.error('Error: Missing required arguments'); console.error( - 'Usage: node scripts/create-github-release.mjs --release-version --repository ' + 'Usage: node csharp/scripts/create-github-release.mjs --release-version --repository ' ); process.exit(1); } diff --git a/scripts/detect-code-changes.mjs b/csharp/scripts/detect-code-changes.mjs similarity index 99% rename from scripts/detect-code-changes.mjs rename to csharp/scripts/detect-code-changes.mjs index 876b8fa..3f0ca0f 100644 --- a/scripts/detect-code-changes.mjs +++ b/csharp/scripts/detect-code-changes.mjs @@ -20,8 +20,7 @@ * - examples/ folder (example scripts) * * Usage: - * bun run scripts/detect-code-changes.mjs - * node scripts/detect-code-changes.mjs + * node csharp/scripts/detect-code-changes.mjs * * Environment variables (set by GitHub Actions): * - GITHUB_EVENT_NAME: 'pull_request' or 'push' diff --git a/scripts/merge-changesets.mjs b/csharp/scripts/merge-changesets.mjs similarity index 98% rename from scripts/merge-changesets.mjs rename to csharp/scripts/merge-changesets.mjs index 360573b..65e422b 100644 --- a/scripts/merge-changesets.mjs +++ b/csharp/scripts/merge-changesets.mjs @@ -14,7 +14,7 @@ * even when multiple PRs have merged before a release cycle. * * Usage: - * node scripts/merge-changesets.mjs --dir csharp/.changeset --package-name Foundation.Data.Doublets.Cli + * node csharp/scripts/merge-changesets.mjs --dir csharp/.changeset --package-name Foundation.Data.Doublets.Cli */ import { diff --git a/scripts/release-scripts.test.mjs b/csharp/scripts/release-scripts.test.mjs similarity index 53% rename from scripts/release-scripts.test.mjs rename to csharp/scripts/release-scripts.test.mjs index 55afda4..d6f9ad1 100644 --- a/scripts/release-scripts.test.mjs +++ b/csharp/scripts/release-scripts.test.mjs @@ -1,7 +1,6 @@ import assert from 'node:assert/strict'; import { execFileSync } from 'node:child_process'; import { - existsSync, mkdirSync, mkdtempSync, readFileSync, @@ -12,7 +11,7 @@ import { join } from 'node:path'; import { tmpdir } from 'node:os'; import test from 'node:test'; -const repoRoot = new URL('..', import.meta.url).pathname; +const repoRoot = new URL('../..', import.meta.url).pathname; function runNode(script, args, options = {}) { return execFileSync(process.execPath, [join(repoRoot, script), ...args], { @@ -22,31 +21,6 @@ function runNode(script, args, options = {}) { }); } -test('get-bump-type reads fragments from the requested directory', () => { - const dir = mkdtempSync(join(tmpdir(), 'link-cli-bump-')); - const changelogDir = join(dir, 'rust', 'changelog.d'); - mkdirSync(changelogDir, { recursive: true }); - const outputFile = join(dir, 'outputs.txt'); - - writeFileSync( - join(changelogDir, 'minor.md'), - '---\nbump: minor\n---\n\nAdd a release improvement.\n' - ); - writeFileSync( - join(changelogDir, 'patch.md'), - '---\nbump: patch\n---\n\nFix release metadata.\n' - ); - - const stdout = runNode('scripts/get-bump-type.mjs', ['--dir', changelogDir], { - env: { GITHUB_OUTPUT: outputFile }, - }); - - assert.match(stdout, /Determined bump type: minor/); - const outputs = readFileSync(outputFile, 'utf8'); - assert.match(outputs, /^bump_type=minor$/m); - assert.match(outputs, /^has_fragments=true$/m); -}); - test('merge-changesets honors the requested directory and package name', () => { const dir = mkdtempSync(join(tmpdir(), 'link-cli-changesets-')); const changesetDir = join(dir, 'csharp', '.changeset'); @@ -61,7 +35,7 @@ test('merge-changesets honors the requested directory and package name', () => { "---\n'Foundation.Data.Doublets.Cli': minor\n---\n\nSecond fix.\n" ); - runNode('scripts/merge-changesets.mjs', [ + runNode('csharp/scripts/merge-changesets.mjs', [ '--dir', changesetDir, '--package-name', @@ -84,7 +58,7 @@ test('create-github-release dry run uses tag prefix and component changelog', () '# Changelog\n\n## [2.4.0] - 2026-05-12\n\nFixed release automation.\n\n## [2.3.0] - 2026-05-01\n\nPrevious release.\n' ); - const stdout = runNode('scripts/create-github-release.mjs', [ + const stdout = runNode('csharp/scripts/create-github-release.mjs', [ '--release-version', '2.4.0', '--repository', @@ -106,31 +80,3 @@ test('create-github-release dry run uses tag prefix and component changelog', () assert.match(payload.body, /Fixed release automation\./); assert.match(payload.body, /Package: `clink`/); }); - -test('collect-changelog honors component paths from the repository root', () => { - const dir = mkdtempSync(join(tmpdir(), 'link-cli-collect-')); - const rustDir = join(dir, 'rust'); - const changelogDir = join(rustDir, 'changelog.d'); - mkdirSync(changelogDir, { recursive: true }); - - writeFileSync(join(rustDir, 'Cargo.toml'), 'version = "2.4.0"\n'); - writeFileSync( - join(rustDir, 'CHANGELOG.md'), - '# Changelog\n\n## [2.3.0] - 2026-05-01\n\nPrevious release.\n' - ); - writeFileSync( - join(changelogDir, 'entry.md'), - '---\nbump: minor\n---\n\nCollected component changelog.\n' - ); - - runNode( - 'scripts/collect-changelog.mjs', - ['--dir', 'rust/changelog.d', '--output', 'rust/CHANGELOG.md'], - { cwd: dir } - ); - - const changelog = readFileSync(join(rustDir, 'CHANGELOG.md'), 'utf8'); - assert.match(changelog, /## \[2\.4\.0\] - \d{4}-\d{2}-\d{2}/); - assert.match(changelog, /Collected component changelog\./); - assert.equal(existsSync(join(changelogDir, 'entry.md')), false); -}); diff --git a/scripts/validate-changeset.mjs b/csharp/scripts/validate-changeset.mjs similarity index 98% rename from scripts/validate-changeset.mjs rename to csharp/scripts/validate-changeset.mjs index 9ccc3af..cbf2fd4 100644 --- a/scripts/validate-changeset.mjs +++ b/csharp/scripts/validate-changeset.mjs @@ -10,7 +10,7 @@ * - Falls back to checking all changesets for local development * * Usage: - * node scripts/validate-changeset.mjs --dir csharp/.changeset --package-name Foundation.Data.Doublets.Cli + * node csharp/scripts/validate-changeset.mjs --dir csharp/.changeset --package-name Foundation.Data.Doublets.Cli */ import { execSync } from 'child_process'; diff --git a/scripts/version-and-commit-csharp.mjs b/csharp/scripts/version-and-commit.mjs similarity index 98% rename from scripts/version-and-commit-csharp.mjs rename to csharp/scripts/version-and-commit.mjs index 57fcecb..3aaee35 100644 --- a/scripts/version-and-commit-csharp.mjs +++ b/csharp/scripts/version-and-commit.mjs @@ -5,8 +5,8 @@ * Used by the CI/CD pipeline for C# releases * * Usage: - * Changeset mode: node scripts/version-and-commit-csharp.mjs --mode changeset - * Instant mode: node scripts/version-and-commit-csharp.mjs --mode instant --bump-type [--description ] + * Changeset mode: node csharp/scripts/version-and-commit.mjs --mode changeset + * Instant mode: node csharp/scripts/version-and-commit.mjs --mode instant --bump-type [--description ] */ import { @@ -335,7 +335,7 @@ try { // Instant mode: use provided bump type if (!bumpTypeArg || !['major', 'minor', 'patch'].includes(bumpTypeArg)) { console.error( - 'Usage: node scripts/version-and-commit-csharp.mjs --mode instant --bump-type [--description ]' + 'Usage: node csharp/scripts/version-and-commit.mjs --mode instant --bump-type [--description ]' ); process.exit(1); } diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 3a5c121..daf9394 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -18,10 +18,11 @@ links database. | `docs/` | Requirements, architecture notes, behavior notes, screenshots, and case studies. | | `csharp/` | Production .NET CLI package published as the `clink` tool. | | `rust/` | Rust library and native `clink` binary that mirror core C# behavior. | -| `src/lib.rs` | `wasm-bindgen` wrapper around the Rust query processor. | +| `csharp/scripts/` | C# release, changeset, and repository validation helpers. | +| `rust/scripts/` | Rust release, changelog, crate publication, and repository validation helpers. | +| `rust/wasm/` | `wasm-bindgen` wrapper crate around the Rust query processor. | | `web/` | React/Vite browser workbench. | | `.github/workflows/` | Split C#, Rust, and WebAssembly CI workflows. | -| `scripts/` | Release, changelog, changeset, and repository validation helpers. | ## C# Implementation @@ -81,7 +82,7 @@ The browser workbench is a wrapper around the Rust query processor. Key files: -- `src/lib.rs`: exports `Clink` with `execute`, `snapshot`, `reset`, `version`, +- `rust/wasm/src/lib.rs`: exports `Clink` with `execute`, `snapshot`, `reset`, `version`, and `rustCoreVersion`. - `web/src/App.jsx`: React application, query editor, graph view, and runtime status. @@ -152,6 +153,7 @@ own. ## External References - NuGet `clink`: https://www.nuget.org/packages/clink +- crates.io `link-cli`: https://crates.io/crates/link-cli - Rust `doublets`: https://docs.rs/doublets/latest/doublets/ - Rust `links-notation`: https://docs.rs/crate/links-notation/0.13.0 - npm `doublets-web`: https://www.npmjs.com/package/doublets-web diff --git a/docs/HOW-IT-WORKS.md b/docs/HOW-IT-WORKS.md index 0bf1bfd..1d5a26d 100644 --- a/docs/HOW-IT-WORKS.md +++ b/docs/HOW-IT-WORKS.md @@ -175,7 +175,7 @@ The trigger schema is link-backed, using named points such as `Always`, `Once`, The WebAssembly workbench uses the Rust query processor in the browser. -1. The root `clink-wasm` crate compiles with `wasm-pack`. +1. The `rust/wasm` `clink-wasm` crate compiles with `wasm-pack`. 2. `Clink#execute(query, optionsJson)` parses JSON options. 3. Browser storage keeps links and names in memory for the page session. 4. The Rust query processor applies the LiNo query. diff --git a/docs/REQUIREMENTS.md b/docs/REQUIREMENTS.md index 310409c..5afba63 100644 --- a/docs/REQUIREMENTS.md +++ b/docs/REQUIREMENTS.md @@ -43,7 +43,7 @@ the core CLI behavior and is also used by the WebAssembly browser workbench. | Import a database from LiNo. | #25, #43 | `--in`, `--import`, and `--lino-input` read a LiNo file before query execution. | | Format a link structure. | #19, #48 | `--structure` recursively formats the left branch with indexes preserved. | | Store persistent transformations. | #3, #55 | C# supports `--always`, `--once`, `--never`, `--triggers`, `--triggers-file`, and `--embed-triggers`. | -| Separate code by implementation language. | #63, #64 | C# code lives under `csharp/`; Rust code lives under `rust/`; WebAssembly wrapper code lives at the repository root plus `web/`. | +| Separate code by implementation language. | #63, #64, #77 | C# code and release helpers live under `csharp/`; Rust code, release helpers, and the WebAssembly wrapper crate live under `rust/`; the browser app lives under `web/`. | | Provide Rust parity for core behavior. | #63, #67, #68 | Rust mirrors query processing, names, import/export, structure formatting, and Unicode sequence support. | | Run in a browser. | #12, #52, #69, #70 | The Rust query processor is wrapped with `wasm-bindgen` and surfaced through a React/Vite workbench. | | Keep CI split by surface area. | #63, #69 | Separate C#, Rust, and WebAssembly workflows run relevant checks. | diff --git a/docs/case-studies/issue-77/README.md b/docs/case-studies/issue-77/README.md new file mode 100644 index 0000000..4e4fa5b --- /dev/null +++ b/docs/case-studies/issue-77/README.md @@ -0,0 +1,62 @@ +# Issue 77 Case Study + +Issue: + +PR: + +## Problem + +The repository still had shared root-level release scripts and a root-level +WebAssembly Rust crate. That made package ownership ambiguous: + +- C# and Rust release helpers were mixed under `scripts/`. +- The WebAssembly wrapper crate lived at `Cargo.toml`, `src/`, and `tests/` in + the repository root instead of under a language package tree. +- Package READMEs and registry/release badges were not split by language. +- Older CI history included a GitHub Pages deploy failure and a C# release + failure, so the current workflow state needed to be verified before changing + the layout. + +## Evidence + +Captured evidence is stored in `evidence/`. + +- `issue-77.json`, `issue-77-comments.json`, and PR 78 comment/review exports + preserve the GitHub discussion state. +- `template-*-file-tree.txt` and `template-*-release.yml` preserve the C#, + Rust, and JS template comparisons used for the split. +- `recent-runs-*.json` and `run-*.json` preserve CI state. The issue branch had + no runs at the start of the investigation. The latest main C#, Rust, and + WebAssembly runs from 2026-05-12 were successful. +- `webassembly-25245349330-log.txt` preserves the stale Pages deploy failure. It + failed in `actions/configure-pages@v5` because Pages was not configured for + GitHub Actions deployment at that time. +- `csharp-25594941803-log.txt` preserves the stale C# failure. It included Windows + test failures and a missing `.changeset` release error. +- `link-cli-file-tree-before.txt` and `link-cli-file-tree-after.txt` show the + layout before and after the fix. + +## Fix + +- Moved the WebAssembly wrapper crate to `rust/wasm/`, including its + `Cargo.toml`, `Cargo.lock`, `src/`, and `tests/`. +- Moved C# release helpers to `csharp/scripts/`. +- Replaced Rust release helpers with Rust `rust-script` scripts under + `rust/scripts/`, including crates.io release checks and publication helpers. +- Updated C#, Rust, and WebAssembly workflows to use the new paths. +- Added `csharp/README.md` and `rust/README.md` with package badges and install + instructions. +- Updated the root README and architecture docs with workflow, NuGet, crates.io, + and GitHub release badges. +- Kept WebAssembly Pages deployment manual-only on `main` with the existing + `workflow_dispatch` and `deploy_pages` gate, so normal branch CI no longer + attempts Pages deployment. + +## Regression Test + +`web/test/repositoryLayout.test.mjs` reproduces the original layout problem by +asserting that root `Cargo.toml`, `Cargo.lock`, `scripts/`, `src/`, and `tests/` +do not exist, while `csharp/scripts/`, `rust/scripts/`, and `rust/wasm/` do. + +The test failed before the layout move because root `Cargo.toml` and the old +WASM package scripts still existed. diff --git a/docs/case-studies/issue-77/evidence/cargo-search-link-cli.txt b/docs/case-studies/issue-77/evidence/cargo-search-link-cli.txt new file mode 100644 index 0000000..e50113e --- /dev/null +++ b/docs/case-studies/issue-77/evidence/cargo-search-link-cli.txt @@ -0,0 +1,6 @@ +network-isomorphism-solver = "0.2.0" # Network isomorphism solver using Links Theory - determines if two networks are structur… +blink-cli = "0.0.1" # The minimal, blazing-fast file sharing cli tool. +canlink-cli = "0.3.3" # Command-line interface for CAN hardware abstraction layer +chainlink_client = "0.0.1" # This crate is reserved for the Chainlink project +cufflink-cli = "0.11.5" # CLI for the Cufflink CRUD microservice platform — deploy, init, and manage services +... and 5 crates more (use --limit N to see more) diff --git a/docs/case-studies/issue-77/evidence/crates-link-cli.json b/docs/case-studies/issue-77/evidence/crates-link-cli.json new file mode 100644 index 0000000..d04e9ea --- /dev/null +++ b/docs/case-studies/issue-77/evidence/crates-link-cli.json @@ -0,0 +1 @@ +{"errors":[{"detail":"crate `link-cli` does not exist"}]} \ No newline at end of file diff --git a/docs/case-studies/issue-77/evidence/csharp-25594941803-log.txt b/docs/case-studies/issue-77/evidence/csharp-25594941803-log.txt new file mode 100644 index 0000000..f32c133 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/csharp-25594941803-log.txt @@ -0,0 +1,5756 @@ +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1199251Z Current runner version: '2.334.0' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1233236Z ##[group]Runner Image Provisioner +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1234447Z Hosted Compute Agent +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1235327Z Version: 20260213.493 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1236413Z Commit: 5c115507f6dd24b8de37d8bbe0bb4509d0cc0fa3 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1237657Z Build Date: 2026-02-13T00:28:41Z +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1238774Z Worker ID: {fc8f5481-a3e5-4f48-a514-e2665b72a00f} +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1240139Z Azure Region: eastus2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1241096Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1243441Z ##[group]Operating System +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1244574Z Ubuntu +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1245453Z 24.04.4 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1246365Z LTS +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1247190Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1248098Z ##[group]Runner Image +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1249015Z Image: ubuntu-24.04 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1249931Z Version: 20260413.86.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1252338Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260413.86/images/ubuntu/Ubuntu2404-Readme.md +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1255110Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260413.86 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1256728Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1261814Z ##[group]GITHUB_TOKEN Permissions +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1265123Z Actions: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1266031Z ArtifactMetadata: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1267057Z Attestations: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1267866Z Checks: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1268763Z Contents: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1269905Z Deployments: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1270947Z Discussions: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1271798Z Issues: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1273086Z Metadata: read +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1273845Z Models: read +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1274621Z Packages: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1275419Z Pages: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1276430Z PullRequests: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1277443Z RepositoryProjects: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1278385Z SecurityEvents: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1279241Z Statuses: write +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1280058Z VulnerabilityAlerts: read +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1281118Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1284248Z Secret source: Actions +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1285293Z Prepare workflow directory +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1868172Z Prepare all required actions +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.1923034Z Getting action download info +Detect Changes UNKNOWN STEP 2026-05-09T07:08:20.4747540Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.0114493Z Download action repository 'actions/setup-node@v4' (SHA:49933ea5288caeca8642d1e84afbd3f7d6820020) +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.2541051Z Complete job name: Detect Changes +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3271600Z ##[group]Run actions/checkout@v4 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3272815Z with: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3273350Z fetch-depth: 0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3273843Z repository: link-foundation/link-cli +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3274587Z token: *** +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3275013Z ssh-strict: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3275464Z ssh-user: git +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3275912Z persist-credentials: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3276411Z clean: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3276873Z sparse-checkout-cone-mode: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3277390Z fetch-tags: false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3277832Z show-progress: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3278284Z lfs: false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3278699Z submodules: false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3279137Z set-safe-directory: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3279829Z env: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3280278Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3280869Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3281398Z DOTNET_NOLOGO: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.3281838Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4379443Z Syncing repository: link-foundation/link-cli +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4381295Z ##[group]Getting Git version info +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4382370Z Working directory is '/home/runner/work/link-cli/link-cli' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4383472Z [command]/usr/bin/git version +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4916714Z git version 2.53.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4942999Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4958617Z Temporarily overriding HOME='/home/runner/work/_temp/79da1893-b064-4e65-b905-52b18a60bca8' before making global git config changes +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4960589Z Adding repository directory to the temporary git global config as a safe directory +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4964137Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4995893Z Deleting the contents of '/home/runner/work/link-cli/link-cli' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.4999517Z ##[group]Initializing the repository +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5003840Z [command]/usr/bin/git init /home/runner/work/link-cli/link-cli +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5253660Z hint: Using 'master' as the name for the initial branch. This default branch name +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5255431Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5256460Z hint: to use in all of your new repositories, which will suppress this warning, +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5257230Z hint: call: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5257661Z hint: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5258236Z hint: git config --global init.defaultBranch +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5258918Z hint: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5259724Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5260767Z hint: 'development'. The just-created branch can be renamed via this command: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5261555Z hint: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5262276Z hint: git branch -m +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5263120Z hint: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5263987Z hint: Disable this message with "git config set advice.defaultBranchName false" +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5265195Z Initialized empty Git repository in /home/runner/work/link-cli/link-cli/.git/ +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5267978Z [command]/usr/bin/git remote add origin https://github.com/link-foundation/link-cli +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5296830Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5297791Z ##[group]Disabling automatic garbage collection +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5300577Z [command]/usr/bin/git config --local gc.auto 0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5328394Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5329140Z ##[group]Setting up auth +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5335610Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.5364678Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.7566767Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.7598875Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.7827324Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.7859668Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.8095726Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.8129342Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.8130401Z ##[group]Fetching the repository +Detect Changes UNKNOWN STEP 2026-05-09T07:08:21.8138805Z [command]/usr/bin/git -c protocol.version=2 fetch --prune --no-recurse-submodules origin +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/tags/* +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2668239Z From https://github.com/link-foundation/link-cli +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2673312Z * [new branch] claude/code-review-and-issues-01WwM3yFJiaRwTrhABNoUkYa -> origin/claude/code-review-and-issues-01WwM3yFJiaRwTrhABNoUkYa +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2678316Z * [new branch] issue-11-36571c97 -> origin/issue-11-36571c97 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2680326Z * [new branch] issue-12-fc4292e4 -> origin/issue-12-fc4292e4 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2682448Z * [new branch] issue-15-d0c58a82 -> origin/issue-15-d0c58a82 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2684208Z * [new branch] issue-17-1bd2fb57 -> origin/issue-17-1bd2fb57 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2686303Z * [new branch] issue-18-f86143d5 -> origin/issue-18-f86143d5 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2688004Z * [new branch] issue-19-9de6817b -> origin/issue-19-9de6817b +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2689697Z * [new branch] issue-20-aba7a4fa -> origin/issue-20-aba7a4fa +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2691396Z * [new branch] issue-22-889744b4 -> origin/issue-22-889744b4 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2693460Z * [new branch] issue-23-e23fa86d -> origin/issue-23-e23fa86d +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2695323Z * [new branch] issue-24-3e3135c5 -> origin/issue-24-3e3135c5 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2697115Z * [new branch] issue-25-4c1591ce -> origin/issue-25-4c1591ce +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2698896Z * [new branch] issue-26-c9ed9c27 -> origin/issue-26-c9ed9c27 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2700723Z * [new branch] issue-3-af35a436 -> origin/issue-3-af35a436 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2702826Z * [new branch] issue-30-7073054f -> origin/issue-30-7073054f +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2704763Z * [new branch] issue-31-e51b89e4 -> origin/issue-31-e51b89e4 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2706702Z * [new branch] issue-32-3b3efd02 -> origin/issue-32-3b3efd02 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2708606Z * [new branch] issue-33-a60a3c86 -> origin/issue-33-a60a3c86 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2710486Z * [new branch] issue-34-22f3c425 -> origin/issue-34-22f3c425 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2712478Z * [new branch] issue-35-391818e8 -> origin/issue-35-391818e8 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2714363Z * [new branch] issue-56-73ae4c3a -> origin/issue-56-73ae4c3a +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2716276Z * [new branch] issue-58-2571f420 -> origin/issue-58-2571f420 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2718185Z * [new branch] issue-63-452491b85cd2 -> origin/issue-63-452491b85cd2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2720176Z * [new branch] issue-65-5d06345e60dc -> origin/issue-65-5d06345e60dc +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2722539Z * [new branch] issue-67-d67d72474036 -> origin/issue-67-d67d72474036 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2724547Z * [new branch] issue-69-43fc7f1a4ec3 -> origin/issue-69-43fc7f1a4ec3 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2726549Z * [new branch] issue-71-c1debd4cdf5e -> origin/issue-71-c1debd4cdf5e +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2728628Z * [new branch] issue-73-d71d2656d381 -> origin/issue-73-d71d2656d381 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2730679Z * [new branch] issue-8-e91a69e5 -> origin/issue-8-e91a69e5 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2732520Z * [new branch] main -> origin/main +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2734162Z * [new branch] named-links -> origin/named-links +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2736169Z * [new branch] nested-creation-1 -> origin/nested-creation-1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2737868Z * [new tag] 1.0.1 -> 1.0.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2739275Z * [new tag] v1.2.1 -> v1.2.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2740697Z * [new tag] v1.2.2 -> v1.2.2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2742264Z * [new tag] v1.2.3 -> v1.2.3 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2743668Z * [new tag] v1.3.0 -> v1.3.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2745180Z * [new tag] v1.3.1 -> v1.3.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2747261Z * [new tag] v1.4.0 -> v1.4.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2749213Z * [new tag] v1.4.1 -> v1.4.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2750612Z * [new tag] v1.5.0 -> v1.5.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2752219Z * [new tag] v1.6.0 -> v1.6.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2754138Z * [new tag] v1.7.0 -> v1.7.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2755533Z * [new tag] v1.7.1 -> v1.7.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2756879Z * [new tag] v1.7.2 -> v1.7.2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2758206Z * [new tag] v1.7.3 -> v1.7.3 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2759708Z * [new tag] v1.7.4 -> v1.7.4 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2761364Z * [new tag] v1.8.0 -> v1.8.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2763112Z * [new tag] v2.0.2 -> v2.0.2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2764728Z * [new tag] v2.1.0 -> v2.1.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2766041Z * [new tag] v2.1.1 -> v2.1.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2767511Z * [new tag] v2.1.2 -> v2.1.2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2768880Z * [new tag] v2.1.3 -> v2.1.3 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2770183Z * [new tag] v2.2.0 -> v2.2.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2771518Z * [new tag] v2.2.1 -> v2.2.1 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2773217Z * [new tag] v2.2.2 -> v2.2.2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2776082Z [command]/usr/bin/git branch --list --remote origin/main +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2790044Z origin/main +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2798582Z [command]/usr/bin/git rev-parse refs/remotes/origin/main +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2818040Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2823962Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2825662Z ##[group]Determining the checkout info +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2827757Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2828899Z [command]/usr/bin/git sparse-checkout disable +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2865185Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2892329Z ##[group]Checking out the ref +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.2896699Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3306839Z Switched to a new branch 'main' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3309078Z branch 'main' set up to track 'origin/main'. +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3321856Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3358297Z [command]/usr/bin/git log -1 --format=%H +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3380757Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3695355Z ##[group]Run actions/setup-node@v4 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3696378Z with: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3697074Z node-version: 20.x +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3697891Z always-auth: false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3698722Z check-latest: false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3699788Z token: *** +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3700497Z env: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3701248Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3702954Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3703999Z DOTNET_NOLOGO: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.3704809Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.6256050Z Found in cache @ /opt/hostedtoolcache/node/20.20.2/x64 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:22.6264648Z ##[group]Environment details +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.3937150Z node: v20.20.2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.3937864Z npm: 10.8.2 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.3938167Z yarn: 1.22.22 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.3939245Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4048148Z ##[group]Run node scripts/detect-code-changes.mjs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4048560Z ^[[36;1mnode scripts/detect-code-changes.mjs^[[0m +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4079195Z shell: /usr/bin/bash -e {0} +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4079448Z env: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4079637Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4079911Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4080141Z DOTNET_NOLOGO: true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4080341Z GITHUB_EVENT_NAME: push +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4080535Z GITHUB_BASE_SHA: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4080727Z GITHUB_HEAD_SHA: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4080906Z ##[endgroup] +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4515022Z Detecting file changes for CI/CD... +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4515442Z +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4515650Z Comparing HEAD^ to HEAD +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4559290Z Changed files: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4559761Z .github/workflows/ci.yml +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4560384Z csharp/.changeset/fix-issue-62-review-coverage.md +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4561432Z csharp/Foundation.Data.Doublets.Cli.Tests/Issue62ReviewCoverageTests.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4562780Z csharp/Foundation.Data.Doublets.Cli.Tests/PinnedTypesTests.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4563802Z csharp/Foundation.Data.Doublets.Cli/AdvancedMixedQueryProcessor.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4564868Z csharp/Foundation.Data.Doublets.Cli/EnumerableExtensions.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4565725Z csharp/Foundation.Data.Doublets.Cli/Exceptions.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4566567Z csharp/Foundation.Data.Doublets.Cli/ILinksUnrestricted.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4567520Z csharp/Foundation.Data.Doublets.Cli/MixedQueryProcessor.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4568748Z csharp/Foundation.Data.Doublets.Cli/NamedLinksDecorator.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4569633Z csharp/Foundation.Data.Doublets.Cli/PinnedTypes.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4570450Z csharp/Foundation.Data.Doublets.Cli/QueryConstants.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4571418Z csharp/Foundation.Data.Doublets.Cli/SimpleLinksDecorator.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4572681Z csharp/Foundation.Data.Doublets.Cli/UnicodeStringStorage.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4573384Z package.json +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4573981Z rust/changelog.d/20260509_053805_issue_62_review_coverage.md +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4574749Z rust/tests/issue62_review_coverage_tests.rs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4575311Z tests/web.rs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4575734Z web/src/App.jsx +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4576145Z web/src/linkGraph.js +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4576571Z web/test/linkGraph.test.mjs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4576895Z +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4577115Z cs-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4579125Z csproj-changed=false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4579600Z sln-changed=false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4579977Z props-changed=false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4580334Z rs-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4580694Z toml-changed=false +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4581038Z mjs-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4581616Z docs-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4583692Z workflow-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4584932Z +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4585092Z Files considered as code changes: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4585603Z .github/workflows/ci.yml +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4586800Z csharp/Foundation.Data.Doublets.Cli.Tests/Issue62ReviewCoverageTests.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4587459Z csharp/Foundation.Data.Doublets.Cli.Tests/PinnedTypesTests.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4588054Z csharp/Foundation.Data.Doublets.Cli/AdvancedMixedQueryProcessor.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4588649Z csharp/Foundation.Data.Doublets.Cli/EnumerableExtensions.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4589140Z csharp/Foundation.Data.Doublets.Cli/Exceptions.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4589623Z csharp/Foundation.Data.Doublets.Cli/ILinksUnrestricted.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4590142Z csharp/Foundation.Data.Doublets.Cli/MixedQueryProcessor.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4590660Z csharp/Foundation.Data.Doublets.Cli/NamedLinksDecorator.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4591072Z csharp/Foundation.Data.Doublets.Cli/PinnedTypes.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4591546Z csharp/Foundation.Data.Doublets.Cli/QueryConstants.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4592381Z csharp/Foundation.Data.Doublets.Cli/SimpleLinksDecorator.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4593602Z csharp/Foundation.Data.Doublets.Cli/UnicodeStringStorage.cs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4594122Z package.json +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4594380Z rust/tests/issue62_review_coverage_tests.rs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4594829Z tests/web.rs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4595140Z web/src/App.jsx +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4595458Z web/src/linkGraph.js +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4595808Z web/test/linkGraph.test.mjs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4595979Z +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4596095Z any-code-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4596338Z csharp-code-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4596815Z rust-code-changed=true +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4597070Z +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4597265Z Change detection completed. +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.4725236Z Post job cleanup. +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.6412427Z Post job cleanup. +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7383774Z [command]/usr/bin/git version +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7419619Z git version 2.53.0 +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7465057Z Temporarily overriding HOME='/home/runner/work/_temp/5c9ccd5b-332f-4b72-929d-74485713c60a' before making global git config changes +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7466670Z Adding repository directory to the temporary git global config as a safe directory +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7478513Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7512866Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7545123Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7761604Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7781701Z http.https://github.com/.extraheader +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7795620Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.7826330Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8039899Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8070768Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8392415Z Evaluate and set job outputs +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8399977Z Set output 'cs-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8401574Z Set output 'csproj-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8402634Z Set output 'sln-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8402940Z Set output 'props-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8403239Z Set output 'mjs-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8403513Z Set output 'docs-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8403801Z Set output 'workflow-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8404080Z Set output 'any-code-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8404368Z Set output 'csharp-code-changed' +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8405083Z Cleaning up orphan processes +Detect Changes UNKNOWN STEP 2026-05-09T07:08:25.8671909Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3870266Z Current runner version: '2.334.0' +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3905495Z ##[group]Runner Image Provisioner +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3906679Z Hosted Compute Agent +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3907470Z Version: 20260213.493 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3908320Z Commit: 5c115507f6dd24b8de37d8bbe0bb4509d0cc0fa3 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3909438Z Build Date: 2026-02-13T00:28:41Z +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3910349Z Worker ID: {f5d45b8b-e264-475b-81d9-b448324ab732} +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3911302Z Azure Region: centralus +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3912539Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3914653Z ##[group]Operating System +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3915468Z Ubuntu +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3916248Z 24.04.4 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3916839Z LTS +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3917492Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3918188Z ##[group]Runner Image +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3919097Z Image: ubuntu-24.04 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3919864Z Version: 20260413.86.1 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3921780Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260413.86/images/ubuntu/Ubuntu2404-Readme.md +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3924296Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260413.86 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3925877Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3930224Z ##[group]GITHUB_TOKEN Permissions +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3933425Z Actions: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3934480Z ArtifactMetadata: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3935254Z Attestations: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3936122Z Checks: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3936859Z Contents: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3937664Z Deployments: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3938404Z Discussions: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3939316Z Issues: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3940005Z Metadata: read +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3940769Z Models: read +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3941600Z Packages: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3942350Z Pages: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3943116Z PullRequests: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3944182Z RepositoryProjects: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3945017Z SecurityEvents: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3945763Z Statuses: write +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3946714Z VulnerabilityAlerts: read +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3947493Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3950258Z Secret source: Actions +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.3951733Z Prepare workflow directory +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.4434701Z Prepare all required actions +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.4486721Z Getting action download info +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.7760212Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:36.9369841Z Download action repository 'actions/setup-dotnet@v4' (SHA:67a3573c9a986a3f9c594539f4ab511d57bb3ce9) +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.4949004Z Complete job name: Lint and Format Check +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5676724Z ##[group]Run actions/checkout@v4 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5677570Z with: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5678024Z repository: link-foundation/link-cli +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5678778Z token: *** +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5679184Z ssh-strict: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5679608Z ssh-user: git +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5680026Z persist-credentials: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5680518Z clean: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5680964Z sparse-checkout-cone-mode: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5681496Z fetch-depth: 1 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5681912Z fetch-tags: false +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5682337Z show-progress: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5682784Z lfs: false +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5683196Z submodules: false +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5683845Z set-safe-directory: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5684545Z env: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5684983Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5685554Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5686076Z DOTNET_NOLOGO: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.5686517Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6803817Z Syncing repository: link-foundation/link-cli +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6805736Z ##[group]Getting Git version info +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6806454Z Working directory is '/home/runner/work/link-cli/link-cli' +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6807426Z [command]/usr/bin/git version +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6884376Z git version 2.53.0 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6909523Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6925546Z Temporarily overriding HOME='/home/runner/work/_temp/639f40b8-4262-4814-8798-b5aaac8028d8' before making global git config changes +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6928500Z Adding repository directory to the temporary git global config as a safe directory +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6932117Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6965540Z Deleting the contents of '/home/runner/work/link-cli/link-cli' +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6968906Z ##[group]Initializing the repository +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.6972731Z [command]/usr/bin/git init /home/runner/work/link-cli/link-cli +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7032891Z hint: Using 'master' as the name for the initial branch. This default branch name +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7035189Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7036888Z hint: to use in all of your new repositories, which will suppress this warning, +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7038226Z hint: call: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7038869Z hint: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7039733Z hint: git config --global init.defaultBranch +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7040853Z hint: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7041836Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7043665Z hint: 'development'. The just-created branch can be renamed via this command: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7044979Z hint: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7045674Z hint: git branch -m +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7046475Z hint: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7047559Z hint: Disable this message with "git config set advice.defaultBranchName false" +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7049331Z Initialized empty Git repository in /home/runner/work/link-cli/link-cli/.git/ +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7052071Z [command]/usr/bin/git remote add origin https://github.com/link-foundation/link-cli +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7079414Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7080690Z ##[group]Disabling automatic garbage collection +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7084687Z [command]/usr/bin/git config --local gc.auto 0 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7114233Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7115442Z ##[group]Setting up auth +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7121706Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7153935Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7443820Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7476041Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7707956Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7750463Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.7984002Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.8018831Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.8019676Z ##[group]Fetching the repository +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:37.8027749Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +70a959516ae64dd5878b72f5cb6af961a765aedc:refs/remotes/origin/main +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5642161Z From https://github.com/link-foundation/link-cli +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5644510Z * [new ref] 70a959516ae64dd5878b72f5cb6af961a765aedc -> origin/main +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5673275Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5674740Z ##[group]Determining the checkout info +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5678180Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5681401Z [command]/usr/bin/git sparse-checkout disable +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5720569Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5747145Z ##[group]Checking out the ref +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.5751371Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6178267Z Switched to a new branch 'main' +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6179910Z branch 'main' set up to track 'origin/main'. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6192186Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6232502Z [command]/usr/bin/git log -1 --format=%H +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6255845Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6563154Z ##[group]Run actions/setup-dotnet@v4 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6564546Z with: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6565369Z dotnet-version: 8.0.x +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6566319Z cache: false +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6567148Z env: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6568006Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6569270Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6570384Z DOTNET_NOLOGO: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.6571298Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:38.8424999Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:39.3409986Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:39.8575181Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz size is 36689672 bytes. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:39.8577437Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.5802095Z dotnet-install: Downloaded file size is 36689672 bytes. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.5803160Z dotnet-install: The remote and local file sizes are equal. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.6125721Z dotnet-install: Installed version is 10.0.7 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.6188509Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.6190215Z dotnet-install: Note that the script does not resolve dependencies during installation. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.6221061Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.6221812Z dotnet-install: Installation finished successfully. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.6222541Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --channel 8.0 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:40.9277089Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:43.3257233Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz size is 216822173 bytes. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:43.3258813Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.1430327Z dotnet-install: Downloaded file size is 216822173 bytes. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.1431126Z dotnet-install: The remote and local file sizes are equal. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.3920771Z dotnet-install: Installed version is 8.0.420 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.3983247Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.3984813Z dotnet-install: Note that the script does not resolve dependencies during installation. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.3986131Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.3986840Z dotnet-install: Installation finished successfully. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4144831Z ##[group]Run dotnet restore +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4145150Z ^[[36;1mdotnet restore^[[0m +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4173339Z shell: /usr/bin/bash -e {0} +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4173845Z env: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4174057Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4174623Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4174868Z DOTNET_NOLOGO: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4175070Z DOTNET_ROOT: /usr/share/dotnet +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:48.4175338Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:51.8179003Z Determining projects to restore... +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.1906540Z Restored /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/Foundation.Data.Doublets.Cli.Tests.csproj (in 2.54 sec). +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.1931103Z Restored /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj (in 2.54 sec). +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2448564Z ##[group]Run dotnet build --no-restore --configuration Release +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2449092Z ^[[36;1mdotnet build --no-restore --configuration Release^[[0m +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2473915Z shell: /usr/bin/bash -e {0} +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2474176Z env: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2474398Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2474700Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2474967Z DOTNET_NOLOGO: true +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2475199Z DOTNET_ROOT: /usr/share/dotnet +Lint and Format Check UNKNOWN STEP 2026-05-09T07:08:55.2475445Z ##[endgroup] +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:02.0548102Z Foundation.Data.Doublets.Cli -> /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/bin/Release/net8/Foundation.Data.Doublets.Cli.dll +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.2867066Z Foundation.Data.Doublets.Cli.Tests -> /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/bin/Release/net8/Foundation.Data.Doublets.Cli.Tests.dll +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.3058095Z +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.3064130Z Build succeeded. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.3066869Z 0 Warning(s) +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.3067230Z 0 Error(s) +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.3067612Z +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.3068125Z Time Elapsed 00:00:07.79 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.3283376Z Post job cleanup. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.4945251Z Post job cleanup. +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.5928074Z [command]/usr/bin/git version +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.5964730Z git version 2.53.0 +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6012438Z Temporarily overriding HOME='/home/runner/work/_temp/45f0a452-76e4-4c4b-bf61-040230506f0f' before making global git config changes +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6017692Z Adding repository directory to the temporary git global config as a safe directory +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6018605Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6052751Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6098739Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6348968Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6373623Z http.https://github.com/.extraheader +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6385868Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6419381Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6673663Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.6708637Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.7065835Z Cleaning up orphan processes +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.7365519Z Terminate orphan process: pid (2783) (dotnet) +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.7385834Z Terminate orphan process: pid (2863) (VBCSCompiler) +Lint and Format Check UNKNOWN STEP 2026-05-09T07:09:03.7408348Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-dotnet@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0545500Z Current runner version: '2.334.0' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0558770Z ##[group]Runner Image Provisioner +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0559210Z Hosted Compute Agent +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0559560Z Version: 20260422.526 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0559980Z Commit: e1a9e573f4d0838b3a7c1b07401aeb29ed3635a9 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0560410Z Build Date: 2026-04-22T09:31:31Z +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0560830Z Worker ID: {e6e848ca-ab35-4c76-87df-b4671ab6bb54} +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0561250Z Azure Region: westus +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0561610Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0562370Z ##[group]Operating System +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0562720Z macOS +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0563020Z 15.7.4 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0563290Z 24G517 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0563570Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0563860Z ##[group]Runner Image +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0564200Z Image: macos-15-arm64 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0564520Z Version: 20260427.0018.1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0565260Z Included Software: https://github.com/actions/runner-images/blob/macos-15-arm64/20260427.0018/images/macos/macos-15-arm64-Readme.md +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0566220Z Image Release: https://github.com/actions/runner-images/releases/tag/macos-15-arm64%2F20260427.0018 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0566820Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0568730Z ##[group]GITHUB_TOKEN Permissions +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0569720Z Actions: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0570040Z ArtifactMetadata: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0570380Z Attestations: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0570690Z Checks: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0570970Z Contents: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0571280Z Deployments: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0571600Z Discussions: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0571910Z Issues: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0572210Z Metadata: read +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0572520Z Models: read +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0572820Z Packages: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0573110Z Pages: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0573440Z PullRequests: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0573780Z RepositoryProjects: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0574130Z SecurityEvents: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0574470Z Statuses: write +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0574810Z VulnerabilityAlerts: read +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0575300Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0576630Z Secret source: Actions +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0577020Z Prepare workflow directory +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0829710Z Prepare all required actions +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.0855960Z Getting action download info +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.3197450Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:29.5799160Z Download action repository 'actions/setup-dotnet@v4' (SHA:67a3573c9a986a3f9c594539f4ab511d57bb3ce9) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:30.6154050Z Download action repository 'codecov/codecov-action@v4' (SHA:b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.5721430Z Complete job name: Test (macos-latest) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6186960Z ##[group]Run actions/checkout@v4 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6187780Z with: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6188330Z repository: link-foundation/link-cli +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6189280Z token: *** +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6189790Z ssh-strict: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6190320Z ssh-user: git +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6190870Z persist-credentials: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6191440Z clean: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6191970Z sparse-checkout-cone-mode: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6192610Z fetch-depth: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6193120Z fetch-tags: false +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6193630Z show-progress: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6194170Z lfs: false +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6194660Z submodules: false +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6195300Z set-safe-directory: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6195980Z env: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6196490Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6197190Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6197820Z DOTNET_NOLOGO: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.6198360Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.8804550Z Syncing repository: link-foundation/link-cli +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.8806620Z ##[group]Getting Git version info +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.8808430Z Working directory is '/Users/runner/work/link-cli/link-cli' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.8809840Z [command]/opt/homebrew/bin/git version +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9331720Z git version 2.54.0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9357160Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9363680Z Copying '/Users/runner/.gitconfig' to '/Users/runner/work/_temp/f63f08c9-548f-424b-8088-2b89708ba42d/.gitconfig' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9371470Z Temporarily overriding HOME='/Users/runner/work/_temp/f63f08c9-548f-424b-8088-2b89708ba42d' before making global git config changes +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9374920Z Adding repository directory to the temporary git global config as a safe directory +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9377000Z [command]/opt/homebrew/bin/git config --global --add safe.directory /Users/runner/work/link-cli/link-cli +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9470660Z Deleting the contents of '/Users/runner/work/link-cli/link-cli' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9475880Z ##[group]Initializing the repository +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9480380Z [command]/opt/homebrew/bin/git init /Users/runner/work/link-cli/link-cli +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9639200Z hint: Using 'master' as the name for the initial branch. This default branch name +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9642970Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9644140Z hint: to use in all of your new repositories, which will suppress this warning, +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9645120Z hint: call: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9645630Z hint: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9646240Z hint: git config --global init.defaultBranch +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9646970Z hint: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9647690Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9648890Z hint: 'development'. The just-created branch can be renamed via this command: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9649800Z hint: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9650310Z hint: git branch -m +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9650870Z hint: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9651680Z hint: Disable this message with "git config set advice.defaultBranchName false" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9652910Z Initialized empty Git repository in /Users/runner/work/link-cli/link-cli/.git/ +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9655190Z [command]/opt/homebrew/bin/git remote add origin https://github.com/link-foundation/link-cli +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9712030Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9713260Z ##[group]Disabling automatic garbage collection +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9714710Z [command]/opt/homebrew/bin/git config --local gc.auto 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9767860Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9768750Z ##[group]Setting up auth +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9771910Z [command]/opt/homebrew/bin/git config --local --name-only --get-regexp core\.sshCommand +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:31.9832830Z [command]/opt/homebrew/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.0546240Z [command]/opt/homebrew/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.0596480Z [command]/opt/homebrew/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.1211070Z [command]/opt/homebrew/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.1271360Z [command]/opt/homebrew/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.2835940Z [command]/opt/homebrew/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.3013720Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.3114280Z ##[group]Fetching the repository +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:32.3137170Z [command]/opt/homebrew/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +70a959516ae64dd5878b72f5cb6af961a765aedc:refs/remotes/origin/main +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.6989020Z From https://github.com/link-foundation/link-cli +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.6989750Z * [new ref] 70a959516ae64dd5878b72f5cb6af961a765aedc -> origin/main +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7082510Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7083320Z ##[group]Determining the checkout info +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7083740Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7085570Z [command]/opt/homebrew/bin/git sparse-checkout disable +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7167260Z [command]/opt/homebrew/bin/git config --local --unset-all extensions.worktreeConfig +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7232420Z ##[group]Checking out the ref +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7236100Z [command]/opt/homebrew/bin/git checkout --progress --force -B main refs/remotes/origin/main +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7871840Z Switched to a new branch 'main' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.7973290Z branch 'main' set up to track 'origin/main'. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.8278260Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.8580270Z [command]/opt/homebrew/bin/git log -1 --format=%H +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.8680820Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9280370Z ##[group]Run actions/setup-dotnet@v4 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9280640Z with: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9280770Z dotnet-version: 8.0.x +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9280950Z cache: false +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9281080Z env: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9281250Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9281460Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9281660Z DOTNET_NOLOGO: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:33.9281810Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:34.0799800Z [command]/Users/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:34.9372700Z dotnet-install: .NET Core Runtime with version '10.0.7' is already installed. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:34.9390590Z [command]/Users/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --channel 8.0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7576430Z dotnet-install: .NET Core SDK with version '8.0.420' is already installed. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7705180Z ##[group]Run dotnet restore +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7705410Z ^[[36;1mdotnet restore^[[0m +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7744190Z shell: /bin/bash -e {0} +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7744390Z env: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7744550Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7744770Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7744980Z DOTNET_NOLOGO: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7745140Z DOTNET_ROOT: /Users/runner/.dotnet +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:35.7745320Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:37.4707060Z Determining projects to restore... +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0582390Z Restored /Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj (in 4.33 sec). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0583320Z Restored /Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/Foundation.Data.Doublets.Cli.Tests.csproj (in 4.33 sec). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0794460Z ##[group]Run dotnet build --no-restore --configuration Release +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0794970Z ^[[36;1mdotnet build --no-restore --configuration Release^[[0m +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0856950Z shell: /bin/bash -e {0} +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0857200Z env: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0857410Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0857810Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0858080Z DOTNET_NOLOGO: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0858300Z DOTNET_ROOT: /Users/runner/.dotnet +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:42.0858570Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.0026210Z Foundation.Data.Doublets.Cli -> /Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/bin/Release/net8/Foundation.Data.Doublets.Cli.dll +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.5997030Z Foundation.Data.Doublets.Cli.Tests -> /Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/bin/Release/net8/Foundation.Data.Doublets.Cli.Tests.dll +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6141570Z +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6147820Z Build succeeded. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6174110Z 0 Warning(s) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6177550Z 0 Error(s) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6177910Z +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6178170Z Time Elapsed 00:00:03.36 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6234290Z ##[group]Run dotnet test --no-build --configuration Release --verbosity normal --collect:"XPlat Code Coverage" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6240020Z ^[[36;1mdotnet test --no-build --configuration Release --verbosity normal --collect:"XPlat Code Coverage"^[[0m +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6277310Z shell: /bin/bash -e {0} +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6277630Z env: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6277780Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6278040Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6278340Z DOTNET_NOLOGO: true +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6278490Z DOTNET_ROOT: /Users/runner/.dotnet +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.6278670Z ##[endgroup] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.8028880Z Build started 5/9/2026 7:08:45 AM. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.8642910Z 1>Project "/Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.sln" on node 1 (VSTest target(s)). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.8643470Z 1>ValidateSolutionConfiguration: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:45.8643860Z Building solution configuration "Release|Any CPU". +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:46.0140100Z Test run for /Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/bin/Release/net8/Foundation.Data.Doublets.Cli.Tests.dll (.NETCoreApp,Version=v8.0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:46.1766330Z A total of 1 test files matched the specified pattern. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.4553780Z [xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v3.1.5+1b188a7b0a (64-bit .NET 8.0.26) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.5074020Z [xUnit.net 00:00:00.06] Discovering: Foundation.Data.Doublets.Cli.Tests +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.5819040Z [xUnit.net 00:00:00.13] Discovered: Foundation.Data.Doublets.Cli.Tests +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.6036120Z [xUnit.net 00:00:00.15] Starting: Foundation.Data.Doublets.Cli.Tests +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.6655870Z [Trace] Constructing NamedLinksDecorator with names DB: /var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/tmpKSTlcR.names.links +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.7796960Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetriveUserDefinedTypeTest [36 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.7829820Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "UnicodeSymbol") [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.7891670Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "EmptyString") [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.7912980Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetName_OverwriteOldName [40 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.7924950Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "test.db", expected: "test.names.links") [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.7926730Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "a.b.c", expected: "a.b.names.links") [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8040270Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "/tmp/test.db", expected: "/tmp/test.names.links") [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8120000Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "String") [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8121650Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.AfterCreation_SetNameAndGetName_ShouldWork [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8122680Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "Name") [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8248600Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "UnicodeSequence") [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8358400Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.CanConstructNamedLinksDecorator [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8468740Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "Type") [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8493340Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_NonExistent_DoesNotThrow [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8494630Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_ShouldReturnNullAfterRemoval [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8495570Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameIsRemovedWhenExternalReferenceIsDeletedTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8496560Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetNameAndGetName_ShouldReturnSameName [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8497560Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.DeleteLink_RemovesNameAutomatically [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8498450Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameExternalReferenceTest [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8499410Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveUnicodeStringTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8500430Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveSimpleStringTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8501570Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.DeletingNonNamedLinkDoesNotAffectOtherNamesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8514540Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveEmptyStringTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8515520Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.RetrieveTypeByNameTest [55 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8516480Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringsTest [5 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8517440Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameIsRemovedWhenLinkIsDeletedTest [6 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8518460Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.ExternalReferenceCanUseNameThatAlreadyExistsInternallyTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8519420Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WriteToFile_WritesCompleteDatabaseAsLinoLines [32 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8520540Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersLeftBranchWithLinkIndexes [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8570230Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersRepeatedSourceAndTargetAsReferenceOnRight [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8582250Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_EscapesNamesThatNeedQuoting [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8686530Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNamesForIndexesSourcesAndTargets_WhenNamesExist [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8741260Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteSingleLinkTest_Source2Target2 [63 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8742450Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_SelectsQuoteStyleForNamesContainingQuotes [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8745390Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNumberedReferences_WhenLinksHaveNoNames [4 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8746340Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteMultipleLinksTest [5 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8747210Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateSingleLinkTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8748490Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.UpdateSingleLinkTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8749330Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateLinkWithSource2Target2Test [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8750120Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.MultipleUpdatesTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8851920Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateMultipleLinksTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.8953680Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteSingleLinkTest_Source1Target2 [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9055930Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Terminate_Enumeration_When_Iterated_Without_Take [14 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9090690Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_UsesProvidedPinnedTypesDecorator [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9091980Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanRemoveNames [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9092910Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Validate_Existing_Links_With_Ulong [5 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9093890Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_DeleteRemovesAssociatedNames [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9095630Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Destructure_PinnedTypes [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9109420Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Validate_Existing_Links [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9121820Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanSetAndGetNames [4 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9124670Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_HandlesNonexistentNames [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9126320Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Reset_Enumerator [5 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9128960Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ReassigningExistingNameMovesNameToNewLink [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9130000Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Throw_Exception_For_Invalid_Link_Structure [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9130920Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Create_And_Iterate_Over_Types [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9131910Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsILinks [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9133300Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Create_And_Iterate_Over_Types_With_RealDataStore [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9136130Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanConstructFromDatabaseFilename [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9137270Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanEnumeratePinnedTypes [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9138250Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateLinkWithSource2Target2Test [9 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9140430Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanOverwriteNames [6 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9141350Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteAllLinksByIndexTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9142420Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9147280Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsIPinnedTypes [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9148600Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteLinksByAnyTargetTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9158420Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsINamedTypes [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9159790Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteLinksByAnySourceTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9160790Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanGetLinkByName [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9161830Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteMultipleLinksTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9163540Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateMultipleLinksTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9164640Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.ReverseSourceWithTargetUsingVariablesTest [4 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9166140Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_ReproducesNumberedLinksAtTheirExplicitIndexes [4 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9168720Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9173770Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.NoUpdateUsingVariablesTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9220410Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_TreatsOutOfRangeNumbersAsNames [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9221520Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteSingleLinkTest_Source1Target2 [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9222620Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.MixedMultipleUpdatesTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9223550Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteSingleLinkTest_Source2Target2 [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9224560Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_UnquotesNamesWrittenByExporter [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9225480Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9230940Z [Trace] Constructing SimpleLinksDecorator with names DB: /var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/tmpShTmos.names.links +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9231980Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9233060Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_CreatesNamedReferencesAsPointLinks [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9233990Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.MultipleUpdatesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9235210Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9236170Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreationDuringUpdateTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9237080Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.CanConstructSimpleLinksDecorator [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9237950Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.UpdateSingleLinkTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9238820Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9239730Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.Delete_WithRestriction_DoesNotThrow [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9240950Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeletionDuringUpdateTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9241890Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow_WithTracing [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9243160Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9244190Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.NeverRemovesMatchingStoredTrigger [11 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9245710Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_Issue26_AlternativeScenario_NoSimplificationOccurs [13 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9246860Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_NoChange_StillKeepsFirstAndLastState [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9248180Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_Issue26_UpdateOperationSimplification [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9248990Z === Debug: Alternative Scenario === +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9249350Z Input changes: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9250480Z 1. (1: 1 2) -> (0: 0 0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9251300Z 2. (1: 1 2) -> (1: 2 1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9251640Z 3. (2: 2 1) -> (2: 1 2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9252290Z Actual simplified changes: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9252700Z 1. (1: 1 2) -> (1: 2 1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9253100Z 2. (2: 2 1) -> (2: 1 2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9253420Z Count: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9253740Z === End Debug === +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9399990Z [Test] All links: (1: 2->1) (2: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9435840Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_SpecificExample_RemovesIntermediateStates [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9437370Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleChainsFromSameBefore_RemovesIntermediateStates [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9438590Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleBranchesFromSameInitial_ProducesCorrectFinalStates [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9439930Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleBranchesFromSameInitial_ProducesCorrectFinalStates_InCorrectOrder [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9441220Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_SpecificExample_KeepsUnchangedStates [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9442460Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.AlwaysTriggerIsStoredInLinksAndAppliedAfterWrite [38 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9450030Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.OnceTriggerDeletesItselfAfterFirstMatch [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9451210Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForAllLinksUsingVariablesTest [36 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9554560Z [Test] All links: (1: 2->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9584880Z [Test] All links: (1: 1->2) (2: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9605710Z [Test] All links: (1: 1->1) (3: 3->3) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9608910Z Passed Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.ExplicitNumericIdUpdate_CanBeReversedWithAnotherUpdate [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9611370Z Passed Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.NamedLink_CreateDeleteRecreate_DoesNotLeaveStaleNameMapping [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9638400Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Implement_Both_ILinks_And_IPinnedTypes [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9639680Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Support_Deconstruction [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9641160Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Work_As_ILinks_Decorator [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9642060Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Enumerate_PinnedTypes [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9642940Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NameLookupConsistencyTest [12 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9643970Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapEqualSourceAndTargetUsingVariablesHasAllChangesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9645220Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MultipleUpdatesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9646170Z [Test] All links: (1: 1->1) (2: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9690420Z [Test] All links: (21: 21->21) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9702990Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9713980Z [Test] All links: (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9715740Z [Trace] Constructing NamedTypesDecorator with names DB: /var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/tmpuS1tsy.names.links +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9719040Z [ProcessQuery] Query: "(() ((link: link link)))" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9720740Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9721350Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9722450Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9723600Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9724490Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9725190Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9726150Z [ValidateLinksExistOrWillBeCreated] Named links to be created: link +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9726710Z [Trace] GetByName called for name: 'link' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9727120Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9727690Z [ValidateReferencesInPattern] Named link 'link' reference validated in substitution pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9728340Z [Trace] GetByName called for name: 'link' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9729700Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9730450Z [ValidateReferencesInPattern] Named link 'link' reference validated in substitution pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9731120Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9732200Z [Trace] GetByName called for name: 'link' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9733020Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9733470Z [Trace] Update called with restriction: [1] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9734010Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9735300Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9740850Z [EnsureNestedLinkCreatedRecursively] Created named leaf 'link' => ID=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9741500Z [Trace] SetName called for link: 1 with name: 'link' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9742070Z [Trace] RemoveName called for link: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9742620Z [Trace] RemoveName completed for link: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9743060Z [Trace] SetName result: 100 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9743580Z [EnsureNestedLinkCreatedRecursively] Updating link ID=1 => Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9744160Z [Trace] Update called with restriction: [1,0,0] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9744740Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9745580Z [EnsureNestedLinkCreatedRecursively] Update handler: before=(1: 0->0), after=(1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9746250Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9746850Z [ProcessQuery] Created link ID #1 from substitution pattern. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9747950Z [Test] All links: (1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9755160Z [Trace] GetByName called for name: 'link' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9755650Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9756080Z [Trace] GetName called for link: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9756540Z [Trace] GetName result: link +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9756900Z [Test] All links: (1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9778400Z [Test] All links: (1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9794420Z [Test] All links: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9799420Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9800900Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9806220Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteFullPointWithUnboundParts_ShouldKeepFullPoint [6 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9812260Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchAndDelete2LevelNestedLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9813310Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnyTargetTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9814310Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithStringId_ShouldCreateSingleLink [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9815300Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeletionDuringUpdateTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9816710Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithMissingNamedReferences_ShouldThrowException [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9817990Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithIntegerId_ShouldCreateSingleLink [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9822950Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9823990Z [Test] All links: (1: 1->2) (2: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9840080Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9851270Z [Test] All links: (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9856480Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) (4: 3->3) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9886190Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9890820Z [Test] All links: (1: 1->2) (2: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9902050Z [Test] All links: (1: 2->1) (2: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9920080Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksByIndexTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9921930Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedFamilyLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9923100Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNumericLinks_ShouldCreateOnlyOneSubLink [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9924340Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.StringAliasesInVariableRestriction_ShouldConstrainMatchesToNamedLinks [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9925490Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9945240Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNamedLinks_ShouldCreateOnlyOneSubLink [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9968210Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithAutoCreateMissingNamedReferences_ShouldCreatePointLinks [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:47.9992990Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksWithCrossReferences_ShouldSucceed [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0006120Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoIntoFirstLinkUsingVariablesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0008670Z [Test] ===== Starting UpdateNamedLinkNameTest ===== +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0014530Z [Trace] Constructing NamedTypesDecorator with names DB: /var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/tmpzo4zAr.names.links +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0015430Z [Test] Constants: Null=0, Any=4294967292, Continue=4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0015740Z [Test] Step 1: Creating initial link +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0017080Z [Test] Query: (() ((child: father mother))) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0025310Z [ProcessQuery] Query: "(() ((child: father mother)))" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0025960Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0026700Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0027420Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0028180Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0029010Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0035170Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0035950Z [ValidateLinksExistOrWillBeCreated] Named links to be created: child +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0036570Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0037320Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0037940Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0038470Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0038970Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0039530Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0040240Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'father' as point link. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0041600Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0047570Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0048590Z [Trace] Update called with restriction: [1] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0049290Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0052610Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0058690Z [Trace] SetName called for link: 1 with name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0059360Z [Trace] RemoveName called for link: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0059860Z [Trace] RemoveName completed for link: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0060350Z [Trace] SetName result: 108 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0060810Z [Trace] Update called with restriction: [1,0,0] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0061400Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0062020Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0062560Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0063040Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0063820Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'mother' as point link. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0086990Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0097020Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0097720Z [Trace] Update called with restriction: [2] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0098490Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,0,0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0099060Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0099560Z [Trace] SetName called for link: 2 with name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0100080Z [Trace] RemoveName called for link: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0110740Z [Trace] RemoveName completed for link: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0112010Z [Trace] SetName result: 110 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0112530Z [Trace] Update called with restriction: [2,0,0] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0113160Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,2,2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0113790Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0115220Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0122470Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0123030Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0123700Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0124440Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0125040Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0125640Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0126300Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0126820Z [EnsureLinkCreated] => assigned new ID=3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0132380Z [Trace] Update called with restriction: [3] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0133100Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0133690Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0134480Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0135210Z [Trace] SetName called for link: 3 with name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0135470Z [Trace] RemoveName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0135980Z [Trace] RemoveName completed for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0136440Z [Trace] SetName result: 118 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0136950Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0137500Z [Test] Initial link creation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0138080Z [Test] Step 2: Verifying initial state +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0139390Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0146780Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0147270Z [Test] Initial child ID: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0147730Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0148210Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0148660Z [Test] Initial father ID: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0149120Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0149590Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0150070Z [Test] Initial mother ID: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0150750Z [Test] Initial links count: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0152530Z [Test] Initial link: Index=(1: 1->1), Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0157410Z [Test] Initial link: Index=(2: 2->2), Source=2, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0158190Z [Test] Initial link: Index=(3: 1->2), Source=1, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0159020Z [Test] Initial state verification completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0159580Z [Test] Step 3: Updating link name from 'child' to 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0160330Z [Test] Query: (((child: father mother)) ((son: father mother))) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0160880Z [Test] Current state before update: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0161370Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0161940Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0162470Z [Test] - child name exists: True +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0163870Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0169990Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0170500Z [Test] - son name exists: False +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0171040Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0171610Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0181190Z [Test] - father name exists: True +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0181680Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0183870Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0185320Z [Test] - mother name exists: True +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0205370Z [Test] Starting ProcessQuery for update... +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0208930Z [Test] Current links before update: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0233830Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0262390Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0263190Z [Test] Link: Index=(3: 1->2), Source=1, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0263760Z [ProcessQuery] Query: "(((child: father mother)) ((son: father mother)))" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0264380Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0264940Z [ProcessQuery] Restriction link => Id="" Values.Count=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0265480Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0266000Z [ProcessQuery] Restriction patterns to parse: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0266490Z [ProcessQuery] Substitution patterns to parse: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0267010Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0267600Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0268220Z [ValidateLinksExistOrWillBeCreated] Named links to be created: son +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0268850Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0269290Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0270060Z [ValidateReferencesInPattern] Named link 'child' reference validated in restriction pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0270610Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0271000Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0271530Z [ValidateReferencesInPattern] Named link 'father' reference validated in restriction pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0272080Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0272470Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0273010Z [ValidateReferencesInPattern] Named link 'mother' reference validated in restriction pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0273730Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0277260Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0278050Z [ValidateReferencesInPattern] Named link 'father' reference validated in substitution pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0288050Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0288550Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0289190Z [ValidateReferencesInPattern] Named link 'mother' reference validated in substitution pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0290010Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0291080Z [ProcessQuery] Detected single sub-link with 2 sub-values => replaced with one composite restriction pattern. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0291770Z [ProcessQuery] Converting restriction patterns => done. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0292640Z [ProcessQuery] Converting substitution patterns => done. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0293270Z [ProcessQuery] Finding solutions for restriction patterns... +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0293930Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0298750Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0299200Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0299630Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0300060Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0300480Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0300990Z [ProcessQuery] Found 1 total solution(s) matching restriction patterns. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0301540Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0301970Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0302390Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0302820Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0303240Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0303670Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0308880Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0309440Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0309900Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0310370Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0310830Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0311290Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0311880Z [ProcessQuery] allSolutionsNoOperation=False +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0312520Z [ProcessQuery] Some solutions lead to actual changes => building operations. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0313110Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0313570Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0314040Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0314520Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0314970Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0315430Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0315880Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0316490Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0323790Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0324310Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0324790Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0325260Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0325920Z [ProcessQuery] For a solution => substitution links count=1, restriction links count=1. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0327390Z [ProcessQuery] => 2 operation(s) derived from these patterns. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0332460Z [ProcessQuery] All planned operations => 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0332950Z [ProcessQuery] Applying all planned operations... +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0333530Z [ApplyAllPlannedOperations] Operation: before=(3:1->2), after=(0:0->0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0334030Z [Trace] GetName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0334430Z [Trace] GetName result: child +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0334900Z [ApplyAllPlannedOperations] Name for before.Index 3 = 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0335260Z [ApplyAllPlannedOperations] Deleting link => ID=3, S=1, T=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0335620Z [RemoveLinks] Found 1 link(s) matching (ID=3, S=1, T=2). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0335880Z [Trace] RemoveName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0336120Z [Trace] RemoveName completed for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0336350Z [RemoveLinks] Deleting link => ID=3, S=1, T=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0336600Z [Trace] Delete called with restriction: [3,1,2] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0337090Z [Trace] Debug: this._links is of type: Foundation.Data.Doublets.Cli.PinnedTypesDecorator`1[System.UInt32] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0337510Z [Trace] Debug: Calling underlying _links.Delete +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0337820Z [Trace] Debug: handlerWrapper invoked - before=3,1,2, after=3,0,0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0338100Z [Test] Update ChangesHandler called: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0338310Z [Test] - Before state: (3: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0338490Z [Test] - After state: (3: 0->0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0338700Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0338900Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0339390Z [Test] - child name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0339690Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0339890Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0340380Z [Test] - son name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0340680Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0340890Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0341080Z [Test] - father name during change: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0341310Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0342600Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0342790Z [Test] - mother name during change: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0342990Z [Test] - All links during change: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0343220Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0343470Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0343740Z [Test] Link: Index=(3: 0->0), Source=0, Target=0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0344060Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=null +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0344330Z [Trace] RemoveName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0344550Z [Trace] RemoveName completed for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0344760Z [Test] Update ChangesHandler called: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0344980Z [Test] - Before state: (3: 0->0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0345190Z [Test] - After state: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0345370Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0345570Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0345760Z [Test] - child name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0345970Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0346170Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0346340Z [Test] - son name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0346550Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0346750Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0346940Z [Test] - father name during change: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0347150Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0347360Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0347540Z [Test] - mother name during change: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0347740Z [Test] - All links during change: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0347960Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0348210Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0348440Z [Trace] Debug: Delete result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0348820Z [ApplyAllPlannedOperations] Operation: before=(0:0->0), after=(4294967292:1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0349160Z [Trace] GetName called for link: 4294967292 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0349370Z [Trace] GetName result: String +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0349690Z [ApplyAllPlannedOperations] Name for after.Index 4294967292 = 'String' (pre-op) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0350100Z [ApplyAllPlannedOperations] Creating link => ID=4294967292, S=1, T=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0350520Z [CreateOrUpdateLink] Detected wildcard substitution => nested create & name. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0350840Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0351050Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0351380Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0351720Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0351930Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0352250Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0352610Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0352850Z [EnsureLinkCreated] => assigned new ID=3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0353060Z [Test] Update ChangesHandler called: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0353250Z [Test] - Before state: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0353420Z [Test] - After state: (3: 0->0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0353620Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0353820Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0354010Z [Test] - child name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0354220Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0354640Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0354830Z [Test] - son name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0355040Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0355380Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0355570Z [Test] - father name during change: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0355890Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0356090Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0356280Z [Test] - mother name during change: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0356480Z [Test] - All links during change: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0356710Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0356970Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0357220Z [Test] Link: Index=(3: 0->0), Source=0, Target=0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0357480Z [Test] Creating new link: Index=3, Source=0, Target=0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0357720Z [Test] Checking if link exists: True +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0357930Z [Test] Checking if source exists: False +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0358140Z [Test] Checking if target exists: False +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0358370Z [Test] Names before creation: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0358590Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0358820Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0358970Z [Test] - child: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0359130Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0359340Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0359480Z [Test] - son: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0359650Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0359850Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0360000Z [Test] - father: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0360170Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0360380Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0360530Z [Test] - mother: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0360700Z [Trace] Update called with restriction: [3] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0361000Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0361280Z [Test] Update ChangesHandler called: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0361490Z [Test] - Before state: (3: 0->0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0361670Z [Test] - After state: (3: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0361870Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0362080Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0362260Z [Test] - child name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0362470Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0362670Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0362860Z [Test] - son name during change: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0363080Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0363290Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0363500Z [Test] - father name during change: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0363740Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0363940Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0364130Z [Test] - mother name during change: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0364340Z [Test] - All links during change: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0364570Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0364860Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0365140Z [Test] Link: Index=(3: 1->2), Source=1, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0365370Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0365830Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0366290Z [Trace] SetName called for link: 3 with name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0366530Z [Trace] RemoveName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0366750Z [Trace] RemoveName completed for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0366940Z [Trace] SetName result: 118 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0367140Z [Trace] GetName called for link: 4294967292 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0367350Z [Trace] GetName result: String +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0367670Z [ApplyAllPlannedOperations] Name for after.Index 4294967292 = 'String' (post-op) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0368050Z [ProcessQuery] Restoring unexpected deletions if any... +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0368550Z [RestoreUnexpectedLinkDeletions] No unexpected deletions found. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0368860Z [ProcessQuery] Finished processing query. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0369220Z [Test] Update operation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0369420Z [Test] Step 4: Verifying final state +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0369640Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0369840Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0370010Z [Test] Final child ID: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0370190Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0370390Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0370550Z [Test] Final son ID: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0370740Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0370940Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0371100Z [Test] Final father ID: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0371290Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0371490Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0371660Z [Test] Final mother ID: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0371830Z [Test] Final links count: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0372060Z [Test] Final link: Index=(1: 1->1), Source=1, Target=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0372330Z [Test] Final link: Index=(2: 2->2), Source=2, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0372620Z [Test] Final link: Index=(3: 1->2), Source=1, Target=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0372940Z [Test] ===== UpdateNamedLinkNameTest completed successfully ===== +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0373430Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 6->6) (7: 5->6) (8: 4->7) (9: 3->8) (10: 2->9) (11: 1->10) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0373770Z [Test] All links: (1: 1->1) (2: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0373990Z [Test] All links: (10: 10->10) (20: 10->20) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0374200Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0374440Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) (4: 3->3) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0374720Z [Test] All links: (1: 1->1) (2: 1->2) (3: 3->1) (4: 1->4) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0374960Z [Test] All links: (1: 1->1) (2: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0375380Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateNamedLinkNameTest [4 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0376060Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create6LevelNestedLinksTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0376910Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0377910Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithAutoCreateMissingNumericReferences_ShouldCreatePointLinks [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0378760Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksTest [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0379560Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateMixedNamedAndNumericLinks_ShouldReuseExistingLinks [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0380550Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchSelfReferencingAndMakeThemGoOutFromFirstLinkUsingVariablesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0381580Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0382530Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.EnsureCreated_WithSpecialAnyReference_ShouldThrowControlledException [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0383320Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 4->5) (7: 3->6) (8: 2->7) (9: 1->8) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0383650Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0383850Z [Test] All links: (1: 1->2) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0384050Z [Test] All links: (1: 1->2) (2: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0384220Z [Test] All links: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0384450Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 2->1) (5: 3->4) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0384710Z [Test] All links: (1: 1->1) (2: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0392790Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0393140Z [Test] All links: (1: 1->2) (2: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0393570Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create5LevelNestedLinksTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0394510Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchWithExactIndexAndDelete2LevelNestedLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0395280Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateSingleLinkTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0396230Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MixedMultipleUpdatesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0397300Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NestedDeleteAllLinksBySourceAndTargetTest1 [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0398200Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateWithDifferentPairs_ShouldNotDeduplicateDifferentLinks [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0399170Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0400040Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoExactMatch2LevelNestedLinksTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0400950Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoOutOfFirstLinkUsingVariablesTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0401520Z [Test] All links: (3: 3->3) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0401850Z [Test] All links: (1: 1->1) (2: 18->20) (18: 1->21) (19: 1->20) (20: 20->20) (21: 21->21) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0402160Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0402350Z [Test] All links: (1: 0->0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0402580Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0402790Z [Test] All links: (1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0403270Z [Trace] Constructing NamedTypesDecorator with names DB: /var/folders/tb/y368xp_x10s3ty1b_mtl5mxr0000gn/T/tmpA3gEFk.names.links +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0406220Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0409390Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteMatchedLinkAndOutgoingLink_ShouldPreserveExistingParts [4 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0410560Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedFamilyLinksRemovesNamesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0411440Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.ExactMatchAndDelete2LevelNestedLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0412150Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteByNamesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0412870Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithVariableReferences_ShouldSucceed [< 1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0413880Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create2LevelNestedLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0414690Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnySourceTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0415440Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateTwoNamedLinksTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0422600Z [Test] Starting UpdateNamedLinkNameTest +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0422880Z [Test] Step 1: Creating initial link +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0423150Z [ProcessQuery] Query: "(() ((child: father mother)))" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0423430Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0423730Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0424030Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0424440Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0425130Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0425490Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0426180Z [ValidateLinksExistOrWillBeCreated] Named links to be created: child +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0426500Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0426710Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0426910Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0427120Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0427310Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0427510Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0427900Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'father' as point link. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0428300Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0428510Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0428710Z [Trace] Update called with restriction: [1] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0429010Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0429280Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0429520Z [Trace] SetName called for link: 1 with name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0429770Z [Trace] RemoveName called for link: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0429980Z [Trace] RemoveName completed for link: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0430270Z [Trace] SetName result: 108 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0430480Z [Trace] Update called with restriction: [1,0,0] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0430790Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0431060Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0431260Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0431470Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0431850Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'mother' as point link. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0432250Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0432460Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0432660Z [Trace] Update called with restriction: [2] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0432960Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,0,0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0433230Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0433470Z [Trace] SetName called for link: 2 with name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0434050Z [Trace] RemoveName called for link: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0434290Z [Trace] RemoveName completed for link: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0434500Z [Trace] SetName result: 110 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0434720Z [Trace] Update called with restriction: [2,0,0] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0435040Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,2,2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0435310Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0435610Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0435890Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0436100Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0436430Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0436780Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0436990Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0437320Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0437750Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0437990Z [EnsureLinkCreated] => assigned new ID=3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0438230Z [Trace] Update called with restriction: [3] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0438610Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0438910Z [Trace] Update result: 4294967295 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0439370Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0439840Z [Trace] SetName called for link: 3 with name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0440090Z [Trace] RemoveName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0440310Z [Trace] RemoveName completed for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0440750Z [Trace] SetName result: 118 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0441030Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0441310Z [Test] Initial link creation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0441600Z [Test] Step 2: Verifying initial state +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0441820Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0442030Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0442200Z [Test] Initial child ID: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0442590Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0442810Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0442980Z [Test] Initial father ID: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0443170Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0443370Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0443540Z [Test] Initial mother ID: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0443750Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0443960Z [Test] Initial links count: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0444160Z [Test] Initial state verification completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0444380Z [Test] Step 3: Updating link name +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0444570Z [Test] Removing old name 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0444770Z [Trace] RemoveName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0444990Z [Trace] RemoveName completed for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0445190Z [Test] Old name removed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0445370Z [Test] Creating new link with name 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0445610Z [ProcessQuery] Query: "(() ((son: father mother)))" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0445890Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0446180Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0446480Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0446860Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0447250Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0447600Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0447980Z [ValidateLinksExistOrWillBeCreated] Named links to be created: son +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0448290Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0448500Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0448860Z [ValidateReferencesInPattern] Named link 'father' reference validated in substitution pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0449230Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0449440Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0449800Z [ValidateReferencesInPattern] Named link 'mother' reference validated in substitution pattern +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0450220Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0450500Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0450700Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0451020Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0451370Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0451570Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0451900Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0452280Z [EnsureLinkCreated] Link already found => ID=3 => no-op. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0452780Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0453240Z [Trace] SetName called for link: 3 with name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0453480Z [Trace] RemoveName called for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0453700Z [Trace] RemoveName completed for link: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0453900Z [Trace] SetName result: 123 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0454210Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0454490Z [Test] New link creation completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0454690Z [Test] Step 4: Verifying final state +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0454900Z [Trace] GetByName called for name: 'child' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0455100Z [Trace] GetByName result: 0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0455440Z [Trace] GetByName called for name: 'son' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0455650Z [Trace] GetByName result: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0455820Z [Test] Final son ID: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0456060Z [Trace] GetByName called for name: 'father' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0456270Z [Trace] GetByName result: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0456440Z [Test] Final father ID: 1 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0456630Z [Trace] GetByName called for name: 'mother' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0456830Z [Trace] GetByName result: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0457000Z [Test] Final mother ID: 2 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0457200Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0457400Z [Test] Final links count: 3 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0457600Z [Test] Final state verification completed +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0457860Z [Test] UpdateNamedLinkNameTest completed successfully +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0459730Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0460010Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0467210Z [Test] All links: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0514920Z [Test] All links: (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0554980Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 2->3) (5: 1->4) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0568860Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) (5: 3->4) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0587910Z [Test] All links: (1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0604440Z [Test] All links: (1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0605320Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoUpdateUsingVariablesTest [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0606610Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksSelfReferencingUsingVariablesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0607690Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteMultipleLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0608720Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateWithNonExistentReference_ShouldThrowException [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0609770Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source1Target2 [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0610750Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedLinkTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0611690Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create3LevelNestedLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0612760Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateTripleDuplicatePair_ShouldCreateOnlyOneSubLink [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0614950Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithValidSelfReference_ShouldSucceed [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0641940Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0644500Z [Test] All links: (1: 0->0) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0660690Z [Test] All links: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0670230Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0701100Z [Test] All links: (1: 1->1) (2: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0711140Z [Test] All links: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0719200Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 6->6) (7: 7->7) (8: 6->7) (9: 5->8) (10: 4->9) (11: 3->10) (12: 2->11) (13: 1->12) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0741970Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0743130Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationDuringUpdateTest [3 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0743900Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithWildcardReferences_ShouldSucceed [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0744690Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source2Target2 [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0745490Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNamedLinks_MultipleQueries_ShouldReuseSameIds [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0746750Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithNonExistentReference_ShouldThrowException [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0747670Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForSingleLinkUsingVariablesTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0748610Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest2 [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0749370Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create7LevelNestedLinksTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0749870Z [Test] All links: (1: 1->1) (2: 2->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0757180Z [Test] All links: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0774850Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) (5: 4->4) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0800490Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 3->4) (6: 2->5) (7: 1->6) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0825920Z [Test] All links: (1: 1->1) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:48.0837280Z [Test] All links: (1: 1->1) (2: 2->2) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:49.6179870Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkReferencingExistingLink_ShouldSucceed [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:49.6232480Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest1 [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:49.6246080Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNestedDuplicates_ShouldDeduplicateAtAllLevels [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:49.6247370Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create4LevelNestedLinksTest [2 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:49.6248410Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexTest [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:49.6249450Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithSource2Target2Test [1 ms] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:51.1691800Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ExportAlias_WritesNamedReferences [1 s] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:52.7042080Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.AlwaysTriggerOption_StoresTriggerAndAppliesItOnLaterChange [2 s] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:54.2168550Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ExportAlias_WritesNumberedReferences [1 s] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:58.0717290Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.StructureOption_RendersLeftBranchWithIndexes [5 s] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.0948010Z [xUnit.net 00:00:11.64] Finished: Foundation.Data.Doublets.Cli.Tests +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3021150Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ImportOption_ReadsNumberedLinoFile [1 s] +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3069450Z +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3088640Z Test Run Successful. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3088920Z Total tests: 187 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3089060Z Passed: 187 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3089230Z Total time: 13.1244 Seconds +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3250840Z 1>Done Building Project "/Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.sln" (VSTest target(s)). +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3347790Z +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3357630Z Build succeeded. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3358270Z 0 Warning(s) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3358770Z 0 Error(s) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3359170Z +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.3359530Z Time Elapsed 00:00:13.54 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.4632640Z +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.4634470Z Attachments: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.4635310Z /Users/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/TestResults/bdf62bf8-1b36-4443-bdc2-3da534d95f10/coverage.cobertura.xml +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.4925550Z Post job cleanup. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.8007270Z Post job cleanup. +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9250710Z [command]/opt/homebrew/bin/git version +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9439870Z git version 2.54.0 +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9501860Z Copying '/Users/runner/.gitconfig' to '/Users/runner/work/_temp/4b595bd0-7e3f-4b93-933e-eebf78d6acae/.gitconfig' +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9513310Z Temporarily overriding HOME='/Users/runner/work/_temp/4b595bd0-7e3f-4b93-933e-eebf78d6acae' before making global git config changes +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9514310Z Adding repository directory to the temporary git global config as a safe directory +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9517630Z [command]/opt/homebrew/bin/git config --global --add safe.directory /Users/runner/work/link-cli/link-cli +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9620720Z [command]/opt/homebrew/bin/git config --local --name-only --get-regexp core\.sshCommand +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:08:59.9685050Z [command]/opt/homebrew/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.0738130Z [command]/opt/homebrew/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.0790650Z http.https://github.com/.extraheader +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.0802810Z [command]/opt/homebrew/bin/git config --local --unset-all http.https://github.com/.extraheader +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.0862450Z [command]/opt/homebrew/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.1655600Z [command]/opt/homebrew/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.1721240Z [command]/opt/homebrew/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.2600350Z Cleaning up orphan processes +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.4534850Z Terminate orphan process: pid (17184) (VBCSCompiler) +Test (macos-latest) UNKNOWN STEP 2026-05-09T07:09:00.6575730Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-dotnet@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2483205Z Current runner version: '2.334.0' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2508250Z ##[group]Runner Image Provisioner +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2509041Z Hosted Compute Agent +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2509528Z Version: 20260213.493 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2510232Z Commit: 5c115507f6dd24b8de37d8bbe0bb4509d0cc0fa3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2510927Z Build Date: 2026-02-13T00:28:41Z +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2511599Z Worker ID: {8a4bdf01-c3c3-4268-bb25-f832bab91ad6} +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2512388Z Azure Region: westus3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2512918Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2514270Z ##[group]Operating System +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2515176Z Ubuntu +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2515687Z 24.04.4 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2516106Z LTS +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2516610Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2517069Z ##[group]Runner Image +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2517601Z Image: ubuntu-24.04 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2518095Z Version: 20260413.86.1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2519314Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260413.86/images/ubuntu/Ubuntu2404-Readme.md +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2520780Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260413.86 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2521666Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2524597Z ##[group]GITHUB_TOKEN Permissions +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2526607Z Actions: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2527127Z ArtifactMetadata: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2527740Z Attestations: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2528233Z Checks: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2528720Z Contents: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2529174Z Deployments: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2529796Z Discussions: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2530298Z Issues: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2530724Z Metadata: read +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2531267Z Models: read +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2531713Z Packages: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2532186Z Pages: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2532846Z PullRequests: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2533418Z RepositoryProjects: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2533963Z SecurityEvents: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2534735Z Statuses: write +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2535269Z VulnerabilityAlerts: read +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2535782Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2537952Z Secret source: Actions +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2538608Z Prepare workflow directory +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.2966155Z Prepare all required actions +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.3002915Z Getting action download info +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.7458082Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:30.9460636Z Download action repository 'actions/setup-dotnet@v4' (SHA:67a3573c9a986a3f9c594539f4ab511d57bb3ce9) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:31.8317733Z Download action repository 'codecov/codecov-action@v4' (SHA:b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.5378065Z Complete job name: Test (ubuntu-latest) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6083949Z ##[group]Run actions/checkout@v4 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6084782Z with: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6084997Z repository: link-foundation/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6085492Z token: *** +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6085677Z ssh-strict: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6085869Z ssh-user: git +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6086079Z persist-credentials: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6086315Z clean: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6086521Z sparse-checkout-cone-mode: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6086771Z fetch-depth: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6086960Z fetch-tags: false +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6087166Z show-progress: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6087366Z lfs: false +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6087540Z submodules: false +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6087740Z set-safe-directory: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6088168Z env: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6088381Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6088664Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6088906Z DOTNET_NOLOGO: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.6089097Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7199932Z Syncing repository: link-foundation/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7201320Z ##[group]Getting Git version info +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7201706Z Working directory is '/home/runner/work/link-cli/link-cli' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7202257Z [command]/usr/bin/git version +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7904019Z git version 2.53.0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7931201Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7946142Z Temporarily overriding HOME='/home/runner/work/_temp/80d5d11c-e581-4761-86a6-d36afb0225b7' before making global git config changes +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7947246Z Adding repository directory to the temporary git global config as a safe directory +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7952195Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7985847Z Deleting the contents of '/home/runner/work/link-cli/link-cli' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7989531Z ##[group]Initializing the repository +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.7993460Z [command]/usr/bin/git init /home/runner/work/link-cli/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8270628Z hint: Using 'master' as the name for the initial branch. This default branch name +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8271406Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8271949Z hint: to use in all of your new repositories, which will suppress this warning, +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8272355Z hint: call: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8272522Z hint: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8272808Z hint: git config --global init.defaultBranch +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8273113Z hint: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8273400Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8273912Z hint: 'development'. The just-created branch can be renamed via this command: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8274920Z hint: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8275240Z hint: git branch -m +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8275483Z hint: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8275811Z hint: Disable this message with "git config set advice.defaultBranchName false" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8276383Z Initialized empty Git repository in /home/runner/work/link-cli/link-cli/.git/ +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8285270Z [command]/usr/bin/git remote add origin https://github.com/link-foundation/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8317989Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8318641Z ##[group]Disabling automatic garbage collection +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8323359Z [command]/usr/bin/git config --local gc.auto 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8352350Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8352994Z ##[group]Setting up auth +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8360679Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.8390623Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.9499347Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.9529550Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.9753982Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:32.9794150Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:33.0018671Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:33.0055382Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:33.0056106Z ##[group]Fetching the repository +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:33.0064783Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +70a959516ae64dd5878b72f5cb6af961a765aedc:refs/remotes/origin/main +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3701713Z From https://github.com/link-foundation/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3702613Z * [new ref] 70a959516ae64dd5878b72f5cb6af961a765aedc -> origin/main +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3729870Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3730519Z ##[group]Determining the checkout info +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3732635Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3738530Z [command]/usr/bin/git sparse-checkout disable +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3776518Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3808571Z ##[group]Checking out the ref +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.3813240Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4211407Z Switched to a new branch 'main' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4212495Z branch 'main' set up to track 'origin/main'. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4223533Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4262420Z [command]/usr/bin/git log -1 --format=%H +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4286064Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4491032Z ##[group]Run actions/setup-dotnet@v4 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4491352Z with: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4491529Z dotnet-version: 8.0.x +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4491739Z cache: false +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4491903Z env: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4492086Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4492357Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4492593Z DOTNET_NOLOGO: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.4492782Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.6351046Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:34.8933531Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.0614796Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz size is 36689672 bytes. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.0618337Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7369617Z dotnet-install: Downloaded file size is 36689672 bytes. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7370595Z dotnet-install: The remote and local file sizes are equal. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7658630Z dotnet-install: Installed version is 10.0.7 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7721064Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7723316Z dotnet-install: Note that the script does not resolve dependencies during installation. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7725025Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7725853Z dotnet-install: Installation finished successfully. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:35.7768030Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --channel 8.0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:36.0637567Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:36.7089909Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz size is 216822173 bytes. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:36.7092838Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.4859745Z dotnet-install: Downloaded file size is 216822173 bytes. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.4860388Z dotnet-install: The remote and local file sizes are equal. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7363308Z dotnet-install: Installed version is 8.0.420 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7422413Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7423428Z dotnet-install: Note that the script does not resolve dependencies during installation. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7425069Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7426553Z dotnet-install: Installation finished successfully. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7649429Z ##[group]Run dotnet restore +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7649953Z ^[[36;1mdotnet restore^[[0m +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7676438Z shell: /usr/bin/bash -e {0} +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7676881Z env: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7677084Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7677360Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7677592Z DOTNET_NOLOGO: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7677789Z DOTNET_ROOT: /usr/share/dotnet +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:41.7678007Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:45.1902977Z Determining projects to restore... +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0181545Z Restored /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/Foundation.Data.Doublets.Cli.Tests.csproj (in 4.28 sec). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0210560Z Restored /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj (in 4.28 sec). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0580745Z ##[group]Run dotnet build --no-restore --configuration Release +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0581244Z ^[[36;1mdotnet build --no-restore --configuration Release^[[0m +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0604249Z shell: /usr/bin/bash -e {0} +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0604820Z env: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0605198Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0605584Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0605879Z DOTNET_NOLOGO: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0606186Z DOTNET_ROOT: /usr/share/dotnet +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:50.0606415Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:56.6990235Z Foundation.Data.Doublets.Cli -> /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/bin/Release/net8/Foundation.Data.Doublets.Cli.dll +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0119798Z Foundation.Data.Doublets.Cli.Tests -> /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/bin/Release/net8/Foundation.Data.Doublets.Cli.Tests.dll +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0389262Z +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0396496Z Build succeeded. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0397116Z 0 Warning(s) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0397455Z 0 Error(s) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0403015Z +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0403529Z Time Elapsed 00:00:07.79 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0589714Z ##[group]Run dotnet test --no-build --configuration Release --verbosity normal --collect:"XPlat Code Coverage" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0590526Z ^[[36;1mdotnet test --no-build --configuration Release --verbosity normal --collect:"XPlat Code Coverage"^[[0m +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0611623Z shell: /usr/bin/bash -e {0} +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0611859Z env: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0612057Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0612342Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0612584Z DOTNET_NOLOGO: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0612794Z DOTNET_ROOT: /usr/share/dotnet +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.0613034Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.2354786Z Build started 05/09/2026 07:08:58. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.3963424Z 1>Project "/home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.sln" on node 1 (VSTest target(s)). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.3965332Z 1>ValidateSolutionConfiguration: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.3966466Z Building solution configuration "Release|Any CPU". +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:58.7216732Z Test run for /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/bin/Release/net8/Foundation.Data.Doublets.Cli.Tests.dll (.NETCoreApp,Version=v8.0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:08:59.0875780Z A total of 1 test files matched the specified pattern. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.4009827Z [xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v3.1.5+1b188a7b0a (64-bit .NET 8.0.26) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.4762056Z [xUnit.net 00:00:00.09] Discovering: Foundation.Data.Doublets.Cli.Tests +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.5502544Z [xUnit.net 00:00:00.16] Discovered: Foundation.Data.Doublets.Cli.Tests +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.5953952Z [xUnit.net 00:00:00.21] Starting: Foundation.Data.Doublets.Cli.Tests +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6697366Z === Debug: Alternative Scenario === +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6697997Z Input changes: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6698373Z 1. (1: 1 2) -> (0: 0 0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6698741Z 2. (1: 1 2) -> (1: 2 1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6699085Z 3. (2: 2 1) -> (2: 1 2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6699495Z Actual simplified changes: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6699872Z 1. (1: 1 2) -> (1: 2 1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6700648Z 2. (2: 2 1) -> (2: 1 2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6700998Z Count: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.6701281Z === End Debug === +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7791771Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_Issue26_AlternativeScenario_NoSimplificationOccurs [37 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7800355Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_NoChange_StillKeepsFirstAndLastState [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7802732Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_Issue26_UpdateOperationSimplification [< 1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7805340Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_SpecificExample_RemovesIntermediateStates [1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7807830Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleChainsFromSameBefore_RemovesIntermediateStates [< 1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7810380Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleBranchesFromSameInitial_ProducesCorrectFinalStates [< 1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7813067Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleBranchesFromSameInitial_ProducesCorrectFinalStates_InCorrectOrder [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7815937Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_SpecificExample_KeepsUnchangedStates [< 1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7821173Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Terminate_Enumeration_When_Iterated_Without_Take [36 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7822958Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Validate_Existing_Links_With_Ulong [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7824239Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Destructure_PinnedTypes [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7826151Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Validate_Existing_Links [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7827417Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Reset_Enumerator [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7828903Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Throw_Exception_For_Invalid_Link_Structure [14 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7830309Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Create_And_Iterate_Over_Types [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.7831801Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Create_And_Iterate_Over_Types_With_RealDataStore [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8547068Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_ReproducesNumberedLinksAtTheirExplicitIndexes [33 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8549247Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_TreatsOutOfRangeNumbersAsNames [25 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8551717Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.NeverRemovesMatchingStoredTrigger [201 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8553977Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_UnquotesNamesWrittenByExporter [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8556284Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_CreatesNamedReferencesAsPointLinks [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8558671Z Passed Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.ExplicitNumericIdUpdate_CanBeReversedWithAnotherUpdate [75 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8561277Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.AlwaysTriggerIsStoredInLinksAndAppliedAfterWrite [15 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8754106Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateLinkWithSource2Target2Test [10 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8765686Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteAllLinksByIndexTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8766982Z Passed Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.NamedLink_CreateDeleteRecreate_DoesNotLeaveStaleNameMapping [14 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8768397Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.OnceTriggerDeletesItselfAfterFirstMatch [12 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8772627Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Implement_Both_ILinks_And_IPinnedTypes [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8774555Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8776362Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetriveUserDefinedTypeTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8900327Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Support_Deconstruction [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8902509Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "UnicodeSymbol") [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8903799Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteLinksByAnyTargetTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8906260Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "EmptyString") [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8908468Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteLinksByAnySourceTest [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8910220Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Work_As_ILinks_Decorator [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.8911946Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Enumerate_PinnedTypes [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9166952Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteMultipleLinksTest [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9169579Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "String") [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9171186Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateMultipleLinksTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9172751Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "Name") [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9196213Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "UnicodeSequence") [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9198858Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "Type") [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9201349Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameIsRemovedWhenExternalReferenceIsDeletedTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9202573Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.ReverseSourceWithTargetUsingVariablesTest [14 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9314601Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkTest [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9318543Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameExternalReferenceTest [11 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9320640Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.NoUpdateUsingVariablesTest [8 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9332017Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteSingleLinkTest_Source1Target2 [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9334022Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteSingleLinkTest_Source2Target2 [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9336196Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.MixedMultipleUpdatesTest [2 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9337800Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveUnicodeStringTest [12 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9443677Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteSingleLinkTest_Source2Target2 [2 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9446580Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveSimpleStringTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9448008Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteMultipleLinksTest [12 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9449074Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest [10 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9450228Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.DeletingNonNamedLinkDoesNotAffectOtherNamesTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9451305Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateSingleLinkTest [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9452306Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9657710Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.UpdateSingleLinkTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9661306Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.MultipleUpdatesTest [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9663282Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveEmptyStringTest [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9665434Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateLinkWithSource2Target2Test [13 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9667507Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest [14 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9669479Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.RetrieveTypeByNameTest [15 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9671108Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.MultipleUpdatesTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9828061Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreationDuringUpdateTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9832575Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateMultipleLinksTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9835015Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringsTest [8 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9837338Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.UpdateSingleLinkTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9839273Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteSingleLinkTest_Source1Target2 [3 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9841263Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9843438Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameIsRemovedWhenLinkIsDeletedTest [8 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:00.9904671Z [Test] All links: (1: 2->1) (2: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0082793Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeletionDuringUpdateTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0085363Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.ExternalReferenceCanUseNameThatAlreadyExistsInternallyTest [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0087821Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForAllLinksUsingVariablesTest [22 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0089870Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetName_OverwriteOldName [13 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0092121Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "test.db", expected: "test.names.links") [< 1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0095101Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "a.b.c", expected: "a.b.names.links") [< 1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0097974Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "/tmp/test.db", expected: "/tmp/test.names.links") [< 1 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0118182Z [Trace] Constructing NamedLinksDecorator with names DB: /tmp/tmpMIW1SU.names.links +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0316156Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.AfterCreation_SetNameAndGetName_ShouldWork [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0325501Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_UsesProvidedPinnedTypesDecorator [12 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0327684Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.CanConstructNamedLinksDecorator [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0329509Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_NonExistent_DoesNotThrow [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0331224Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanRemoveNames [10 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0345798Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_ShouldReturnNullAfterRemoval [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0348004Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_DeleteRemovesAssociatedNames [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0349920Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetNameAndGetName_ShouldReturnSameName [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0499262Z [Trace] Constructing SimpleLinksDecorator with names DB: /tmp/tmpkty1aR.names.links +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0595072Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanSetAndGetNames [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0597619Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.DeleteLink_RemovesNameAutomatically [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0599683Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_HandlesNonexistentNames [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0601724Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.CanConstructSimpleLinksDecorator [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0604303Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ReassigningExistingNameMovesNameToNewLink [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0606748Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.Delete_WithRestriction_DoesNotThrow [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0608675Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsILinks [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0610579Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow_WithTracing [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0825108Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanConstructFromDatabaseFilename [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0829533Z Passed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0831689Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanEnumeratePinnedTypes [8 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0833873Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WriteToFile_WritesCompleteDatabaseAsLinoLines [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0836525Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersLeftBranchWithLinkIndexes [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0838577Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanOverwriteNames [8 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0840667Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersRepeatedSourceAndTargetAsReferenceOnRight [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0842745Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsIPinnedTypes [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.0989206Z [Test] All links: (1: 2->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1063255Z [Test] All links: (1: 1->2) (2: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1107566Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsINamedTypes [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1109607Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_EscapesNamesThatNeedQuoting [13 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1113254Z Passed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanGetLinkByName [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1115694Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNamesForIndexesSourcesAndTargets_WhenNamesExist [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1117677Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NameLookupConsistencyTest [100 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1119477Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_SelectsQuoteStyleForNamesContainingQuotes [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1121664Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapEqualSourceAndTargetUsingVariablesHasAllChangesTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1123879Z Passed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNumberedReferences_WhenLinksHaveNoNames [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1126011Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MultipleUpdatesTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1127158Z [Test] All links: (1: 1->1) (3: 3->3) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1159481Z [Test] All links: (1: 1->1) (2: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1231322Z [Test] All links: (21: 21->21) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1306678Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1354106Z [Test] All links: (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1371089Z [Trace] Constructing NamedTypesDecorator with names DB: /tmp/tmpj6hSR9.names.links +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1398703Z [ProcessQuery] Query: "(() ((link: link link)))" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1427100Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1450415Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1454277Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1455973Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1457664Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1458911Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1460182Z [ValidateLinksExistOrWillBeCreated] Named links to be created: link +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1461376Z [Trace] GetByName called for name: 'link' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1462249Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1463505Z [ValidateReferencesInPattern] Named link 'link' reference validated in substitution pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1464918Z [Trace] GetByName called for name: 'link' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1465777Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1466943Z [ValidateReferencesInPattern] Named link 'link' reference validated in substitution pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1468472Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1469458Z [Trace] GetByName called for name: 'link' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1470236Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1471087Z [Trace] Update called with restriction: [1] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1472029Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1473049Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1474075Z [EnsureNestedLinkCreatedRecursively] Created named leaf 'link' => ID=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1475418Z [Trace] SetName called for link: 1 with name: 'link' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1476246Z [Trace] RemoveName called for link: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1476999Z [Trace] RemoveName completed for link: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1477745Z [Trace] SetName result: 100 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1478694Z [EnsureNestedLinkCreatedRecursively] Updating link ID=1 => Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1479843Z [Trace] Update called with restriction: [1,0,0] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1480800Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1482268Z [EnsureNestedLinkCreatedRecursively] Update handler: before=(1: 0->0), after=(1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1483515Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1484813Z [ProcessQuery] Created link ID #1 from substitution pattern. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1486098Z [Test] All links: (1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1486934Z [Trace] GetByName called for name: 'link' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1487805Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1488533Z [Trace] GetName called for link: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1489260Z [Trace] GetName result: link +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1522116Z [Test] All links: (1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1665941Z [Test] All links: (1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1687089Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1700667Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1702679Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteFullPointWithUnboundParts_ShouldKeepFullPoint [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1705267Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchAndDelete2LevelNestedLinksTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1707190Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnyTargetTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1709138Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithStringId_ShouldCreateSingleLink [10 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1711017Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeletionDuringUpdateTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1713128Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithMissingNamedReferences_ShouldThrowException [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1715556Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithIntegerId_ShouldCreateSingleLink [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1716813Z [Test] All links: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1765377Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1812199Z [Test] All links: (1: 1->2) (2: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1870961Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1946739Z [Test] All links: (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.1977234Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) (4: 3->3) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2067100Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2121847Z [Test] All links: (1: 1->2) (2: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2195730Z [Test] All links: (1: 2->1) (2: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2213390Z [Test] ===== Starting UpdateNamedLinkNameTest ===== +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2229795Z [Trace] Constructing NamedTypesDecorator with names DB: /tmp/tmpkLQktZ.names.links +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2313916Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksByIndexTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2316296Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedFamilyLinksTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2318709Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNumericLinks_ShouldCreateOnlyOneSubLink [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2325334Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.StringAliasesInVariableRestriction_ShouldConstrainMatchesToNamedLinks [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2328218Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2330687Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNamedLinks_ShouldCreateOnlyOneSubLink [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2334043Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithAutoCreateMissingNamedReferences_ShouldCreatePointLinks [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2337061Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksWithCrossReferences_ShouldSucceed [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2339519Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoIntoFirstLinkUsingVariablesTest [8 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2342078Z [Test] Constants: Null=0, Any=4294967292, Continue=4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2342956Z [Test] Step 1: Creating initial link +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2343715Z [Test] Query: (() ((child: father mother))) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2344809Z [ProcessQuery] Query: "(() ((child: father mother)))" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2345704Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2346795Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2347854Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2349106Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2350415Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2351525Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2352730Z [ValidateLinksExistOrWillBeCreated] Named links to be created: child +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2353762Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2354760Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2355529Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2360334Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2361113Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2361874Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2363030Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'father' as point link. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2364233Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2365254Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2365999Z [Trace] Update called with restriction: [1] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2366935Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2367833Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2368935Z [Trace] SetName called for link: 1 with name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2369809Z [Trace] RemoveName called for link: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2370589Z [Trace] RemoveName completed for link: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2371318Z [Trace] SetName result: 108 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2372426Z [Trace] Update called with restriction: [1,0,0] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2373412Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2374640Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2375452Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2376205Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2377384Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'mother' as point link. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2379458Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2380614Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2382151Z [Trace] Update called with restriction: [2] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2385803Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,0,0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2386543Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2387239Z [Trace] SetName called for link: 2 with name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2388059Z [Trace] RemoveName called for link: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2388752Z [Trace] RemoveName completed for link: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2389377Z [Trace] SetName result: 110 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2389845Z [Trace] Update called with restriction: [2,0,0] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2390517Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,2,2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2391109Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2391710Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2392380Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2392853Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2393574Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2394605Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2395112Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2395855Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2396973Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2397560Z [EnsureLinkCreated] => assigned new ID=3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2398084Z [Trace] Update called with restriction: [3] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2398763Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2399393Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2400412Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2401478Z [Trace] SetName called for link: 3 with name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2402047Z [Trace] RemoveName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2402553Z [Trace] RemoveName completed for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2403027Z [Trace] SetName result: 118 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2403593Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2404217Z [Test] Initial link creation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2405039Z [Test] Step 2: Verifying initial state +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2405557Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2406043Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2406524Z [Test] Initial child ID: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2406985Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2407480Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2407887Z [Test] Initial father ID: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2408327Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2408816Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2409204Z [Test] Initial mother ID: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2409604Z [Test] Initial links count: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2410172Z [Test] Initial link: Index=(1: 1->1), Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2410838Z [Test] Initial link: Index=(2: 2->2), Source=2, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2411515Z [Test] Initial link: Index=(3: 1->2), Source=1, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2412424Z [Test] Initial state verification completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2413081Z [Test] Step 3: Updating link name from 'child' to 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2413782Z [Test] Query: (((child: father mother)) ((son: father mother))) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2414584Z [Test] Current state before update: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2414912Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2415191Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2415450Z [Test] - child name exists: True +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2415715Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2415981Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2416214Z [Test] - son name exists: False +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2416485Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2416763Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2416997Z [Test] - father name exists: True +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2417257Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2417519Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2417750Z [Test] - mother name exists: True +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2418017Z [Test] Starting ProcessQuery for update... +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2418302Z [Test] Current links before update: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2418607Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2418934Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2419248Z [Test] Link: Index=(3: 1->2), Source=1, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2419653Z [ProcessQuery] Query: "(((child: father mother)) ((son: father mother)))" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2420070Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2420442Z [ProcessQuery] Restriction link => Id="" Values.Count=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2420809Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2421160Z [ProcessQuery] Restriction patterns to parse: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2421485Z [ProcessQuery] Substitution patterns to parse: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2422054Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2422787Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2423610Z [ValidateLinksExistOrWillBeCreated] Named links to be created: son +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2424780Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2425359Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2426142Z [ValidateReferencesInPattern] Named link 'child' reference validated in restriction pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2426975Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2427451Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2428218Z [ValidateReferencesInPattern] Named link 'father' reference validated in restriction pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2429058Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2429532Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2430328Z [ValidateReferencesInPattern] Named link 'mother' reference validated in restriction pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2430949Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2431232Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2431677Z [ValidateReferencesInPattern] Named link 'father' reference validated in substitution pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2432153Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2432414Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2432843Z [ValidateReferencesInPattern] Named link 'mother' reference validated in substitution pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2433368Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2433973Z [ProcessQuery] Detected single sub-link with 2 sub-values => replaced with one composite restriction pattern. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2434947Z [ProcessQuery] Converting restriction patterns => done. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2435339Z [ProcessQuery] Converting substitution patterns => done. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2435734Z [ProcessQuery] Finding solutions for restriction patterns... +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2436085Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2436354Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2436797Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2437089Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2437340Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2437603Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2437941Z [ProcessQuery] Found 1 total solution(s) matching restriction patterns. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2438327Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2438583Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2438827Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2439090Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2439323Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2439583Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2439812Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2440068Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2440299Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2440559Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2440796Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2441053Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2441320Z [ProcessQuery] allSolutionsNoOperation=False +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2441729Z [ProcessQuery] Some solutions lead to actual changes => building operations. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2442137Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2442389Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2442630Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2442888Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2443131Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2443381Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2443647Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2443904Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2444137Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2444547Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2444780Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2445053Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2445438Z [ProcessQuery] For a solution => substitution links count=1, restriction links count=1. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2446101Z [ProcessQuery] => 2 operation(s) derived from these patterns. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2446449Z [ProcessQuery] All planned operations => 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2446768Z [ProcessQuery] Applying all planned operations... +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2447208Z [ApplyAllPlannedOperations] Operation: before=(3:1->2), after=(0:0->0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2447594Z [Trace] GetName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2447849Z [Trace] GetName result: child +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2448167Z [ApplyAllPlannedOperations] Name for before.Index 3 = 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2448587Z [ApplyAllPlannedOperations] Deleting link => ID=3, S=1, T=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2448969Z [RemoveLinks] Found 1 link(s) matching (ID=3, S=1, T=2). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2449289Z [Trace] RemoveName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2449566Z [Trace] RemoveName completed for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2449857Z [RemoveLinks] Deleting link => ID=3, S=1, T=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2450177Z [Trace] Delete called with restriction: [3,1,2] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2450741Z [Trace] Debug: this._links is of type: Foundation.Data.Doublets.Cli.PinnedTypesDecorator`1[System.UInt32] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2451274Z [Trace] Debug: Calling underlying _links.Delete +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2451650Z [Trace] Debug: handlerWrapper invoked - before=3,1,2, after=3,0,0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2452014Z [Test] Update ChangesHandler called: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2452278Z [Test] - Before state: (3: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2452520Z [Test] - After state: (3: 0->0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2452773Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2453031Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2453265Z [Test] - child name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2453524Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2453781Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2454129Z [Test] - son name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2454704Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2454988Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2455244Z [Test] - father name during change: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2455530Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2455785Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2456016Z [Test] - mother name during change: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2456263Z [Test] - All links during change: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2456550Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2456859Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2457162Z [Test] Link: Index=(3: 0->0), Source=0, Target=0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2457519Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=null +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2457867Z [Trace] RemoveName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2458136Z [Trace] RemoveName completed for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2458402Z [Test] Update ChangesHandler called: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2458663Z [Test] - Before state: (3: 0->0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2458882Z [Test] - After state: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2459125Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2459384Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2459617Z [Test] - child name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2459871Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2460126Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2460355Z [Test] - son name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2460614Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2460875Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2461099Z [Test] - father name during change: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2461374Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2461628Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2461860Z [Test] - mother name during change: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2462108Z [Test] - All links during change: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2462384Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2462697Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2463012Z [Trace] Debug: Delete result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2463609Z [ApplyAllPlannedOperations] Operation: before=(0:0->0), after=(4294967292:1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2464025Z [Trace] GetName called for link: 4294967292 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2464295Z [Trace] GetName result: String +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2464833Z [ApplyAllPlannedOperations] Name for after.Index 4294967292 = 'String' (pre-op) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2465345Z [ApplyAllPlannedOperations] Creating link => ID=4294967292, S=1, T=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2465857Z [CreateOrUpdateLink] Detected wildcard substitution => nested create & name. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2466270Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2466534Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2466916Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2467341Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2467603Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2467989Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2468435Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2468743Z [EnsureLinkCreated] => assigned new ID=3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2469039Z [Test] Update ChangesHandler called: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2469281Z [Test] - Before state: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2469501Z [Test] - After state: (3: 0->0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2469753Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2470014Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2470237Z [Test] - child name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2470515Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2470760Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2470987Z [Test] - son name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2471249Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2471503Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2471869Z [Test] - father name during change: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2472141Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2472403Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2472627Z [Test] - mother name during change: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2472878Z [Test] - All links during change: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2473145Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2473520Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2473825Z [Test] Link: Index=(3: 0->0), Source=0, Target=0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2474184Z [Test] Creating new link: Index=3, Source=0, Target=0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2474628Z [Test] Checking if link exists: True +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2474885Z [Test] Checking if source exists: False +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2475152Z [Test] Checking if target exists: False +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2475407Z [Test] Names before creation: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2475659Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2475914Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2476119Z [Test] - child: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2476328Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2476591Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2476787Z [Test] - son: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2476998Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2477258Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2477457Z [Test] - father: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2477673Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2477927Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2478134Z [Test] - mother: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2478347Z [Trace] Update called with restriction: [3] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2478703Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2479069Z [Test] Update ChangesHandler called: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2479325Z [Test] - Before state: (3: 0->0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2479568Z [Test] - After state: (3: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2503057Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2503623Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2504031Z [Test] - child name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2505126Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2505594Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2506040Z [Test] - son name during change: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2506532Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2507010Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2507490Z [Test] - father name during change: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2508017Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2508518Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2508955Z [Test] - mother name during change: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2509413Z [Test] - All links during change: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2509930Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2510512Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2511080Z [Test] Link: Index=(3: 1->2), Source=1, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2511632Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2512582Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2513223Z [Trace] SetName called for link: 3 with name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2513545Z [Trace] RemoveName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2513823Z [Trace] RemoveName completed for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2514100Z [Trace] SetName result: 118 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2514644Z [Trace] GetName called for link: 4294967292 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2514944Z [Trace] GetName result: String +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2515360Z [ApplyAllPlannedOperations] Name for after.Index 4294967292 = 'String' (post-op) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2515850Z [ProcessQuery] Restoring unexpected deletions if any... +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2516273Z [RestoreUnexpectedLinkDeletions] No unexpected deletions found. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2516659Z [ProcessQuery] Finished processing query. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2517008Z [Test] Update operation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2517466Z [Test] Step 4: Verifying final state +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2517760Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2518038Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2518270Z [Test] Final child ID: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2518506Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2518771Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2518994Z [Test] Final son ID: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2519230Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2519505Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2519720Z [Test] Final father ID: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2519965Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2520224Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2520444Z [Test] Final mother ID: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2520655Z [Test] Final links count: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2520938Z [Test] Final link: Index=(1: 1->1), Source=1, Target=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2521298Z [Test] Final link: Index=(2: 2->2), Source=2, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2521658Z [Test] Final link: Index=(3: 1->2), Source=1, Target=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2522056Z [Test] ===== UpdateNamedLinkNameTest completed successfully ===== +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2522672Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 6->6) (7: 5->6) (8: 4->7) (9: 3->8) (10: 2->9) (11: 1->10) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2523123Z [Test] All links: (1: 1->1) (2: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2545579Z [Test] All links: (10: 10->10) (20: 10->20) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2598514Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2653154Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) (4: 3->3) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2708052Z [Test] All links: (1: 1->1) (2: 1->2) (3: 3->1) (4: 1->4) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2758656Z [Test] All links: (1: 1->1) (2: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2844734Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateNamedLinkNameTest [15 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2846603Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create6LevelNestedLinksTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2848724Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2851581Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithAutoCreateMissingNumericReferences_ShouldCreatePointLinks [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2853738Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2855918Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateMixedNamedAndNumericLinks_ShouldReuseExistingLinks [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2858388Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchSelfReferencingAndMakeThemGoOutFromFirstLinkUsingVariablesTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2861052Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2863403Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.EnsureCreated_WithSpecialAnyReference_ShouldThrowControlledException [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2867666Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 4->5) (7: 3->6) (8: 2->7) (9: 1->8) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2910145Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.2963382Z [Test] All links: (1: 1->2) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3015151Z [Test] All links: (1: 1->2) (2: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3068121Z [Test] All links: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3121647Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 2->1) (5: 3->4) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3173549Z [Test] All links: (1: 1->1) (2: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3227329Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3277920Z [Test] All links: (1: 1->2) (2: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3316077Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create5LevelNestedLinksTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3318183Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchWithExactIndexAndDelete2LevelNestedLinksTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3319387Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateSingleLinkTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3320267Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MixedMultipleUpdatesTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3321244Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NestedDeleteAllLinksBySourceAndTargetTest1 [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3322958Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateWithDifferentPairs_ShouldNotDeduplicateDifferentLinks [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3325477Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3327697Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoExactMatch2LevelNestedLinksTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3329689Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoOutOfFirstLinkUsingVariablesTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3336021Z [Test] All links: (3: 3->3) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3411647Z [Test] All links: (1: 1->1) (2: 18->20) (18: 1->21) (19: 1->20) (20: 20->20) (21: 21->21) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3518648Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3636908Z [Test] All links: (1: 0->0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3689775Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3736059Z [Test] All links: (1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3742234Z [Trace] Constructing NamedTypesDecorator with names DB: /tmp/tmp2eMUQH.names.links +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3808014Z [Test] Starting UpdateNamedLinkNameTest +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3808673Z [Test] Step 1: Creating initial link +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3809248Z [ProcessQuery] Query: "(() ((child: father mother)))" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3809913Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3811041Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3814317Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3815486Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3816357Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3817201Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3818116Z [ValidateLinksExistOrWillBeCreated] Named links to be created: child +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3818894Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3819411Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3819886Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3820392Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3820856Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3821388Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3822229Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'father' as point link. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3823172Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3823652Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3824108Z [Trace] Update called with restriction: [1] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3825192Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3825815Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3826343Z [Trace] SetName called for link: 1 with name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3826893Z [Trace] RemoveName called for link: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3827381Z [Trace] RemoveName completed for link: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3827892Z [Trace] SetName result: 108 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3828356Z [Trace] Update called with restriction: [1,0,0] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3829077Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3829684Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3830420Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3830907Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3831769Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'mother' as point link. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3832663Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3833135Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3833612Z [Trace] Update called with restriction: [2] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3834265Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,0,0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3835135Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3835692Z [Trace] SetName called for link: 2 with name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3836262Z [Trace] RemoveName called for link: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3836767Z [Trace] RemoveName completed for link: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3837292Z [Trace] SetName result: 110 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3837774Z [Trace] Update called with restriction: [2,0,0] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3838473Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,2,2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3838832Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3839171Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3839533Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3839803Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3840210Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3840661Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3840946Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3841348Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3841807Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3842131Z [EnsureLinkCreated] => assigned new ID=3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3842416Z [Trace] Update called with restriction: [3] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3842778Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3843122Z [Trace] Update result: 4294967295 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3843779Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3844916Z [Trace] SetName called for link: 3 with name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3845222Z [Trace] RemoveName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3845495Z [Trace] RemoveName completed for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3845749Z [Trace] SetName result: 118 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3846063Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3846399Z [Test] Initial link creation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3846663Z [Test] Step 2: Verifying initial state +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3846927Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3847190Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3847407Z [Test] Initial child ID: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3847645Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3847911Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3848131Z [Test] Initial father ID: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3848371Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3848629Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3848847Z [Test] Initial mother ID: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3849310Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3849614Z [Test] Initial links count: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3849872Z [Test] Initial state verification completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3850150Z [Test] Step 3: Updating link name +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3850398Z [Test] Removing old name 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3850644Z [Trace] RemoveName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3850924Z [Trace] RemoveName completed for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3851174Z [Test] Old name removed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3851407Z [Test] Creating new link with name 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3851711Z [ProcessQuery] Query: "(() ((son: father mother)))" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3852055Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3852553Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3852938Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3853408Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3853884Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3854472Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3854956Z [ValidateLinksExistOrWillBeCreated] Named links to be created: son +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3855346Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3855612Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3856057Z [ValidateReferencesInPattern] Named link 'father' reference validated in substitution pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3856530Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3856790Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3857214Z [ValidateReferencesInPattern] Named link 'mother' reference validated in substitution pattern +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3857740Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3858088Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3858363Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3858967Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3859767Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3860247Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3860979Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3861856Z [EnsureLinkCreated] Link already found => ID=3 => no-op. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3863012Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3864069Z [Trace] SetName called for link: 3 with name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3864993Z [Trace] RemoveName called for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3865544Z [Trace] RemoveName completed for link: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3866035Z [Trace] SetName result: 123 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3866601Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3867454Z [Test] New link creation completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3867918Z [Test] Step 4: Verifying final state +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3868432Z [Trace] GetByName called for name: 'child' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3868862Z [Trace] GetByName result: 0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3869279Z [Trace] GetByName called for name: 'son' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3869747Z [Trace] GetByName result: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3870131Z [Test] Final son ID: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3870542Z [Trace] GetByName called for name: 'father' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3871028Z [Trace] GetByName result: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3871415Z [Test] Final father ID: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3871888Z [Trace] GetByName called for name: 'mother' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3872352Z [Trace] GetByName result: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3872693Z [Test] Final mother ID: 2 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3873076Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3873533Z [Test] Final links count: 3 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3873936Z [Test] Final state verification completed +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3876315Z [Test] UpdateNamedLinkNameTest completed successfully +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3905068Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3907196Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteMatchedLinkAndOutgoingLink_ShouldPreserveExistingParts [8 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3909658Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedFamilyLinksRemovesNamesTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3911944Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.ExactMatchAndDelete2LevelNestedLinksTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3913915Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteByNamesTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3916387Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithVariableReferences_ShouldSucceed [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3918320Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create2LevelNestedLinksTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3919991Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnySourceTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3921121Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3922191Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateTwoNamedLinksTest [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.3972388Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4028736Z [Test] All links: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4145251Z [Test] All links: (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4262499Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 2->3) (5: 1->4) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4310173Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) (5: 3->4) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4369752Z [Test] All links: (1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4426067Z [Test] All links: (1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4457155Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoUpdateUsingVariablesTest [10 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4480382Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksSelfReferencingUsingVariablesTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4483182Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteMultipleLinksTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4485732Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateWithNonExistentReference_ShouldThrowException [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4487871Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source1Target2 [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4489873Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedLinkTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4492116Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create3LevelNestedLinksTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4495429Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateTripleDuplicatePair_ShouldCreateOnlyOneSubLink [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4499206Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithValidSelfReference_ShouldSucceed [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4500699Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4551896Z [Test] All links: (1: 0->0) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4575531Z [Test] All links: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4650384Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4777358Z [Test] All links: (1: 1->1) (2: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4858640Z [Test] All links: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4936904Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 6->6) (7: 7->7) (8: 6->7) (9: 5->8) (10: 4->9) (11: 3->10) (12: 2->11) (13: 1->12) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.4998255Z [Test] All links: (1: 1->1) (2: 2->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5028872Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5035867Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationDuringUpdateTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5047632Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithWildcardReferences_ShouldSucceed [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5051215Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source2Target2 [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5054138Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNamedLinks_MultipleQueries_ShouldReuseSameIds [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5058216Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithNonExistentReference_ShouldThrowException [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5062083Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForSingleLinkUsingVariablesTest [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5066172Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest2 [6 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5070339Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create7LevelNestedLinksTest [7 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5073047Z [Test] All links: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5092075Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) (5: 4->4) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5147317Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 3->4) (6: 2->5) (7: 1->6) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5205073Z [Test] All links: (1: 1->1) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:01.5256281Z [Test] All links: (1: 1->1) (2: 2->2) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:03.0038333Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkReferencingExistingLink_ShouldSucceed [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:03.0040768Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest1 [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:03.0043119Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNestedDuplicates_ShouldDeduplicateAtAllLevels [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:03.0045811Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create4LevelNestedLinksTest [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:03.0047558Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexTest [5 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:03.0048799Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithSource2Target2Test [4 ms] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:04.5034750Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ExportAlias_WritesNamedReferences [3 s] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:07.9625147Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.AlwaysTriggerOption_StoresTriggerAndAppliesItOnLaterChange [3 s] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:09.8562990Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ExportAlias_WritesNumberedReferences [1 s] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:19.3189480Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.StructureOption_RendersLeftBranchWithIndexes [9 s] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.1187191Z [xUnit.net 00:00:20.73] Finished: Foundation.Data.Doublets.Cli.Tests +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5257419Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ImportOption_ReadsNumberedLinoFile [1 s] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5354873Z +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5393201Z Test Run Successful. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5393659Z Total tests: 187 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5393997Z Passed: 187 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5396150Z Total time: 22.4489 Seconds +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5617806Z 1>Done Building Project "/home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.sln" (VSTest target(s)). +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5712608Z +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5730713Z Build succeeded. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5741345Z 0 Warning(s) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5741896Z 0 Error(s) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5742082Z +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.5742301Z Time Elapsed 00:00:23.33 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.7384017Z +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.7389961Z Attachments: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.7392435Z /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/TestResults/ec42d62f-d7fc-49c0-a207-404ac844be29/coverage.cobertura.xml +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8000380Z ##[group]Run codecov/codecov-action@v4 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8000656Z with: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8000828Z fail_ci_if_error: false +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8001030Z env: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8001210Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8001471Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8001701Z DOTNET_NOLOGO: true +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8001897Z DOTNET_ROOT: /usr/share/dotnet +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8002117Z ##[endgroup] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8901950Z eventName: push +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:21.8911449Z ==> linux OS detected +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.1481576Z https://cli.codecov.io/latest/linux/codecov.SHA256SUM +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.2743548Z gpg: directory '/home/runner/.gnupg' created +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.2745291Z gpg: keybox '/home/runner/.gnupg/pubring.kbx' created +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.2758320Z gpg: /home/runner/.gnupg/trustdb.gpg: trustdb created +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.2759548Z gpg: key 806BB28AED779869: public key "Codecov Uploader (Codecov Uploader Verification Key) " imported +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.2945223Z gpg: Total number processed: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.2945784Z gpg: imported: 1 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3000644Z gpg: Signature made Tue Apr 21 19:28:03 2026 UTC +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3001474Z gpg: using RSA key 27034E7FDB850E0BBC2C62FF806BB28AED779869 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3004551Z gpg: Good signature from "Codecov Uploader (Codecov Uploader Verification Key) " [unknown] +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3005683Z gpg: WARNING: This key is not certified with a trusted signature! +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3006499Z gpg: There is no indication that the signature belongs to the owner. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3007343Z Primary key fingerprint: 2703 4E7F DB85 0E0B BC2C 62FF 806B B28A ED77 9869 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3234024Z ==> Uploader SHASUM verified (8930c4bb30254a42f3d8c340706b1be340885e20c0df5160a24efa2e030e662b codecov) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.3235242Z ==> Running version latest +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.4061941Z Could not pull latest version information: SyntaxError: Unexpected token '<', " Running git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.4156148Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.4202506Z ==> Running command '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov create-commit' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.4205275Z [command]/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov create-commit --git-service github +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.7809737Z info - 2026-05-09 07:09:22,780 -- ci service found: github-actions +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.7902422Z warning - 2026-05-09 07:09:22,789 -- No config file could be found. Ignoring config. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.8212571Z warning - 2026-05-09 07:09:22,820 -- Branch `main` is protected but no token was provided +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:22.8213710Z warning - 2026-05-09 07:09:22,820 -- For information on Codecov upload tokens, see https://docs.codecov.com/docs/codecov-tokens +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.0556231Z info - 2026-05-09 07:09:23,055 -- Commit creating complete +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.0557408Z error - 2026-05-09 07:09:23,055 -- Commit creating failed: {"message":"Token required - not valid tokenless upload"} +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.1793439Z ==> Running command '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov create-report' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.1795783Z [command]/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov create-report --git-service github +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.5368109Z info - 2026-05-09 07:09:23,536 -- ci service found: github-actions +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.5461556Z warning - 2026-05-09 07:09:23,545 -- No config file could be found. Ignoring config. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.9222810Z info - 2026-05-09 07:09:23,921 -- Report creating complete +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:23.9227645Z error - 2026-05-09 07:09:23,922 -- Report creating failed: {"message":"Token required - not valid tokenless upload"} +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.0398440Z ==> Running command '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov do-upload' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.0399676Z [command]/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov do-upload --git-service github +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.3969106Z info - 2026-05-09 07:09:24,396 -- ci service found: github-actions +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.4061132Z warning - 2026-05-09 07:09:24,405 -- No config file could be found. Ignoring config. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.4380884Z warning - 2026-05-09 07:09:24,437 -- xcrun is not installed or can't be found. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.4482784Z warning - 2026-05-09 07:09:24,447 -- No gcov data found. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.4486535Z warning - 2026-05-09 07:09:24,448 -- coverage.py is not installed or can't be found. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.4783235Z info - 2026-05-09 07:09:24,477 -- Found 2 coverage files to report +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.4785590Z info - 2026-05-09 07:09:24,478 -- > /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/TestResults/ec42d62f-d7fc-49c0-a207-404ac844be29/coverage.cobertura.xml +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.4787096Z info - 2026-05-09 07:09:24,478 -- > /home/runner/work/link-cli/link-cli/rust/tests/issue62_review_coverage_tests.rs +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.7052044Z info - 2026-05-09 07:09:24,704 -- Upload queued for processing complete +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.7053383Z error - 2026-05-09 07:09:24,705 -- Upload queued for processing failed: {"message":"Token required - not valid tokenless upload"} +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.8126944Z Sentry is attempting to send 2 pending events +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.8127371Z Waiting up to 2 seconds +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.8127647Z Press Ctrl-C to quit +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:24.9201373Z Post job cleanup. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.0877104Z Post job cleanup. +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.1864298Z [command]/usr/bin/git version +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.1902617Z git version 2.53.0 +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.1939965Z Copying '/home/runner/.gitconfig' to '/home/runner/work/_temp/bed92688-6573-416d-ba99-8183b9dd761c/.gitconfig' +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.1958385Z Temporarily overriding HOME='/home/runner/work/_temp/bed92688-6573-416d-ba99-8183b9dd761c' before making global git config changes +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.1959540Z Adding repository directory to the temporary git global config as a safe directory +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.1963068Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.1998140Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.2029703Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.2261305Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.2285660Z http.https://github.com/.extraheader +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.2299572Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.2333578Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.2597373Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.2632314Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.3005002Z Cleaning up orphan processes +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.3315536Z Terminate orphan process: pid (2809) (dotnet) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.3341594Z Terminate orphan process: pid (2888) (dotnet) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.3362235Z Terminate orphan process: pid (2908) (VBCSCompiler) +Test (ubuntu-latest) UNKNOWN STEP 2026-05-09T07:09:25.3403148Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-dotnet@v4, codecov/codecov-action@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8287261Z Current runner version: '2.334.0' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8319154Z ##[group]Runner Image Provisioner +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8320221Z Hosted Compute Agent +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8320896Z Version: 20260422.526 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8321703Z Commit: e1a9e573f4d0838b3a7c1b07401aeb29ed3635a9 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8322787Z Build Date: 2026-04-22T09:31:31Z +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8323725Z Worker ID: {70d5e37c-deb4-46b8-8df2-bbf706260d6c} +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8324721Z Azure Region: eastus +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8325364Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8327332Z ##[group]Operating System +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8328222Z Microsoft Windows Server 2025 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8329213Z 10.0.26100 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8329799Z Datacenter +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8330379Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8331103Z ##[group]Runner Image +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8331753Z Image: windows-2025-vs2026 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8332890Z Version: 20260428.85.1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8335251Z Included Software: https://github.com/actions/runner-images/blob/win25-vs2026/20260428.85/images/windows/Windows2025-VS2026-Readme.md +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8337763Z Image Release: https://github.com/actions/runner-images/releases/tag/win25-vs2026%2F20260428.85 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8339093Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8343423Z ##[group]GITHUB_TOKEN Permissions +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8345997Z Actions: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8346763Z ArtifactMetadata: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8347436Z Attestations: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8348144Z Checks: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8349542Z Contents: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8350133Z Deployments: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8350832Z Discussions: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8351621Z Issues: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8352675Z Metadata: read +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8353270Z Models: read +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8353849Z Packages: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8354453Z Pages: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8355237Z PullRequests: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8355887Z RepositoryProjects: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8356572Z SecurityEvents: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8357250Z Statuses: write +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8357901Z VulnerabilityAlerts: read +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8358603Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8361992Z Secret source: Actions +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8363239Z Prepare workflow directory +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8802354Z Prepare all required actions +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:29.8842027Z Getting action download info +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:30.1444570Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:30.2611974Z Download action repository 'actions/setup-dotnet@v4' (SHA:67a3573c9a986a3f9c594539f4ab511d57bb3ce9) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:30.5163801Z Download action repository 'codecov/codecov-action@v4' (SHA:b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:30.8106175Z Complete job name: Test (windows-latest) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0049053Z ##[group]Run actions/checkout@v4 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0050740Z with: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0051118Z repository: link-foundation/link-cli +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0051857Z token: *** +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0052232Z ssh-strict: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0052569Z ssh-user: git +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0052930Z persist-credentials: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0053327Z clean: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0053683Z sparse-checkout-cone-mode: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0054108Z fetch-depth: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0054441Z fetch-tags: false +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0054788Z show-progress: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0055140Z lfs: false +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0055449Z submodules: false +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0055806Z set-safe-directory: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0056459Z env: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0056799Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0057286Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0057717Z DOTNET_NOLOGO: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.0058110Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.1886349Z Syncing repository: link-foundation/link-cli +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.1888912Z ##[group]Getting Git version info +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.1889522Z Working directory is 'D:\a\link-cli\link-cli' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.2563339Z [command]"C:\Program Files\Git\bin\git.exe" version +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.5708477Z git version 2.54.0.windows.1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.5758541Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.5780148Z Temporarily overriding HOME='D:\a\_temp\69eea3c3-7183-47f3-9a17-6a42ba2b2557' before making global git config changes +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.5782020Z Adding repository directory to the temporary git global config as a safe directory +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.5792221Z [command]"C:\Program Files\Git\bin\git.exe" config --global --add safe.directory D:\a\link-cli\link-cli +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.6101605Z Deleting the contents of 'D:\a\link-cli\link-cli' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.6108961Z ##[group]Initializing the repository +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.6118879Z [command]"C:\Program Files\Git\bin\git.exe" init D:\a\link-cli\link-cli +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.6844637Z Initialized empty Git repository in D:/a/link-cli/link-cli/.git/ +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.6895526Z [command]"C:\Program Files\Git\bin\git.exe" remote add origin https://github.com/link-foundation/link-cli +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.7220678Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.7222493Z ##[group]Disabling automatic garbage collection +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.7230286Z [command]"C:\Program Files\Git\bin\git.exe" config --local gc.auto 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.7548983Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.7550468Z ##[group]Setting up auth +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.7570392Z [command]"C:\Program Files\Git\bin\git.exe" config --local --name-only --get-regexp core\.sshCommand +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:31.7899964Z [command]"C:\Program Files\Git\bin\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :\"" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:32.9804247Z [command]"C:\Program Files\Git\bin\git.exe" config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:33.0099952Z [command]"C:\Program Files\Git\bin\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :\"" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:33.5694763Z [command]"C:\Program Files\Git\bin\git.exe" config --local --name-only --get-regexp ^includeIf\.gitdir: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:33.5995487Z [command]"C:\Program Files\Git\bin\git.exe" submodule foreach --recursive "git config --local --show-origin --name-only --get-regexp remote.origin.url" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:34.1390835Z [command]"C:\Program Files\Git\bin\git.exe" config --local http.https://github.com/.extraheader "AUTHORIZATION: basic ***" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:34.1724263Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:34.1725665Z ##[group]Fetching the repository +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:34.1743615Z [command]"C:\Program Files\Git\bin\git.exe" -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +70a959516ae64dd5878b72f5cb6af961a765aedc:refs/remotes/origin/main +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.5188880Z From https://github.com/link-foundation/link-cli +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.5189969Z * [new ref] 70a959516ae64dd5878b72f5cb6af961a765aedc -> origin/main +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.5388148Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.5388821Z ##[group]Determining the checkout info +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.5390486Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.5406856Z [command]"C:\Program Files\Git\bin\git.exe" sparse-checkout disable +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.5758682Z [command]"C:\Program Files\Git\bin\git.exe" config --local --unset-all extensions.worktreeConfig +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.6074645Z ##[group]Checking out the ref +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.6086929Z [command]"C:\Program Files\Git\bin\git.exe" checkout --progress --force -B main refs/remotes/origin/main +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.7401233Z Switched to a new branch 'main' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.7415034Z branch 'main' set up to track 'origin/main'. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.7470890Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.7791847Z [command]"C:\Program Files\Git\bin\git.exe" log -1 --format=%H +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8068564Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8472630Z ##[group]Run actions/setup-dotnet@v4 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8473145Z with: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8473397Z dotnet-version: 8.0.x +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8473687Z cache: false +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8473971Z env: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8474207Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8474556Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8474866Z DOTNET_NOLOGO: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:35.8475144Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:36.1625581Z [command]"C:\Program Files\PowerShell\7\pwsh.exe" -NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command & 'D:\a\_actions\actions\setup-dotnet\v4\externals\install-dotnet.ps1' -SkipNonVersionedFiles -Runtime dotnet -Channel LTS +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:47.7906758Z dotnet-install: .NET Core Runtime with version '10.0.7' is already installed. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:48.3086751Z [command]"C:\Program Files\PowerShell\7\pwsh.exe" -NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command & 'D:\a\_actions\actions\setup-dotnet\v4\externals\install-dotnet.ps1' -SkipNonVersionedFiles -Channel 8.0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.0779778Z dotnet-install: .NET Core SDK with version '8.0.420' is already installed. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1886865Z ##[group]Run dotnet restore +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1887251Z ^[[36;1mdotnet restore^[[0m +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1953306Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1953660Z env: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1953857Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1954104Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1954325Z DOTNET_NOLOGO: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1954524Z DOTNET_ROOT: C:\Program Files\dotnet +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:08:49.1954795Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:02.9011031Z Determining projects to restore... +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:21.5899853Z Restored D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli\Foundation.Data.Doublets.Cli.csproj (in 16.86 sec). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.7384242Z Restored D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Foundation.Data.Doublets.Cli.Tests.csproj (in 18.05 sec). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.8988848Z ##[group]Run dotnet build --no-restore --configuration Release +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.8989566Z ^[[36;1mdotnet build --no-restore --configuration Release^[[0m +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.9048991Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.9049298Z env: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.9049486Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.9049910Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.9050366Z DOTNET_NOLOGO: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.9050573Z DOTNET_ROOT: C:\Program Files\dotnet +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:22.9050817Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:36.3024676Z Foundation.Data.Doublets.Cli -> D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli\bin\Release\net8\Foundation.Data.Doublets.Cli.dll +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:37.7384096Z Foundation.Data.Doublets.Cli.Tests -> D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\bin\Release\net8\Foundation.Data.Doublets.Cli.Tests.dll +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:37.7870228Z +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:37.7878017Z Build succeeded. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:37.7893765Z 0 Warning(s) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:37.7894242Z 0 Error(s) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:37.7894910Z +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:37.7895373Z Time Elapsed 00:00:14.37 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2049107Z ##[group]Run dotnet test --no-build --configuration Release --verbosity normal --collect:"XPlat Code Coverage" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2049934Z ^[[36;1mdotnet test --no-build --configuration Release --verbosity normal --collect:"XPlat Code Coverage"^[[0m +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2110990Z shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2111316Z env: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2111513Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2111762Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2111983Z DOTNET_NOLOGO: true +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2112179Z DOTNET_ROOT: C:\Program Files\dotnet +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.2112608Z ##[endgroup] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.6935914Z Build started 5/9/2026 7:09:38 AM. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.8515251Z 1>Project "D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.sln" on node 1 (VSTest target(s)). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.8516095Z 1>ValidateSolutionConfiguration: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:38.8516662Z Building solution configuration "Release|Any CPU". +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:39.2131323Z Test run for D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\bin\Release\net8\Foundation.Data.Doublets.Cli.Tests.dll (.NETCoreApp,Version=v8.0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:40.6102217Z A total of 1 test files matched the specified pattern. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:46.7702431Z [xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v3.1.5+1b188a7b0a (64-bit .NET 8.0.26) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:47.0291861Z [xUnit.net 00:00:00.28] Discovering: Foundation.Data.Doublets.Cli.Tests +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:47.2989053Z [xUnit.net 00:00:00.55] Discovered: Foundation.Data.Doublets.Cli.Tests +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:47.3377860Z [xUnit.net 00:00:00.59] Starting: Foundation.Data.Doublets.Cli.Tests +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0305732Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateLinkWithSource2Target2Test [285 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0308392Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteAllLinksByIndexTest [18 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0310609Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest [17 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0312053Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteLinksByAnyTargetTest [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0313352Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteLinksByAnySourceTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0314606Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteMultipleLinksTest [7 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0315798Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateMultipleLinksTest [58 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0317387Z [xUnit.net 00:00:01.25] Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.NeverRemovesMatchingStoredTrigger [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0318686Z [xUnit.net 00:00:01.28] Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.AlwaysTriggerIsStoredInLinksAndAppliedAfterWrite [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0320015Z [xUnit.net 00:00:01.25] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp4dgrtw.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0320713Z [xUnit.net 00:00:01.25] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0321103Z [xUnit.net 00:00:01.25] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0322463Z [xUnit.net 00:00:01.25] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(113,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.DeleteIfExists(String path) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0327029Z [xUnit.net 00:00:01.25] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(90,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.RunWithPersistentLinks(Action`2 action) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0329222Z [xUnit.net 00:00:01.25] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(60,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.NeverRemovesMatchingStoredTrigger() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0330726Z [xUnit.net 00:00:01.25] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0331621Z [xUnit.net 00:00:01.25] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0332637Z [xUnit.net 00:00:01.28] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpex25gv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0333525Z [xUnit.net 00:00:01.28] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0333902Z [xUnit.net 00:00:01.28] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0335136Z [xUnit.net 00:00:01.28] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(113,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.DeleteIfExists(String path) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0337027Z [xUnit.net 00:00:01.28] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(90,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.RunWithPersistentLinks(Action`2 action) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0339067Z [xUnit.net 00:00:01.28] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(13,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.AlwaysTriggerIsStoredInLinksAndAppliedAfterWrite() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0340608Z [xUnit.net 00:00:01.28] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0341461Z [xUnit.net 00:00:01.28] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0368978Z [xUnit.net 00:00:01.29] Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.OnceTriggerDeletesItselfAfterFirstMatch [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0370938Z [xUnit.net 00:00:01.29] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpw3j1h3.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0371729Z [xUnit.net 00:00:01.29] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0372145Z [xUnit.net 00:00:01.29] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0373406Z [xUnit.net 00:00:01.29] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(113,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.DeleteIfExists(String path) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0375384Z [xUnit.net 00:00:01.29] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(90,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.RunWithPersistentLinks(Action`2 action) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0378405Z [xUnit.net 00:00:01.29] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs(35,0): at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.OnceTriggerDeletesItselfAfterFirstMatch() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0380273Z [xUnit.net 00:00:01.29] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0381957Z [xUnit.net 00:00:01.29] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0545247Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.ReverseSourceWithTargetUsingVariablesTest [14 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0546867Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.NeverRemovesMatchingStoredTrigger [498 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0547851Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0548443Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp4dgrtw.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0549043Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0549295Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0567466Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.DeleteIfExists(String path) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 113 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0569336Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.RunWithPersistentLinks(Action`2 action) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 90 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0571152Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.NeverRemovesMatchingStoredTrigger() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 60 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0572402Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0573088Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0574089Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0574853Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.NoUpdateUsingVariablesTest [23 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0575642Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteSingleLinkTest_Source1Target2 [13 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0576406Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.MixedMultipleUpdatesTest [13 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0577365Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.AlwaysTriggerIsStoredInLinksAndAppliedAfterWrite [57 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0578083Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0578641Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpex25gv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0579241Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0579467Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0580468Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.DeleteIfExists(String path) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 113 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0582155Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.RunWithPersistentLinks(Action`2 action) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 90 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0584223Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.AlwaysTriggerIsStoredInLinksAndAppliedAfterWrite() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 13 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0585585Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0586296Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0587863Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.OnceTriggerDeletesItselfAfterFirstMatch [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0588562Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0589139Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpw3j1h3.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0589746Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0589975Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0590974Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.DeleteIfExists(String path) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 113 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0592849Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.RunWithPersistentLinks(Action`2 action) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 90 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0594695Z at Foundation.Data.Doublets.Cli.Tests.Tests.PersistentTransformationDecoratorTests.OnceTriggerDeletesItselfAfterFirstMatch() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\PersistentTransformationDecoratorTests.cs:line 35 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0595974Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0596645Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0740767Z === Debug: Alternative Scenario === +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0742015Z Input changes: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0742564Z 1. (1: 1 2) -> (0: 0 0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0743071Z 2. (1: 1 2) -> (1: 2 1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0743607Z 3. (2: 2 1) -> (2: 1 2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0744505Z Actual simplified changes: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0745017Z 1. (1: 1 2) -> (1: 2 1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0745416Z 2. (2: 2 1) -> (2: 1 2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0745813Z Count: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0746205Z === End Debug === +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0809359Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeleteSingleLinkTest_Source2Target2 [28 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0811322Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_Issue26_AlternativeScenario_NoSimplificationOccurs [33 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0812485Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0813448Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_NoChange_StillKeepsFirstAndLastState [< 1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0814466Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_Issue26_UpdateOperationSimplification [< 1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0815505Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_SpecificExample_RemovesIntermediateStates [1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0816566Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleChainsFromSameBefore_RemovesIntermediateStates [< 1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.0817677Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleBranchesFromSameInitial_ProducesCorrectFinalStates [< 1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1040085Z [xUnit.net 00:00:01.35] Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.ExplicitNumericIdUpdate_CanBeReversedWithAnotherUpdate [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1042314Z [xUnit.net 00:00:01.35] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmphlf1ce.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1043630Z [xUnit.net 00:00:01.35] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1044249Z [xUnit.net 00:00:01.35] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1046556Z [xUnit.net 00:00:01.35] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs(61,0): at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.RunTestWithLinks(Action`1 testAction) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1049971Z [xUnit.net 00:00:01.35] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs(15,0): at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.ExplicitNumericIdUpdate_CanBeReversedWithAnotherUpdate() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1052388Z [xUnit.net 00:00:01.35] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1053950Z [xUnit.net 00:00:01.35] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1115600Z [xUnit.net 00:00:01.36] Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.NamedLink_CreateDeleteRecreate_DoesNotLeaveStaleNameMapping [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1117783Z [xUnit.net 00:00:01.36] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpxpchl2.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1119438Z [xUnit.net 00:00:01.36] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1120044Z [xUnit.net 00:00:01.36] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1121882Z [xUnit.net 00:00:01.36] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs(61,0): at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.RunTestWithLinks(Action`1 testAction) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1124925Z [xUnit.net 00:00:01.36] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs(31,0): at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.NamedLink_CreateDeleteRecreate_DoesNotLeaveStaleNameMapping() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1127348Z [xUnit.net 00:00:01.36] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1128840Z [xUnit.net 00:00:01.36] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1343795Z [Test] All links: (1: 2->1) (2: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1367006Z [xUnit.net 00:00:01.39] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForAllLinksUsingVariablesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1369693Z [xUnit.net 00:00:01.39] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwyuhfx.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1371239Z [xUnit.net 00:00:01.39] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1371871Z [xUnit.net 00:00:01.39] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1374428Z [xUnit.net 00:00:01.39] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1384887Z [xUnit.net 00:00:01.39] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(446,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForAllLinksUsingVariablesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1387896Z [xUnit.net 00:00:01.39] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1389318Z [xUnit.net 00:00:01.39] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1396805Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_MultipleBranchesFromSameInitial_ProducesCorrectFinalStates_InCorrectOrder [2 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1400193Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.ChangesSimplifierTests.SimplifyChanges_SpecificExample_KeepsUnchangedStates [< 1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1402401Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest [25 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1404004Z Failed Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.ExplicitNumericIdUpdate_CanBeReversedWithAnotherUpdate [21 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1404652Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1405262Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmphlf1ce.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1406183Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1406414Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1407341Z at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.RunTestWithLinks(Action`1 testAction) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs:line 61 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1408905Z at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.ExplicitNumericIdUpdate_CanBeReversedWithAnotherUpdate() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs:line 15 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1410098Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1410784Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1411444Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.MultipleUpdatesTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1412282Z Failed Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.NamedLink_CreateDeleteRecreate_DoesNotLeaveStaleNameMapping [7 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1412886Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1413474Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpxpchl2.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1414099Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1414329Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1415435Z at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.RunTestWithLinks(Action`1 testAction) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs:line 61 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1416954Z at Foundation.Data.Doublets.Cli.Tests.Issue62ReviewCoverageTests.NamedLink_CreateDeleteRecreate_DoesNotLeaveStaleNameMapping() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Issue62ReviewCoverageTests.cs:line 31 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1418134Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1418801Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1419558Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest [24 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1420746Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForAllLinksUsingVariablesTest [746 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1421430Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1422011Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwyuhfx.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1422618Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1422831Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1424251Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1426195Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForAllLinksUsingVariablesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 446 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1427438Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.1428104Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.2193403Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreationDuringUpdateTest [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.2195307Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteSingleLinkTest_Source2Target2 [19 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.2199909Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.UpdateSingleLinkTest [21 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.2201251Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteMultipleLinksTest [35 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.2203057Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.CreateSingleLinkWithIndexTest [32 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.2203864Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateSingleLinkTest [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.2204663Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.MixedQueryProcessor.DeletionDuringUpdateTest [7 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3043298Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.UpdateSingleLinkTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3044577Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetriveUserDefinedTypeTest [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3045478Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateLinkWithSource2Target2Test [33 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3046951Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "UnicodeSymbol") [21 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3047889Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.MultipleUpdatesTest [7 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3048783Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "EmptyString") [18 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3049976Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.CreateMultipleLinksTest [28 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3050859Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "String") [24 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3113313Z [xUnit.net 00:00:01.56] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NameLookupConsistencyTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3115319Z [xUnit.net 00:00:01.56] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpe4zddm.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3117632Z [xUnit.net 00:00:01.56] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3118394Z [xUnit.net 00:00:01.56] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3120992Z [xUnit.net 00:00:01.56] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3124329Z [xUnit.net 00:00:01.56] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1137,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NameLookupConsistencyTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3126705Z [xUnit.net 00:00:01.56] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.3128015Z [xUnit.net 00:00:01.56] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4345535Z Passed Foundation.Data.Doublets.Cli.Tests.Tests.BasicQueryProcessor.DeleteSingleLinkTest_Source1Target2 [17 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4347204Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "Name") [7 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4348837Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NameLookupConsistencyTest [173 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4349825Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4350904Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpe4zddm.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4352625Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4353042Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4354868Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4357758Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NameLookupConsistencyTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1137 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4361971Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4363357Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4365025Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "UnicodeSequence") [27 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4367044Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringTypesTest(typeName: "Type") [34 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4369071Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameIsRemovedWhenExternalReferenceIsDeletedTest [21 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.4370173Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Terminate_Enumeration_When_Iterated_Without_Take [121 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5434982Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameExternalReferenceTest [39 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5435993Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveUnicodeStringTest [32 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5436858Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Validate_Existing_Links_With_Ulong [35 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5437700Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveSimpleStringTest [30 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5438481Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Destructure_PinnedTypes [33 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5439334Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.DeletingNonNamedLinkDoesNotAffectOtherNamesTest [17 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5440132Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Validate_Existing_Links [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.5440865Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveEmptyStringTest [27 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6425623Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Reset_Enumerator [35 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6427438Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.RetrieveTypeByNameTest [20 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6428796Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Throw_Exception_For_Invalid_Link_Structure [19 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6430399Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.CreateAndRetrieveMultipleStringsTest [24 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6431761Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Create_And_Iterate_Over_Types [26 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6433684Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.NameIsRemovedWhenLinkIsDeletedTest [37 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6435110Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesTests.Should_Create_And_Iterate_Over_Types_With_RealDataStore [23 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6436794Z Passed Foundation.Data.Doublets.Cli.Tests.UnicodeStringStorageTests.ExternalReferenceCanUseNameThatAlreadyExistsInternallyTest [14 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6456075Z [xUnit.net 00:00:01.89] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetName_OverwriteOldName [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6458043Z [xUnit.net 00:00:01.89] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpowse3w.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6459929Z [xUnit.net 00:00:01.89] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6460639Z [xUnit.net 00:00:01.89] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6462547Z [xUnit.net 00:00:01.89] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(86,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetName_OverwriteOldName() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6464781Z [xUnit.net 00:00:01.89] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.6466347Z [xUnit.net 00:00:01.89] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8188659Z [xUnit.net 00:00:02.07] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "/tmp/test.db", expected: "/tmp/test.names.links") [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8190473Z [xUnit.net 00:00:02.07] Assert.Equal() Failure: Strings differ +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8191939Z [xUnit.net 00:00:02.07] ↓ (pos 0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8192698Z [xUnit.net 00:00:02.07] Expected: "/tmp/test.names.links" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8193430Z [xUnit.net 00:00:02.07] Actual: "\\tmp\\test.names.links" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8194178Z [xUnit.net 00:00:02.07] ↑ (pos 0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8194694Z [xUnit.net 00:00:02.07] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8196859Z [xUnit.net 00:00:02.07] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(44,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(String dbFilename, String expected) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8199540Z [xUnit.net 00:00:02.07] at InvokeStub_NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(Object, Span`1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8201525Z [xUnit.net 00:00:02.07] at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8285520Z [xUnit.net 00:00:02.08] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.AfterCreation_SetNameAndGetName_ShouldWork [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8287535Z [xUnit.net 00:00:02.08] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpvztzsr.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8291743Z [xUnit.net 00:00:02.08] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8292692Z [xUnit.net 00:00:02.08] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8294869Z [xUnit.net 00:00:02.08] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(147,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.AfterCreation_SetNameAndGetName_ShouldWork() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8297582Z [xUnit.net 00:00:02.08] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8300393Z [xUnit.net 00:00:02.08] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8311322Z [xUnit.net 00:00:02.08] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.CanConstructNamedLinksDecorator [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8316985Z [Trace] Constructing NamedLinksDecorator with names DB: C:\Users\runneradmin\AppData\Local\Temp\tmpdl1o0v.names.links +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8319728Z [xUnit.net 00:00:02.08] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpdl1o0v.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8321644Z [xUnit.net 00:00:02.08] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8322950Z [xUnit.net 00:00:02.08] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8325101Z [xUnit.net 00:00:02.08] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(29,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.CanConstructNamedLinksDecorator() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8328092Z [xUnit.net 00:00:02.08] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8339478Z [xUnit.net 00:00:02.08] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8341168Z [xUnit.net 00:00:02.08] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_NonExistent_DoesNotThrow [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8343045Z [xUnit.net 00:00:02.08] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp5unnsy.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8348453Z [xUnit.net 00:00:02.08] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8349383Z [xUnit.net 00:00:02.08] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8351552Z [xUnit.net 00:00:02.08] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(127,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_NonExistent_DoesNotThrow() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8354690Z [xUnit.net 00:00:02.08] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8356167Z [xUnit.net 00:00:02.08] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8385479Z [xUnit.net 00:00:02.09] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_ShouldReturnNullAfterRemoval [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8387461Z [xUnit.net 00:00:02.09] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpud0qd1.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8389312Z [xUnit.net 00:00:02.09] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8390666Z [xUnit.net 00:00:02.09] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8392925Z [xUnit.net 00:00:02.09] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(108,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_ShouldReturnNullAfterRemoval() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8395548Z [xUnit.net 00:00:02.09] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8397154Z [xUnit.net 00:00:02.09] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8414265Z [xUnit.net 00:00:02.09] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetNameAndGetName_ShouldReturnSameName [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8416545Z [xUnit.net 00:00:02.09] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2lw5vu.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8437327Z [xUnit.net 00:00:02.09] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8453937Z [xUnit.net 00:00:02.09] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8471010Z [xUnit.net 00:00:02.09] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(63,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetNameAndGetName_ShouldReturnSameName() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8473586Z [xUnit.net 00:00:02.09] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8479622Z [xUnit.net 00:00:02.09] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8486631Z [xUnit.net 00:00:02.10] Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.DeleteLink_RemovesNameAutomatically [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8487933Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetName_OverwriteOldName [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8488708Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8489856Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpowse3w.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8491071Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8491554Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8493133Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetName_OverwriteOldName() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 86 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8495180Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8496529Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8498441Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "test.db", expected: "test.names.links") [< 1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8501368Z Passed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "a.b.c", expected: "a.b.names.links") [< 1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8504016Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(dbFilename: "/tmp/test.db", expected: "/tmp/test.names.links") [1 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8505610Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8506069Z Assert.Equal() Failure: Strings differ +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8507031Z ↓ (pos 0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8507520Z Expected: "/tmp/test.names.links" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8508050Z Actual: "\\tmp\\test.names.links" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8508594Z ↑ (pos 0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8509018Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8510821Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(String dbFilename, String expected) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 44 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8513330Z at InvokeStub_NamedLinksDecoratorTests.MakeNamesDatabaseFilename_CorrectlyGeneratesFilename(Object, Span`1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8518939Z at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8520801Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.AfterCreation_SetNameAndGetName_ShouldWork [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8522414Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8523489Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpvztzsr.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8524998Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8525524Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8527252Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.AfterCreation_SetNameAndGetName_ShouldWork() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 147 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8529461Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8530799Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8532188Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.CanConstructNamedLinksDecorator [3 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8533380Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8534567Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpdl1o0v.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8535800Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8536320Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8537998Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.CanConstructNamedLinksDecorator() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 29 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8540659Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8541898Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8543201Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_NonExistent_DoesNotThrow [2 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8544141Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8545204Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp5unnsy.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8546409Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8546871Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8548689Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_NonExistent_DoesNotThrow() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 127 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8550512Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8566303Z [xUnit.net 00:00:02.10] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_ReproducesNumberedLinksAtTheirExplicitIndexes [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8568701Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8570149Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_ShouldReturnNullAfterRemoval [3 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8571168Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8572413Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpud0qd1.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8573707Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8574242Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8576671Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.RemoveName_ShouldReturnNullAfterRemoval() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 108 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8579002Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8580733Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8582187Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetNameAndGetName_ShouldReturnSameName [3 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8583264Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8584705Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2lw5vu.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8585914Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8586418Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8588168Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.SetNameAndGetName_ShouldReturnSameName() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 63 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8590306Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8591869Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8593787Z [xUnit.net 00:00:02.10] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpi5amfs.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8595160Z [xUnit.net 00:00:02.10] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8595927Z [xUnit.net 00:00:02.10] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8598030Z [xUnit.net 00:00:02.10] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs(171,0): at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.DeleteLink_RemovesNameAutomatically() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8600839Z [xUnit.net 00:00:02.10] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8602524Z [xUnit.net 00:00:02.10] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8604674Z [xUnit.net 00:00:02.11] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwwbd5u.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8614201Z [xUnit.net 00:00:02.11] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8615024Z [xUnit.net 00:00:02.11] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8617028Z [xUnit.net 00:00:02.11] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(108,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8620464Z [xUnit.net 00:00:02.11] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(12,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_ReproducesNumberedLinksAtTheirExplicitIndexes() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8622955Z [xUnit.net 00:00:02.11] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8624462Z [xUnit.net 00:00:02.11] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8670333Z [xUnit.net 00:00:02.11] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_TreatsOutOfRangeNumbersAsNames [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8672170Z [xUnit.net 00:00:02.12] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmps5nfbv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8674060Z [xUnit.net 00:00:02.12] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8674970Z [xUnit.net 00:00:02.12] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8676963Z [xUnit.net 00:00:02.12] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(108,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8680240Z [xUnit.net 00:00:02.12] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(57,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_TreatsOutOfRangeNumbersAsNames() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8682891Z [xUnit.net 00:00:02.12] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8684287Z [xUnit.net 00:00:02.12] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8717190Z [xUnit.net 00:00:02.12] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_UnquotesNamesWrittenByExporter [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8719392Z [xUnit.net 00:00:02.12] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpevhwhv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8721418Z [xUnit.net 00:00:02.12] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8722258Z [xUnit.net 00:00:02.12] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8724222Z [xUnit.net 00:00:02.12] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(108,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8726950Z [xUnit.net 00:00:02.12] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(78,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_UnquotesNamesWrittenByExporter() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8729092Z [xUnit.net 00:00:02.12] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8730576Z [xUnit.net 00:00:02.12] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8883665Z [xUnit.net 00:00:02.14] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_CreatesNamedReferencesAsPointLinks [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8885596Z [xUnit.net 00:00:02.14] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkj4t30.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8887362Z [xUnit.net 00:00:02.14] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8888210Z [xUnit.net 00:00:02.14] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8890294Z [xUnit.net 00:00:02.14] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(108,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8892579Z [xUnit.net 00:00:02.14] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs(32,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_CreatesNamedReferencesAsPointLinks() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8893893Z [xUnit.net 00:00:02.14] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:48.8894771Z [xUnit.net 00:00:02.14] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0010332Z Failed Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.DeleteLink_RemovesNameAutomatically [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0069393Z [xUnit.net 00:00:02.25] Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.CanConstructSimpleLinksDecorator [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0070418Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0072136Z [xUnit.net 00:00:02.25] Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.Delete_WithRestriction_DoesNotThrow [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0073788Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpi5amfs.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0075108Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0075949Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0077691Z at Foundation.Data.Doublets.Cli.Tests.NamedLinksDecoratorTests.DeleteLink_RemovesNameAutomatically() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedLinksDecoratorTests.cs:line 171 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0079532Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0080428Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0081219Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_ReproducesNumberedLinksAtTheirExplicitIndexes [9 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0082922Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0083502Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwwbd5u.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0084123Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0084358Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0085362Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 108 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0091702Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_ReproducesNumberedLinksAtTheirExplicitIndexes() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 12 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0095271Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0096502Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0097764Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_TreatsOutOfRangeNumbersAsNames [9 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0098657Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0099597Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmps5nfbv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0100605Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0100970Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0102646Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 108 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0104989Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_TreatsOutOfRangeNumbersAsNames() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 57 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0106843Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0107987Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0109201Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_UnquotesNamesWrittenByExporter [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0110072Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0110980Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpevhwhv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0111971Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0112314Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0114130Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 108 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0118849Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_UnquotesNamesWrittenByExporter() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 78 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0121819Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0122981Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0124199Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_CreatesNamedReferencesAsPointLinks [16 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0125084Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0126054Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkj4t30.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0127777Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0128196Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0129956Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 108 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0132144Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseInputTests.ImportText_CreatesNamedReferencesAsPointLinks() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseInputTests.cs:line 32 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0133921Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0135280Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0136500Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Implement_Both_ILinks_And_IPinnedTypes [38 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0137848Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Support_Deconstruction [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0139019Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Work_As_ILinks_Decorator [23 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0140280Z Passed Foundation.Data.Doublets.Cli.Tests.PinnedTypesDecoratorTests.Should_Enumerate_PinnedTypes [22 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0141812Z [xUnit.net 00:00:02.25] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpoactqp.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0142909Z [xUnit.net 00:00:02.25] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0143478Z [xUnit.net 00:00:02.25] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0145312Z [xUnit.net 00:00:02.25] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs(23,0): at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.CanConstructSimpleLinksDecorator() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0147473Z [xUnit.net 00:00:02.25] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0148956Z [xUnit.net 00:00:02.25] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0150653Z [xUnit.net 00:00:02.26] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpj2yc4d.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0151805Z [xUnit.net 00:00:02.26] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0152367Z [xUnit.net 00:00:02.26] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0154124Z [xUnit.net 00:00:02.26] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs(48,0): at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.Delete_WithRestriction_DoesNotThrow() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0156636Z [xUnit.net 00:00:02.26] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0158367Z [xUnit.net 00:00:02.26] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0159737Z [Trace] Constructing SimpleLinksDecorator with names DB: C:\Users\runneradmin\AppData\Local\Temp\tmpe3k53q.names.links +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0161288Z [xUnit.net 00:00:02.26] Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow_WithTracing [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0162892Z [xUnit.net 00:00:02.26] Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0164619Z [xUnit.net 00:00:02.26] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpe3k53q.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0166021Z [xUnit.net 00:00:02.26] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0166591Z [xUnit.net 00:00:02.26] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0168480Z [xUnit.net 00:00:02.26] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs(85,0): at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow_WithTracing() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0170744Z [xUnit.net 00:00:02.26] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0172124Z [xUnit.net 00:00:02.26] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0173817Z [xUnit.net 00:00:02.26] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsbrznz.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0175063Z [xUnit.net 00:00:02.26] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0176075Z [xUnit.net 00:00:02.26] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0177942Z [xUnit.net 00:00:02.26] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs(67,0): at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0180157Z [xUnit.net 00:00:02.26] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0181584Z [xUnit.net 00:00:02.26] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0452045Z [xUnit.net 00:00:02.29] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_UsesProvidedPinnedTypesDecorator [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0454162Z [xUnit.net 00:00:02.29] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmprjhj41.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0455963Z [xUnit.net 00:00:02.29] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0456781Z [xUnit.net 00:00:02.29] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0458809Z [xUnit.net 00:00:02.29] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0461815Z [xUnit.net 00:00:02.29] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0670207Z [xUnit.net 00:00:02.32] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanRemoveNames [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0672069Z [xUnit.net 00:00:02.32] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkk1hxy.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0675659Z [xUnit.net 00:00:02.32] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0676631Z [xUnit.net 00:00:02.32] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0678343Z [xUnit.net 00:00:02.32] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.0680355Z [xUnit.net 00:00:02.32] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1006393Z [xUnit.net 00:00:02.35] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_DeleteRemovesAssociatedNames [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1008250Z [xUnit.net 00:00:02.35] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpww2a0m.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1010157Z [xUnit.net 00:00:02.35] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1010831Z [xUnit.net 00:00:02.35] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1012491Z [xUnit.net 00:00:02.35] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1015536Z [xUnit.net 00:00:02.35] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1124414Z [xUnit.net 00:00:02.36] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanSetAndGetNames [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1126447Z [xUnit.net 00:00:02.36] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpp44yi5.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1127673Z [xUnit.net 00:00:02.36] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1130422Z [xUnit.net 00:00:02.36] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1132527Z [xUnit.net 00:00:02.36] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1135914Z [xUnit.net 00:00:02.36] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1202308Z [xUnit.net 00:00:02.37] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_HandlesNonexistentNames [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1204310Z [xUnit.net 00:00:02.37] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp3jlsjv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1205820Z [xUnit.net 00:00:02.37] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1206594Z [xUnit.net 00:00:02.37] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1208506Z [xUnit.net 00:00:02.37] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1212159Z [xUnit.net 00:00:02.37] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1241777Z Failed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.CanConstructSimpleLinksDecorator [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1242932Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1244046Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpoactqp.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1245194Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1245722Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1247482Z at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.CanConstructSimpleLinksDecorator() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs:line 23 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1250070Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1251328Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1252631Z Failed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.Delete_WithRestriction_DoesNotThrow [3 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1253499Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1254504Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpj2yc4d.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1255572Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1255934Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1257498Z at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.Delete_WithRestriction_DoesNotThrow() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs:line 48 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1259471Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1260697Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1262437Z Failed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow_WithTracing [3 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1263430Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1264411Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpe3k53q.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1265443Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1265807Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1267420Z at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow_WithTracing() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs:line 85 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1269447Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1270649Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1271985Z Failed Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow [2 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1272865Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1273803Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsbrznz.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1274854Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1275212Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1276807Z at Foundation.Data.Doublets.Cli.Tests.SimpleLinksDecoratorTests.DeleteAfterGetOrCreate_DoesNotThrow() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\SimpleLinksDecoratorTests.cs:line 67 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1278755Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1280223Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1281634Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_UsesProvidedPinnedTypesDecorator [30 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1282624Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1283520Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmprjhj41.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1284566Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1284920Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1286222Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1289632Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1291925Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanRemoveNames [21 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1292810Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1293769Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkk1hxy.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1294819Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1295183Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1296529Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1299205Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1301591Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_DeleteRemovesAssociatedNames [32 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1302544Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1303477Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpww2a0m.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1304482Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1304823Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1306131Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1309257Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1311633Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanSetAndGetNames [10 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1312552Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1313513Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpp44yi5.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1314534Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1314876Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1316187Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1319022Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1321322Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_HandlesNonexistentNames [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1322250Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1323186Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp3jlsjv.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1324265Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1324629Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1325971Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1329342Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1479175Z [xUnit.net 00:00:02.40] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ReassigningExistingNameMovesNameToNewLink [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1485488Z [xUnit.net 00:00:02.40] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpi1x5el.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1487203Z [xUnit.net 00:00:02.40] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1487989Z [xUnit.net 00:00:02.40] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1489835Z [xUnit.net 00:00:02.40] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1493083Z [xUnit.net 00:00:02.40] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1567938Z [xUnit.net 00:00:02.40] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsILinks [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1569954Z [xUnit.net 00:00:02.41] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp05exsb.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1571680Z [xUnit.net 00:00:02.41] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1572440Z [xUnit.net 00:00:02.41] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1574345Z [xUnit.net 00:00:02.41] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1577850Z [xUnit.net 00:00:02.41] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1620157Z [xUnit.net 00:00:02.41] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanConstructFromDatabaseFilename [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1622220Z [xUnit.net 00:00:02.41] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpfxgami.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1623856Z [xUnit.net 00:00:02.41] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1624659Z [xUnit.net 00:00:02.41] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1627241Z [xUnit.net 00:00:02.41] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(258,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanConstructFromDatabaseFilename() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1633004Z [xUnit.net 00:00:02.41] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1634788Z [xUnit.net 00:00:02.41] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1956461Z [xUnit.net 00:00:02.44] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanEnumeratePinnedTypes [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1958407Z [xUnit.net 00:00:02.44] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpt4yvmt.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1960763Z [xUnit.net 00:00:02.44] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1961653Z [xUnit.net 00:00:02.44] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1963563Z [xUnit.net 00:00:02.44] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.1966790Z [xUnit.net 00:00:02.44] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2271859Z [xUnit.net 00:00:02.48] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanOverwriteNames [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2274200Z [xUnit.net 00:00:02.48] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp5hooyz.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2275408Z [xUnit.net 00:00:02.48] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2276030Z [xUnit.net 00:00:02.48] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2277550Z [xUnit.net 00:00:02.48] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2279259Z [xUnit.net 00:00:02.48] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2590361Z [xUnit.net 00:00:02.51] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsIPinnedTypes [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2592367Z [xUnit.net 00:00:02.51] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpibgevo.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2593700Z [xUnit.net 00:00:02.51] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2594628Z [xUnit.net 00:00:02.51] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2600500Z [xUnit.net 00:00:02.51] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2604043Z [xUnit.net 00:00:02.51] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2855592Z [xUnit.net 00:00:02.53] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsINamedTypes [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2858292Z [xUnit.net 00:00:02.53] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpueaj1p.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2859534Z [xUnit.net 00:00:02.53] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2860160Z [xUnit.net 00:00:02.53] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2861842Z [xUnit.net 00:00:02.53] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2865057Z [xUnit.net 00:00:02.53] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2930072Z [xUnit.net 00:00:02.54] Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanGetLinkByName [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2931789Z [xUnit.net 00:00:02.54] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpdqscw1.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2932551Z [xUnit.net 00:00:02.54] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2932935Z [xUnit.net 00:00:02.54] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2933931Z [xUnit.net 00:00:02.54] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs(28,0): at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.2935645Z [xUnit.net 00:00:02.54] /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs(79,0): at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9439553Z [Test] Test was cancelled after 1 seconds timeout +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9517213Z [xUnit.net 00:00:03.20] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapEqualSourceAndTargetUsingVariablesHasAllChangesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9519987Z [xUnit.net 00:00:03.20] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmplmqspo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9528219Z [xUnit.net 00:00:03.20] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9529117Z [xUnit.net 00:00:03.20] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9538427Z [xUnit.net 00:00:03.20] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9542373Z [xUnit.net 00:00:03.20] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(465,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapEqualSourceAndTargetUsingVariablesHasAllChangesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9544859Z [xUnit.net 00:00:03.20] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9546214Z [xUnit.net 00:00:03.20] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9547613Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ReassigningExistingNameMovesNameToNewLink [26 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9548678Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9549641Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpi1x5el.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9551815Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9552996Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9555215Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9557803Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9560439Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsILinks [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9561596Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9562558Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp05exsb.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9563578Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9563946Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9565286Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9567861Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9570389Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanConstructFromDatabaseFilename [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9571457Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9572436Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpfxgami.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9573517Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9573881Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9578832Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanConstructFromDatabaseFilename() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 258 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9581037Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9582256Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9583476Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanEnumeratePinnedTypes [32 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9584359Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9585301Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpt4yvmt.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9586313Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9586690Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9588031Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9590525Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9598719Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanOverwriteNames [32 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9600149Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9601116Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp5hooyz.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9602076Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9602742Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9604061Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9606698Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9608906Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsIPinnedTypes [30 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9610106Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9611002Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpibgevo.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9612809Z [xUnit.net 00:00:03.20] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WriteToFile_WritesCompleteDatabaseAsLinoLines [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9614506Z [xUnit.net 00:00:03.21] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersLeftBranchWithLinkIndexes [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9615452Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9615803Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9617071Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9623264Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9650512Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_ImplementsINamedTypes [25 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9651507Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9652480Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpueaj1p.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9653515Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9653859Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9657016Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9659740Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9661861Z Failed Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.NamedTypesDecorator_CanGetLinkByName [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9662738Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9663679Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpdqscw1.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9664729Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9665099Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9666461Z at Foundation.Data.Doublets.Cli.Tests.NamedTypesDecoratorTests.Dispose() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\NamedTypesDecoratorTests.cs:line 28 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9669018Z at ReflectionAbstractionExtensions.DisposeTestClass(ITest test, Object testClass, IMessageBus messageBus, ExecutionTimer timer, CancellationTokenSource cancellationTokenSource) in /_/src/xunit.execution/Extensions/ReflectionAbstractionExtensions.cs:line 79 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9671916Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapEqualSourceAndTargetUsingVariablesHasAllChangesTest [1 s] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9673148Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9674149Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmplmqspo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9675224Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9675566Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9677716Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9681250Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapEqualSourceAndTargetUsingVariablesHasAllChangesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 465 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9683443Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9684616Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9686116Z [xUnit.net 00:00:03.20] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpafz0vt.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9687225Z [xUnit.net 00:00:03.20] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9687816Z [xUnit.net 00:00:03.20] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9689478Z [xUnit.net 00:00:03.20] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(162,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9692181Z [xUnit.net 00:00:03.20] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(94,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WriteToFile_WritesCompleteDatabaseAsLinoLines() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9695466Z [xUnit.net 00:00:03.20] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9698410Z [xUnit.net 00:00:03.20] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9700715Z [xUnit.net 00:00:03.21] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwsnmaz.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9701898Z [xUnit.net 00:00:03.21] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9702506Z [xUnit.net 00:00:03.21] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9704358Z [xUnit.net 00:00:03.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(162,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9707235Z [xUnit.net 00:00:03.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(119,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersLeftBranchWithLinkIndexes() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9708604Z [xUnit.net 00:00:03.21] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9709687Z [xUnit.net 00:00:03.21] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9711016Z [xUnit.net 00:00:03.21] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersRepeatedSourceAndTargetAsReferenceOnRight [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9712286Z [xUnit.net 00:00:03.22] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_EscapesNamesThatNeedQuoting [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9718246Z [xUnit.net 00:00:03.21] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpklru1f.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9719482Z [xUnit.net 00:00:03.21] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9720084Z [xUnit.net 00:00:03.21] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9721800Z [xUnit.net 00:00:03.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(162,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9729209Z [xUnit.net 00:00:03.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(135,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersRepeatedSourceAndTargetAsReferenceOnRight() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9744803Z [xUnit.net 00:00:03.21] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9746596Z [xUnit.net 00:00:03.21] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9748737Z [xUnit.net 00:00:03.22] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp35gvyf.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9749996Z [xUnit.net 00:00:03.22] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9750829Z [xUnit.net 00:00:03.22] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9752663Z [xUnit.net 00:00:03.22] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(162,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9755512Z [xUnit.net 00:00:03.22] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(48,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_EscapesNamesThatNeedQuoting() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9758134Z [xUnit.net 00:00:03.22] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9759617Z [xUnit.net 00:00:03.22] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9761307Z [xUnit.net 00:00:03.22] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNamesForIndexesSourcesAndTargets_WhenNamesExist [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9763222Z [xUnit.net 00:00:03.22] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmptrmhbm.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9764405Z [xUnit.net 00:00:03.22] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9765013Z [xUnit.net 00:00:03.22] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9766765Z [xUnit.net 00:00:03.22] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(162,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9769693Z [xUnit.net 00:00:03.22] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(25,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNamesForIndexesSourcesAndTargets_WhenNamesExist() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9771959Z [xUnit.net 00:00:03.22] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9773371Z [xUnit.net 00:00:03.22] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9877675Z [xUnit.net 00:00:03.24] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_SelectsQuoteStyleForNamesContainingQuotes [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9880064Z [xUnit.net 00:00:03.24] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpzzewyg.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9881712Z [xUnit.net 00:00:03.24] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9882413Z [xUnit.net 00:00:03.24] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9884337Z [xUnit.net 00:00:03.24] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(162,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9888119Z [xUnit.net 00:00:03.24] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(71,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_SelectsQuoteStyleForNamesContainingQuotes() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9890822Z [xUnit.net 00:00:03.24] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9891898Z [xUnit.net 00:00:03.24] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9908762Z [xUnit.net 00:00:03.24] Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNumberedReferences_WhenLinksHaveNoNames [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9910426Z [xUnit.net 00:00:03.24] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpfg5lk3.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9911169Z [xUnit.net 00:00:03.24] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9911540Z [xUnit.net 00:00:03.24] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9912644Z [xUnit.net 00:00:03.24] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(162,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9914313Z [xUnit.net 00:00:03.24] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs(11,0): at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNumberedReferences_WhenLinksHaveNoNames() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9915648Z [xUnit.net 00:00:03.24] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:49.9916857Z [xUnit.net 00:00:03.24] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9518344Z [Test] Test was cancelled after 1 seconds timeout +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9531570Z [xUnit.net 00:00:04.20] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MultipleUpdatesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9533362Z [xUnit.net 00:00:04.20] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwjy3kw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9534997Z [xUnit.net 00:00:04.20] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9535831Z [xUnit.net 00:00:04.20] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9538141Z [xUnit.net 00:00:04.20] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9542774Z [xUnit.net 00:00:04.20] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(576,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MultipleUpdatesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9545411Z [xUnit.net 00:00:04.20] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9547032Z [xUnit.net 00:00:04.20] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9580665Z [Test] All links: (1: 1->1) (3: 3->3) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9593568Z [xUnit.net 00:00:04.21] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9596071Z [xUnit.net 00:00:04.21] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpugbruu.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9598064Z [xUnit.net 00:00:04.21] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9598844Z [xUnit.net 00:00:04.21] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9604767Z [xUnit.net 00:00:04.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9608422Z [xUnit.net 00:00:04.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(633,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9610977Z [xUnit.net 00:00:04.21] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9612612Z [xUnit.net 00:00:04.21] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9631593Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WriteToFile_WritesCompleteDatabaseAsLinoLines [10 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9633045Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9634111Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpafz0vt.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9640745Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9643434Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9645636Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 162 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9648499Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WriteToFile_WritesCompleteDatabaseAsLinoLines() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 94 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9650846Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9652269Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9654514Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersLeftBranchWithLinkIndexes [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9656280Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9657727Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwsnmaz.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9659713Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9660098Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9661532Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 162 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9664611Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersLeftBranchWithLinkIndexes() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 119 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9666528Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9667585Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9668811Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersRepeatedSourceAndTargetAsReferenceOnRight [3 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9669721Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9670529Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpklru1f.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9671627Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9671925Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9673247Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 162 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9676142Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatStructure_RendersRepeatedSourceAndTargetAsReferenceOnRight() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 135 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9678203Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9679355Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9680638Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_EscapesNamesThatNeedQuoting [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9681518Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9682460Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp35gvyf.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9683449Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9683800Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9685107Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 162 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9687376Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_EscapesNamesThatNeedQuoting() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 48 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9689270Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9690304Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9691729Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNamesForIndexesSourcesAndTargets_WhenNamesExist [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9692682Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9693512Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmptrmhbm.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9694830Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9695186Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9696622Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 162 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9699166Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNamesForIndexesSourcesAndTargets_WhenNamesExist() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 25 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9701462Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9702603Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9703907Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_SelectsQuoteStyleForNamesContainingQuotes [13 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9704858Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9705751Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpzzewyg.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9706704Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9707042Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9709546Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 162 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9712852Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_SelectsQuoteStyleForNamesContainingQuotes() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 71 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9715061Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9716217Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9717434Z Failed Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNumberedReferences_WhenLinksHaveNoNames [3 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9718343Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9719580Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpfg5lk3.tmp' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9720462Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9720773Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9722022Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.WithNamedLinks(Action`1 test) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 162 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9724357Z at Foundation.Data.Doublets.Cli.Tests.LinoDatabaseOutputTests.FormatDatabase_UsesNumberedReferences_WhenLinksHaveNoNames() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\LinoDatabaseOutputTests.cs:line 11 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9735039Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9736222Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9738087Z [xUnit.net 00:00:04.21] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9740311Z [xUnit.net 00:00:04.22] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteFullPointWithUnboundParts_ShouldKeepFullPoint [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9742301Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MultipleUpdatesTest [1 s] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9743368Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9744552Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwjy3kw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9745662Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9745999Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9747746Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9750881Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MultipleUpdatesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 576 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9752849Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9754076Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9755921Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9756974Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9758416Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpugbruu.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9760525Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9760896Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9762745Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9764813Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationWithEmptySlotDuringUpdateTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 633 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9765986Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9766648Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9767131Z [Test] All links: (1: 1->1) (2: 2->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9767932Z [xUnit.net 00:00:04.21] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpzcm5pg.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9768642Z [xUnit.net 00:00:04.21] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9769007Z [xUnit.net 00:00:04.21] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9770254Z [xUnit.net 00:00:04.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9772234Z [xUnit.net 00:00:04.21] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1187,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9773872Z [xUnit.net 00:00:04.21] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9776488Z [xUnit.net 00:00:04.21] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9777409Z [Test] All links: (21: 21->21) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9778750Z [xUnit.net 00:00:04.22] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpozzigw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9779996Z [xUnit.net 00:00:04.22] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9780619Z [xUnit.net 00:00:04.22] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9790023Z [xUnit.net 00:00:04.22] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9793978Z [xUnit.net 00:00:04.22] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1553,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteFullPointWithUnboundParts_ShouldKeepFullPoint() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9799112Z [xUnit.net 00:00:04.22] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9800945Z [xUnit.net 00:00:04.22] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9802142Z [xUnit.net 00:00:04.23] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchAndDelete2LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9802836Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9804445Z [xUnit.net 00:00:04.23] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcyjyqw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9805175Z [xUnit.net 00:00:04.23] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9805556Z [xUnit.net 00:00:04.23] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9806799Z [xUnit.net 00:00:04.23] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9808621Z [xUnit.net 00:00:04.23] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(355,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchAndDelete2LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9809958Z [xUnit.net 00:00:04.23] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9811025Z [xUnit.net 00:00:04.23] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9898664Z [Test] All links: (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9913928Z [xUnit.net 00:00:04.24] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnyTargetTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9917013Z [xUnit.net 00:00:04.24] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp0refg1.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9918823Z [xUnit.net 00:00:04.24] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9919701Z [xUnit.net 00:00:04.24] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9924078Z [xUnit.net 00:00:04.24] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9928050Z [xUnit.net 00:00:04.24] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(723,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnyTargetTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9930699Z [xUnit.net 00:00:04.24] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9932276Z [xUnit.net 00:00:04.24] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9933701Z [Trace] Constructing NamedTypesDecorator with names DB: C:\Users\runneradmin\AppData\Local\Temp\tmplfptfw.names.links +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9948659Z [ProcessQuery] Query: "(() ((link: link link)))" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9949389Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9950620Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9951235Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9953124Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9954218Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9954635Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9955095Z [ValidateLinksExistOrWillBeCreated] Named links to be created: link +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9955485Z [Trace] GetByName called for name: 'link' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9956186Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9958561Z [ValidateReferencesInPattern] Named link 'link' reference validated in substitution pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9959342Z [Trace] GetByName called for name: 'link' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9960940Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9961643Z [ValidateReferencesInPattern] Named link 'link' reference validated in substitution pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9962494Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9963089Z [Trace] GetByName called for name: 'link' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9963936Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9966384Z [Trace] Update called with restriction: [1] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9976200Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9976951Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9977547Z [EnsureNestedLinkCreatedRecursively] Created named leaf 'link' => ID=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9978222Z [Trace] SetName called for link: 1 with name: 'link' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9978690Z [Trace] RemoveName called for link: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9979075Z [Trace] RemoveName completed for link: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9979479Z [Trace] SetName result: 100 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9983284Z [EnsureNestedLinkCreatedRecursively] Updating link ID=1 => Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9984213Z [Trace] Update called with restriction: [1,0,0] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9984776Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9985667Z [EnsureNestedLinkCreatedRecursively] Update handler: before=(1: 0->0), after=(1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9986382Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9986826Z [ProcessQuery] Created link ID #1 from substitution pattern. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9987315Z [Test] All links: (1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9987666Z [Trace] GetByName called for name: 'link' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9988065Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9991235Z [Trace] GetName called for link: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:50.9991713Z [Trace] GetName result: link +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0009654Z [xUnit.net 00:00:04.25] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithStringId_ShouldCreateSingleLink [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0013222Z [xUnit.net 00:00:04.25] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmplfptfw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0014853Z [xUnit.net 00:00:04.25] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0015606Z [xUnit.net 00:00:04.25] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0018375Z [xUnit.net 00:00:04.25] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0022410Z [xUnit.net 00:00:04.25] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1152,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithStringId_ShouldCreateSingleLink() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0025188Z [xUnit.net 00:00:04.25] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0026780Z [xUnit.net 00:00:04.25] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0052150Z [Test] All links: (1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0059974Z [xUnit.net 00:00:04.26] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeletionDuringUpdateTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0063785Z [xUnit.net 00:00:04.26] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwzz1rf.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0065782Z [xUnit.net 00:00:04.26] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0067479Z [xUnit.net 00:00:04.26] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0070033Z [xUnit.net 00:00:04.26] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0080281Z [xUnit.net 00:00:04.26] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(652,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeletionDuringUpdateTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0082426Z [xUnit.net 00:00:04.26] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0083683Z [xUnit.net 00:00:04.26] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0116123Z [xUnit.net 00:00:04.26] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithMissingNamedReferences_ShouldThrowException [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0118441Z [xUnit.net 00:00:04.26] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2safpi.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0120410Z [xUnit.net 00:00:04.26] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0121212Z [xUnit.net 00:00:04.26] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0123527Z [xUnit.net 00:00:04.26] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0130776Z [xUnit.net 00:00:04.26] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1743,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithMissingNamedReferences_ShouldThrowException() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0134567Z [xUnit.net 00:00:04.26] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0135788Z [xUnit.net 00:00:04.26] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0153997Z [Test] All links: (1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0168084Z [xUnit.net 00:00:04.27] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithIntegerId_ShouldCreateSingleLink [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0170661Z [xUnit.net 00:00:04.27] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwl0fac.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0172385Z [xUnit.net 00:00:04.27] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0173164Z [xUnit.net 00:00:04.27] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0175487Z [xUnit.net 00:00:04.27] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0181199Z [xUnit.net 00:00:04.27] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1172,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithIntegerId_ShouldCreateSingleLink() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0183666Z [xUnit.net 00:00:04.27] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0185186Z [xUnit.net 00:00:04.27] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0208150Z [Test] All links: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0223052Z [xUnit.net 00:00:04.27] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksByIndexTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0225727Z [xUnit.net 00:00:04.27] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmptl2sfy.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0227472Z [xUnit.net 00:00:04.27] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0228292Z [xUnit.net 00:00:04.27] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0230955Z [xUnit.net 00:00:04.27] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0234775Z [xUnit.net 00:00:04.27] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(810,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksByIndexTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0242067Z [xUnit.net 00:00:04.27] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0243872Z [xUnit.net 00:00:04.27] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0260474Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0262036Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0263105Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpzcm5pg.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0264361Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0264860Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0267465Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0273586Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1187 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0275879Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0276945Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0278693Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteFullPointWithUnboundParts_ShouldKeepFullPoint [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0279711Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0280584Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpozzigw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0281561Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0281870Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0295518Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0298911Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteFullPointWithUnboundParts_ShouldKeepFullPoint() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1553 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0301945Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0304300Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0306156Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchAndDelete2LevelNestedLinksTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0307586Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0308553Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcyjyqw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0309503Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0310173Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0311804Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0314438Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchAndDelete2LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 355 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0316373Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0317429Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0318505Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnyTargetTest [11 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0319263Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0320152Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp0refg1.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0321032Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0321345Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0323024Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0325579Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnyTargetTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 723 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0328465Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0329513Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0339873Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithStringId_ShouldCreateSingleLink [9 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0340953Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0342311Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmplfptfw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0343581Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0343920Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0346569Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0349924Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithStringId_ShouldCreateSingleLink() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1152 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0352458Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0353938Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0355547Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeletionDuringUpdateTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0356462Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0359943Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwzz1rf.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0361800Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0362185Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0365654Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0368997Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeletionDuringUpdateTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 652 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0375048Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0375940Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0377036Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithMissingNamedReferences_ShouldThrowException [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0378160Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0379126Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2safpi.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0379768Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0380286Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0381589Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0388174Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithMissingNamedReferences_ShouldThrowException() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1743 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0391569Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0397948Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0407168Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithIntegerId_ShouldCreateSingleLink [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0412030Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0417951Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwl0fac.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0421332Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0422826Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0437240Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0447199Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithIntegerId_ShouldCreateSingleLink() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1172 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0453486Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0455676Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0461912Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksByIndexTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0463031Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0464109Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmptl2sfy.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0465197Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0465555Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0466802Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0468657Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksByIndexTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 810 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0469765Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0470446Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0470952Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0472019Z [xUnit.net 00:00:04.28] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedFamilyLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0473434Z [xUnit.net 00:00:04.28] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNumericLinks_ShouldCreateOnlyOneSubLink [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0476453Z [xUnit.net 00:00:04.28] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpgq33dh.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0477638Z [xUnit.net 00:00:04.28] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0478023Z [xUnit.net 00:00:04.28] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0479995Z [xUnit.net 00:00:04.28] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0483047Z [xUnit.net 00:00:04.28] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(827,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedFamilyLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0489940Z [xUnit.net 00:00:04.28] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0492071Z [xUnit.net 00:00:04.28] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0492986Z [Test] All links: (1: 1->2) (2: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0497704Z [xUnit.net 00:00:04.28] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpgezs04.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0499122Z [xUnit.net 00:00:04.28] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0500028Z [xUnit.net 00:00:04.28] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0502316Z [xUnit.net 00:00:04.28] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0505808Z [xUnit.net 00:00:04.28] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1308,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNumericLinks_ShouldCreateOnlyOneSubLink() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0508473Z [xUnit.net 00:00:04.28] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0510168Z [xUnit.net 00:00:04.28] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0512107Z [xUnit.net 00:00:04.30] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.StringAliasesInVariableRestriction_ShouldConstrainMatchesToNamedLinks [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0513500Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0514786Z [xUnit.net 00:00:04.30] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmph5bv3n.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0515839Z [xUnit.net 00:00:04.30] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0516204Z [xUnit.net 00:00:04.30] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0517649Z [xUnit.net 00:00:04.30] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0520509Z [xUnit.net 00:00:04.30] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1506,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.StringAliasesInVariableRestriction_ShouldConstrainMatchesToNamedLinks() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0522850Z [xUnit.net 00:00:04.30] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0524896Z [xUnit.net 00:00:04.30] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0526249Z [Test] All links: (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0539289Z [xUnit.net 00:00:04.30] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0542064Z [xUnit.net 00:00:04.30] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpakpo13.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0547443Z [xUnit.net 00:00:04.30] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0548228Z [xUnit.net 00:00:04.30] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0550748Z [xUnit.net 00:00:04.30] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0554976Z [xUnit.net 00:00:04.30] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(46,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0556886Z [xUnit.net 00:00:04.30] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0557991Z [xUnit.net 00:00:04.30] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0584727Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) (4: 3->3) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0615750Z [xUnit.net 00:00:04.31] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNamedLinks_ShouldCreateOnlyOneSubLink [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0618311Z [xUnit.net 00:00:04.31] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp31prbn.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0620312Z [xUnit.net 00:00:04.31] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0621001Z [xUnit.net 00:00:04.31] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0624013Z [xUnit.net 00:00:04.31] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0627661Z [xUnit.net 00:00:04.31] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1267,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNamedLinks_ShouldCreateOnlyOneSubLink() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0631081Z [xUnit.net 00:00:04.31] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0632545Z [xUnit.net 00:00:04.31] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0655417Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0669297Z [xUnit.net 00:00:04.32] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithAutoCreateMissingNamedReferences_ShouldCreatePointLinks [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0671983Z [xUnit.net 00:00:04.32] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpetvxxx.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0673578Z [xUnit.net 00:00:04.32] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0674393Z [xUnit.net 00:00:04.32] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0676695Z [xUnit.net 00:00:04.32] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0683920Z [xUnit.net 00:00:04.32] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1772,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithAutoCreateMissingNamedReferences_ShouldCreatePointLinks() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0686891Z [xUnit.net 00:00:04.32] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0688580Z [xUnit.net 00:00:04.32] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0705986Z [Test] All links: (1: 1->2) (2: 2->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0717641Z [xUnit.net 00:00:04.32] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksWithCrossReferences_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0722014Z [xUnit.net 00:00:04.32] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcxhrad.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0723682Z [xUnit.net 00:00:04.32] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0724724Z [xUnit.net 00:00:04.32] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0726917Z [xUnit.net 00:00:04.32] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0734967Z [xUnit.net 00:00:04.32] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1690,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksWithCrossReferences_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0737224Z [xUnit.net 00:00:04.32] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0738944Z [xUnit.net 00:00:04.32] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0762432Z [Test] All links: (1: 2->1) (2: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0779112Z [xUnit.net 00:00:04.33] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoIntoFirstLinkUsingVariablesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0780476Z [Test] ===== Starting UpdateNamedLinkNameTest ===== +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0782348Z [xUnit.net 00:00:04.33] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmphanlfk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0783792Z [xUnit.net 00:00:04.33] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0784483Z [xUnit.net 00:00:04.33] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0788764Z [xUnit.net 00:00:04.33] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0792676Z [xUnit.net 00:00:04.33] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(517,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoIntoFirstLinkUsingVariablesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0795564Z [xUnit.net 00:00:04.33] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0797163Z [xUnit.net 00:00:04.33] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0798681Z [Trace] Constructing NamedTypesDecorator with names DB: C:\Users\runneradmin\AppData\Local\Temp\tmpkeqcaw.names.links +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0824496Z [Test] Constants: Null=0, Any=4294967292, Continue=4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0825510Z [Test] Step 1: Creating initial link +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0826283Z [Test] Query: (() ((child: father mother))) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0826888Z [ProcessQuery] Query: "(() ((child: father mother)))" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0827890Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0828631Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0829366Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0830605Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0832091Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0834200Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0836234Z [ValidateLinksExistOrWillBeCreated] Named links to be created: child +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0838119Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0839969Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0840607Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0842286Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0843287Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0848891Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0853944Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'father' as point link. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0869354Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0869895Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0871108Z [Trace] Update called with restriction: [1] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0871846Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0873099Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0877156Z [Trace] SetName called for link: 1 with name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0879945Z [Trace] RemoveName called for link: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0880944Z [Trace] RemoveName completed for link: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0881514Z [Trace] SetName result: 108 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0882071Z [Trace] Update called with restriction: [1,0,0] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0882781Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0883483Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0883998Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0891989Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0892942Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'mother' as point link. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0894732Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0895633Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0896230Z [Trace] Update called with restriction: [2] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0896966Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,0,0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0897661Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0898280Z [Trace] SetName called for link: 2 with name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0898908Z [Trace] RemoveName called for link: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0899468Z [Trace] RemoveName completed for link: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0900029Z [Trace] SetName result: 110 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0900682Z [Trace] Update called with restriction: [2,0,0] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0901390Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,2,2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0902088Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0902744Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0903447Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0903991Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0904963Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0906362Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0907007Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0907816Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0909148Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0909834Z [EnsureLinkCreated] => assigned new ID=3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0910425Z [Trace] Update called with restriction: [3] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0911059Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0911677Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0912647Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0913728Z [Trace] SetName called for link: 3 with name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0914294Z [Trace] RemoveName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0914770Z [Trace] RemoveName completed for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0915231Z [Trace] SetName result: 118 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0915779Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0916424Z [Test] Initial link creation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0916924Z [Test] Step 2: Verifying initial state +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0917441Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0917917Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0925036Z [Test] Initial child ID: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0925903Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0927407Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0929127Z [Test] Initial father ID: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0929695Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0930306Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0930818Z [Test] Initial mother ID: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0931272Z [Test] Initial links count: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0931883Z [Test] Initial link: Index=(1: 1->1), Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0932546Z [Test] Initial link: Index=(2: 2->2), Source=2, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0933216Z [Test] Initial link: Index=(3: 1->2), Source=1, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0933851Z [Test] Initial state verification completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0934664Z [Test] Step 3: Updating link name from 'child' to 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0935243Z [Test] Query: (((child: father mother)) ((son: father mother))) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0935985Z [Test] Current state before update: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0936401Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0936777Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0937159Z [Test] - child name exists: True +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0937521Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0937895Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0938223Z [Test] - son name exists: False +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0938585Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0939163Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0939545Z [Test] - father name exists: True +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0940354Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0940825Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0941276Z [Test] - mother name exists: True +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0941755Z [Test] Starting ProcessQuery for update... +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0942267Z [Test] Current links before update: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0944674Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0946674Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0948525Z [Test] Link: Index=(3: 1->2), Source=1, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0949782Z [ProcessQuery] Query: "(((child: father mother)) ((son: father mother)))" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0950610Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0951294Z [ProcessQuery] Restriction link => Id="" Values.Count=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0952013Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0952663Z [ProcessQuery] Restriction patterns to parse: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0953285Z [ProcessQuery] Substitution patterns to parse: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0953990Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0954769Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0963097Z [ValidateLinksExistOrWillBeCreated] Named links to be created: son +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0963922Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0964442Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0965259Z [ValidateReferencesInPattern] Named link 'child' reference validated in restriction pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0966137Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0966670Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0967886Z [ValidateReferencesInPattern] Named link 'father' reference validated in restriction pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0968778Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0969314Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0973085Z [ValidateReferencesInPattern] Named link 'mother' reference validated in restriction pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0974010Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0974568Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0975328Z [ValidateReferencesInPattern] Named link 'father' reference validated in substitution pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0976193Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0976700Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0977777Z [ValidateReferencesInPattern] Named link 'mother' reference validated in substitution pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0978669Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0979593Z [ProcessQuery] Detected single sub-link with 2 sub-values => replaced with one composite restriction pattern. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0980694Z [ProcessQuery] Converting restriction patterns => done. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0981322Z [ProcessQuery] Converting substitution patterns => done. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0981944Z [ProcessQuery] Finding solutions for restriction patterns... +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0982487Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0982889Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0983527Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0983896Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0984247Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0984633Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0985182Z [ProcessQuery] Found 1 total solution(s) matching restriction patterns. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0985780Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0986180Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0986528Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0986919Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0987654Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0988036Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0988377Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0989154Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0989585Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0990317Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0990737Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0991135Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0991527Z [ProcessQuery] allSolutionsNoOperation=False +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0992172Z [ProcessQuery] Some solutions lead to actual changes => building operations. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0992776Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0993179Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0993538Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0993938Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0994299Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.0994698Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1013521Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1013958Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1014322Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1014693Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1015053Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1015423Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1016051Z [ProcessQuery] For a solution => substitution links count=1, restriction links count=1. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1016837Z [ProcessQuery] => 2 operation(s) derived from these patterns. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1017752Z [ProcessQuery] All planned operations => 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1018467Z [ProcessQuery] Applying all planned operations... +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1019189Z [ApplyAllPlannedOperations] Operation: before=(3:1->2), after=(0:0->0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1019814Z [Trace] GetName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1020201Z [Trace] GetName result: child +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1020692Z [ApplyAllPlannedOperations] Name for before.Index 3 = 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1021328Z [ApplyAllPlannedOperations] Deleting link => ID=3, S=1, T=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1021922Z [RemoveLinks] Found 1 link(s) matching (ID=3, S=1, T=2). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1022382Z [Trace] RemoveName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1022829Z [Trace] RemoveName completed for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1023299Z [RemoveLinks] Deleting link => ID=3, S=1, T=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1023782Z [Trace] Delete called with restriction: [3,1,2] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1024944Z [Trace] Debug: this._links is of type: Foundation.Data.Doublets.Cli.PinnedTypesDecorator`1[System.UInt32] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1025813Z [Trace] Debug: Calling underlying _links.Delete +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1026432Z [Trace] Debug: handlerWrapper invoked - before=3,1,2, after=3,0,0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1026992Z [Test] Update ChangesHandler called: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1027415Z [Test] - Before state: (3: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1028162Z [Test] - After state: (3: 0->0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1028570Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1029004Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1029363Z [Test] - child name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1029792Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1030410Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1030780Z [Test] - son name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1031202Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1031630Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1031989Z [Test] - father name during change: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1032452Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1032862Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1033225Z [Test] - mother name during change: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1033619Z [Test] - All links during change: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1034787Z [xUnit.net 00:00:04.34] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateNamedLinkNameTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1036520Z [xUnit.net 00:00:04.34] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create6LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1038572Z [xUnit.net 00:00:04.35] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1039669Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1039965Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1040242Z [Test] Link: Index=(3: 0->0), Source=0, Target=0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1040588Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=null +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1040914Z [Trace] RemoveName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1041160Z [Trace] RemoveName completed for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1041413Z [Test] Update ChangesHandler called: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1041642Z [Test] - Before state: (3: 0->0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1041854Z [Test] - After state: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1042063Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1042309Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1042522Z [Test] - child name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1042760Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1042993Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1043199Z [Test] - son name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1043444Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1043678Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1043891Z [Test] - father name during change: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1044132Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1044366Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1044561Z [Test] - mother name during change: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1044783Z [Test] - All links during change: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1045027Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1045300Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1045556Z [Trace] Debug: Delete result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1045946Z [ApplyAllPlannedOperations] Operation: before=(0:0->0), after=(4294967292:1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1046340Z [Trace] GetName called for link: 4294967292 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1046580Z [Trace] GetName result: String +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1047113Z [ApplyAllPlannedOperations] Name for after.Index 4294967292 = 'String' (pre-op) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1048060Z [ApplyAllPlannedOperations] Creating link => ID=4294967292, S=1, T=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1049155Z [CreateOrUpdateLink] Detected wildcard substitution => nested create & name. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1050333Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1050782Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1051389Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1051988Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1052390Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1052940Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1053631Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1054036Z [EnsureLinkCreated] => assigned new ID=3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1054399Z [Test] Update ChangesHandler called: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1055044Z [Test] - Before state: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1055362Z [Test] - After state: (3: 0->0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1056438Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1058481Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1060521Z [Test] - child name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1060941Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1061351Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1061719Z [Test] - son name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1062136Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1062548Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1063520Z [Test] - father name during change: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1063950Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1064360Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1064713Z [Test] - mother name during change: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1065035Z [Test] - All links during change: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1065445Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1065926Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1066381Z [Test] Link: Index=(3: 0->0), Source=0, Target=0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1066842Z [Test] Creating new link: Index=3, Source=0, Target=0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1067298Z [Test] Checking if link exists: True +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1067727Z [Test] Checking if source exists: False +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1068525Z [Test] Checking if target exists: False +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1068924Z [Test] Names before creation: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1069306Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1069720Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1070011Z [Test] - child: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1070341Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1070752Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1071035Z [Test] - son: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1071344Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1071721Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1072043Z [Test] - father: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1072353Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1072706Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1072887Z [Test] - mother: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1073083Z [Trace] Update called with restriction: [3] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1073429Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1073856Z [Test] Update ChangesHandler called: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1074203Z [Test] - Before state: (3: 0->0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1074540Z [Test] - After state: (3: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1074780Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1075017Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1075234Z [Test] - child name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1075476Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1075714Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1075926Z [Test] - son name during change: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1076167Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1076415Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1076618Z [Test] - father name during change: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1076866Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1077090Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1077524Z [Test] - mother name during change: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1077749Z [Test] - All links during change: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1078008Z [Test] Link: Index=(1: 1->1), Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1078285Z [Test] Link: Index=(2: 2->2), Source=2, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1078554Z [Test] Link: Index=(3: 1->2), Source=1, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1078798Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1079305Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1079843Z [Trace] SetName called for link: 3 with name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1080112Z [Trace] RemoveName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1080495Z [Trace] RemoveName completed for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1080727Z [Trace] SetName result: 118 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1080954Z [Trace] GetName called for link: 4294967292 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1081199Z [Trace] GetName result: String +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1081565Z [ApplyAllPlannedOperations] Name for after.Index 4294967292 = 'String' (post-op) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1082038Z [ProcessQuery] Restoring unexpected deletions if any... +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1082429Z [RestoreUnexpectedLinkDeletions] No unexpected deletions found. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1082780Z [ProcessQuery] Finished processing query. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1083032Z [Test] Update operation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1083265Z [Test] Step 4: Verifying final state +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1083509Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1083749Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1083953Z [Test] Final child ID: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1084160Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1084395Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1084576Z [Test] Final son ID: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1084785Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1085013Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1085206Z [Test] Final father ID: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1085417Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1086040Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1086330Z [Test] Final mother ID: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1086639Z [Test] Final links count: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1087074Z [Test] Final link: Index=(1: 1->1), Source=1, Target=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1087597Z [Test] Final link: Index=(2: 2->2), Source=2, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1088078Z [Test] Final link: Index=(3: 1->2), Source=1, Target=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1088668Z [Test] ===== UpdateNamedLinkNameTest completed successfully ===== +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1090117Z [xUnit.net 00:00:04.34] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkeqcaw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1091423Z [xUnit.net 00:00:04.34] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1092043Z [xUnit.net 00:00:04.34] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1094233Z [xUnit.net 00:00:04.34] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1097440Z [xUnit.net 00:00:04.34] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(930,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateNamedLinkNameTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1099673Z [xUnit.net 00:00:04.34] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1101176Z [xUnit.net 00:00:04.34] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1102558Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedFamilyLinksTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1103692Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1104648Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpgq33dh.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1108349Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1109839Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1113727Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1116625Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedFamilyLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 827 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1118743Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1119880Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1121820Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNumericLinks_ShouldCreateOnlyOneSubLink [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1123396Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1124348Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpgezs04.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1125315Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1125635Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1127599Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1130665Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNumericLinks_ShouldCreateOnlyOneSubLink() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1308 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1132869Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1133913Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1135434Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.StringAliasesInVariableRestriction_ShouldConstrainMatchesToNamedLinks [14 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1136697Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1137646Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmph5bv3n.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1138668Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1138985Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1140759Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1143878Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.StringAliasesInVariableRestriction_ShouldConstrainMatchesToNamedLinks() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1506 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1146151Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1148463Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1149850Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1151173Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1152558Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpakpo13.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1172720Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1173129Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1174956Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1177891Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterGapTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 46 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1180377Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1181615Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1183266Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNamedLinks_ShouldCreateOnlyOneSubLink [7 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1184554Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1185586Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp31prbn.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1186711Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1187447Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1189319Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1192575Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateDuplicatePairWithNamedLinks_ShouldCreateOnlyOneSubLink() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1267 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1194295Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1194989Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1195954Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithAutoCreateMissingNamedReferences_ShouldCreatePointLinks [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1196709Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1197290Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpetvxxx.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1198219Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1198490Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1199504Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1201335Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateNamedLinkWithAutoCreateMissingNamedReferences_ShouldCreatePointLinks() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1772 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1202678Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1203649Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1205627Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksWithCrossReferences_ShouldSucceed [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1206750Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1207675Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcxhrad.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1208631Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1208961Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1210566Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1219347Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksWithCrossReferences_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1690 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1221362Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1222427Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1223712Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoIntoFirstLinkUsingVariablesTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1224784Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1225678Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmphanlfk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1226656Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1227016Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1228799Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1231606Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoIntoFirstLinkUsingVariablesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 517 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1233581Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1234632Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1236142Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateNamedLinkNameTest [11 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1236953Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1237898Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkeqcaw.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1238900Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1239236Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1241306Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1244108Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateNamedLinkNameTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 930 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1246762Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1247898Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1248888Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 6->6) (7: 5->6) (8: 4->7) (9: 3->8) (10: 2->9) (11: 1->10) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1250557Z [xUnit.net 00:00:04.34] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpazecex.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1253840Z [xUnit.net 00:00:04.34] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1254463Z [xUnit.net 00:00:04.34] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1258311Z [xUnit.net 00:00:04.34] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1268598Z [xUnit.net 00:00:04.34] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(205,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create6LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1270778Z [xUnit.net 00:00:04.34] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1272135Z [xUnit.net 00:00:04.34] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1273390Z [Test] All links: (1: 1->1) (2: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1275252Z [xUnit.net 00:00:04.35] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpy2dg40.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1276504Z [xUnit.net 00:00:04.35] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1277106Z [xUnit.net 00:00:04.35] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1279247Z [xUnit.net 00:00:04.35] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1282591Z [xUnit.net 00:00:04.35] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1241,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1285534Z [xUnit.net 00:00:04.35] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1287074Z [xUnit.net 00:00:04.35] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1289142Z [xUnit.net 00:00:04.35] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithAutoCreateMissingNumericReferences_ShouldCreatePointLinks [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1291123Z [xUnit.net 00:00:04.36] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1293560Z [xUnit.net 00:00:04.36] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateMixedNamedAndNumericLinks_ShouldReuseExistingLinks [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1296226Z [xUnit.net 00:00:04.37] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchSelfReferencingAndMakeThemGoOutFromFirstLinkUsingVariablesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1297751Z [xUnit.net 00:00:04.38] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1298619Z [Test] All links: (10: 10->10) (20: 10->20) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1299717Z [xUnit.net 00:00:04.36] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpusmqa3.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1300920Z [xUnit.net 00:00:04.36] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1301810Z [xUnit.net 00:00:04.36] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1307078Z [xUnit.net 00:00:04.36] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1311229Z [xUnit.net 00:00:04.36] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1758,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithAutoCreateMissingNumericReferences_ShouldCreatePointLinks() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1314166Z [xUnit.net 00:00:04.36] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1315977Z [xUnit.net 00:00:04.36] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1317316Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1318674Z [xUnit.net 00:00:04.36] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpm5chbo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1320584Z [xUnit.net 00:00:04.36] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1321200Z [xUnit.net 00:00:04.36] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1323192Z [xUnit.net 00:00:04.36] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1326749Z [xUnit.net 00:00:04.36] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(93,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1329004Z [xUnit.net 00:00:04.36] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1330506Z [xUnit.net 00:00:04.36] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1331508Z [Test] All links: (1: 1->1) (2: 2->2) (3: 2->1) (4: 3->3) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1332918Z [xUnit.net 00:00:04.37] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqzrehy.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1334190Z [xUnit.net 00:00:04.37] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1334759Z [xUnit.net 00:00:04.37] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1336767Z [xUnit.net 00:00:04.37] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1340957Z [xUnit.net 00:00:04.37] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1367,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateMixedNamedAndNumericLinks_ShouldReuseExistingLinks() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1343571Z [xUnit.net 00:00:04.37] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1345069Z [xUnit.net 00:00:04.37] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1349275Z [Test] All links: (1: 1->1) (2: 1->2) (3: 3->1) (4: 1->4) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1353577Z [xUnit.net 00:00:04.37] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp1wd0nj.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1354908Z [xUnit.net 00:00:04.37] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1355553Z [xUnit.net 00:00:04.37] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1357705Z [xUnit.net 00:00:04.37] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1361185Z [xUnit.net 00:00:04.37] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(555,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchSelfReferencingAndMakeThemGoOutFromFirstLinkUsingVariablesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1364244Z [xUnit.net 00:00:04.37] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1365769Z [xUnit.net 00:00:04.37] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1367051Z [Test] All links: (1: 1->1) (2: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1368405Z [xUnit.net 00:00:04.38] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpyc3qn0.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1369680Z [xUnit.net 00:00:04.38] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1370250Z [xUnit.net 00:00:04.38] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1372380Z [xUnit.net 00:00:04.38] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1378856Z [xUnit.net 00:00:04.38] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1204,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1381378Z [xUnit.net 00:00:04.38] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1382869Z [xUnit.net 00:00:04.38] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1384680Z [xUnit.net 00:00:04.38] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.EnsureCreated_WithSpecialAnyReference_ShouldThrowControlledException [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1386950Z [xUnit.net 00:00:04.38] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create5LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1388923Z [xUnit.net 00:00:04.38] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpuugqzb.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1390073Z [xUnit.net 00:00:04.38] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1390682Z [xUnit.net 00:00:04.38] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1392787Z [xUnit.net 00:00:04.38] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1396228Z [xUnit.net 00:00:04.38] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1569,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.EnsureCreated_WithSpecialAnyReference_ShouldThrowControlledException() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1399354Z [xUnit.net 00:00:04.38] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1402657Z [xUnit.net 00:00:04.38] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1408251Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 4->5) (7: 3->6) (8: 2->7) (9: 1->8) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1409881Z [xUnit.net 00:00:04.38] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpdap40m.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1411152Z [xUnit.net 00:00:04.38] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1411994Z [xUnit.net 00:00:04.38] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1414105Z [xUnit.net 00:00:04.38] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1417343Z [xUnit.net 00:00:04.38] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(166,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create5LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1419487Z [xUnit.net 00:00:04.38] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1420947Z [xUnit.net 00:00:04.38] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1423204Z [xUnit.net 00:00:04.39] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchWithExactIndexAndDelete2LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1425081Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create6LevelNestedLinksTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1425957Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1426855Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpazecex.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1427904Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1428246Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1429936Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1432755Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create6LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 205 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1434674Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1435756Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1437242Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1438443Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1439386Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpy2dg40.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1440420Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1440753Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1442380Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1446678Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1241 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1449324Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1452657Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1456024Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithAutoCreateMissingNumericReferences_ShouldCreatePointLinks [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1458190Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1459212Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpusmqa3.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1460272Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1460632Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1462336Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1465758Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithAutoCreateMissingNumericReferences_ShouldCreatePointLinks() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1758 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1468574Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1469659Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1470795Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1471654Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1472597Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpm5chbo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1473632Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1473984Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1475674Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1478318Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateMultipleLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 93 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1480169Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1481304Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1482756Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateMixedNamedAndNumericLinks_ShouldReuseExistingLinks [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1483922Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1485253Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqzrehy.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1486317Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1486668Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1488398Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1492192Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateMixedNamedAndNumericLinks_ShouldReuseExistingLinks() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1367 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1493797Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1494702Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1496337Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchSelfReferencingAndMakeThemGoOutFromFirstLinkUsingVariablesTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1499596Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1501294Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp1wd0nj.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1502672Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1503197Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1504954Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1508312Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchSelfReferencingAndMakeThemGoOutFromFirstLinkUsingVariablesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 555 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1510622Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1511822Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1513951Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1515168Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1516118Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpyc3qn0.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1517158Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1517497Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1519150Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1522217Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateRightCompositeIntegerChildrenWithoutExtraLeaf_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1204 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1524464Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1526000Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1527508Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.EnsureCreated_WithSpecialAnyReference_ShouldThrowControlledException [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1528624Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1529535Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpuugqzb.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1530550Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1530881Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1532855Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1536279Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.EnsureCreated_WithSpecialAnyReference_ShouldThrowControlledException() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1569 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1537935Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1538657Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1539764Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create5LevelNestedLinksTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1540922Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1543198Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpdap40m.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1547648Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1548037Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1549834Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1552704Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create5LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 166 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1554664Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1555875Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1556696Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1558084Z [xUnit.net 00:00:04.39] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpln04bh.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1559348Z [xUnit.net 00:00:04.39] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1559996Z [xUnit.net 00:00:04.39] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1562259Z [xUnit.net 00:00:04.39] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1566344Z [xUnit.net 00:00:04.39] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(336,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchWithExactIndexAndDelete2LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1568978Z [xUnit.net 00:00:04.39] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1570564Z [xUnit.net 00:00:04.39] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1572178Z [xUnit.net 00:00:04.39] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateSingleLinkTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1573851Z [xUnit.net 00:00:04.40] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MixedMultipleUpdatesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1575720Z [xUnit.net 00:00:04.40] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NestedDeleteAllLinksBySourceAndTargetTest1 [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1576825Z [Test] All links: (1: 1->2) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1578368Z [xUnit.net 00:00:04.39] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpbtizxz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1579599Z [xUnit.net 00:00:04.39] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1580197Z [xUnit.net 00:00:04.39] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1582249Z [xUnit.net 00:00:04.39] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1585695Z [xUnit.net 00:00:04.40] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(297,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateSingleLinkTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1588006Z [xUnit.net 00:00:04.40] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1589728Z [xUnit.net 00:00:04.40] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1590574Z [Test] All links: (1: 1->2) (2: 2->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1591826Z [xUnit.net 00:00:04.40] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpmyfkcg.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1592970Z [xUnit.net 00:00:04.40] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1593493Z [xUnit.net 00:00:04.40] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1595517Z [xUnit.net 00:00:04.40] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1599705Z [xUnit.net 00:00:04.40] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(595,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MixedMultipleUpdatesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1601979Z [xUnit.net 00:00:04.40] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1603410Z [xUnit.net 00:00:04.40] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1604565Z [Test] All links: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1605780Z [xUnit.net 00:00:04.40] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpp3whah.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1607035Z [xUnit.net 00:00:04.40] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1607627Z [xUnit.net 00:00:04.40] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1609783Z [xUnit.net 00:00:04.40] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1613056Z [xUnit.net 00:00:04.40] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(776,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NestedDeleteAllLinksBySourceAndTargetTest1() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1615463Z [xUnit.net 00:00:04.40] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1616966Z [xUnit.net 00:00:04.40] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1619033Z [xUnit.net 00:00:04.41] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateWithDifferentPairs_ShouldNotDeduplicateDifferentLinks [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1620740Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 2->1) (5: 3->4) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1623098Z [xUnit.net 00:00:04.41] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpefzagd.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1625090Z [xUnit.net 00:00:04.41] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1625901Z [xUnit.net 00:00:04.41] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1628344Z [xUnit.net 00:00:04.41] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1632471Z [xUnit.net 00:00:04.41] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1396,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateWithDifferentPairs_ShouldNotDeduplicateDifferentLinks() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1635330Z [xUnit.net 00:00:04.41] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1636920Z [xUnit.net 00:00:04.41] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1647719Z [Test] All links: (1: 1->1) (2: 2->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1669489Z [xUnit.net 00:00:04.41] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1671791Z [xUnit.net 00:00:04.42] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmplxmjgg.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1673031Z [xUnit.net 00:00:04.42] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1673811Z [xUnit.net 00:00:04.42] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1676053Z [xUnit.net 00:00:04.42] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1679554Z [xUnit.net 00:00:04.42] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1221,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1682068Z [xUnit.net 00:00:04.42] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1683674Z [xUnit.net 00:00:04.42] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1764446Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1800586Z [xUnit.net 00:00:04.43] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoExactMatch2LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1802802Z [xUnit.net 00:00:04.43] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsuc1kk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1804503Z [xUnit.net 00:00:04.43] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1805246Z [xUnit.net 00:00:04.43] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1807767Z [xUnit.net 00:00:04.43] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1811701Z [xUnit.net 00:00:04.43] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(374,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoExactMatch2LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1814362Z [xUnit.net 00:00:04.43] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1816783Z [xUnit.net 00:00:04.43] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1818018Z [Test] All links: (1: 1->2) (2: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1835641Z [xUnit.net 00:00:04.43] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoOutOfFirstLinkUsingVariablesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1838201Z [xUnit.net 00:00:04.43] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsi225c.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1842561Z [xUnit.net 00:00:04.43] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1843416Z [xUnit.net 00:00:04.43] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1846895Z [xUnit.net 00:00:04.43] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1850690Z [xUnit.net 00:00:04.43] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(498,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoOutOfFirstLinkUsingVariablesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1853496Z [xUnit.net 00:00:04.43] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1855143Z [xUnit.net 00:00:04.43] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1875416Z [Test] All links: (3: 3->3) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1920508Z [xUnit.net 00:00:04.44] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1923025Z [xUnit.net 00:00:04.44] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpepcfsk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1924507Z [xUnit.net 00:00:04.44] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1928994Z [xUnit.net 00:00:04.44] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1931525Z [xUnit.net 00:00:04.44] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1939312Z [xUnit.net 00:00:04.44] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(61,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1942052Z [xUnit.net 00:00:04.44] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1943776Z [xUnit.net 00:00:04.44] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1945946Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchWithExactIndexAndDelete2LevelNestedLinksTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1947314Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1948763Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpln04bh.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1949058Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1949396Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1950874Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1952502Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MatchWithExactIndexAndDelete2LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 336 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1953657Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1954257Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1955251Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateSingleLinkTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1955480Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1956710Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpbtizxz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1956976Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1957258Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1958600Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1967828Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateSingleLinkTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 297 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1968712Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1969848Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1970661Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MixedMultipleUpdatesTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1970942Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1971978Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpmyfkcg.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1979728Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1980239Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1984931Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1986540Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MixedMultipleUpdatesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 595 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.1987454Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2002888Z [xUnit.net 00:00:04.45] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteMatchedLinkAndOutgoingLink_ShouldPreserveExistingParts [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2003536Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2005147Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NestedDeleteAllLinksBySourceAndTargetTest1 [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2005423Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2007072Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpp3whah.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2007416Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2015648Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2017393Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2019315Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NestedDeleteAllLinksBySourceAndTargetTest1() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 776 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2021628Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2022254Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2023353Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateWithDifferentPairs_ShouldNotDeduplicateDifferentLinks [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2023600Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2024709Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpefzagd.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2025109Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2025485Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2027013Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2028687Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateWithDifferentPairs_ShouldNotDeduplicateDifferentLinks() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1396 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2034201Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2034819Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2036020Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2036349Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2037379Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmplxmjgg.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2037646Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2037987Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2039546Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2042126Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLeftCompositeStringChildrenWithoutExtraLeaf_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1221 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2042865Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2043435Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2044539Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoExactMatch2LevelNestedLinksTest [11 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2045039Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2070051Z [xUnit.net 00:00:04.45] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedFamilyLinksRemovesNamesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2071283Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsuc1kk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2071545Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2071885Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2073441Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2083243Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoExactMatch2LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 374 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2084047Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2084600Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2085601Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoOutOfFirstLinkUsingVariablesTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2085831Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2086706Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsi225c.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2087007Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2087325Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2088808Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2090461Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksToGoOutOfFirstLinkUsingVariablesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 498 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2091174Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2091776Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2092701Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2092955Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2093880Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpepcfsk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2094116Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2094454Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2096411Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2099206Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexAfterDoubleGapTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 61 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2100296Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2100885Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2106430Z [Test] All links: (1: 1->1) (2: 18->20) (18: 1->21) (19: 1->20) (20: 20->20) (21: 21->21) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2110076Z [xUnit.net 00:00:04.46] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.ExactMatchAndDelete2LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2126413Z [xUnit.net 00:00:04.45] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpxyij1j.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2126625Z [xUnit.net 00:00:04.45] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2142135Z [xUnit.net 00:00:04.45] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2151654Z [xUnit.net 00:00:04.45] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2153955Z [xUnit.net 00:00:04.45] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1529,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteMatchedLinkAndOutgoingLink_ShouldPreserveExistingParts() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2154768Z [xUnit.net 00:00:04.45] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2155855Z [xUnit.net 00:00:04.45] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2157175Z [xUnit.net 00:00:04.45] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp41ybyp.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2157651Z [xUnit.net 00:00:04.45] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2158482Z [xUnit.net 00:00:04.45] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2160396Z [xUnit.net 00:00:04.45] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2163500Z [xUnit.net 00:00:04.45] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1081,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedFamilyLinksRemovesNamesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2197545Z [xUnit.net 00:00:04.47] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteByNamesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2198342Z [xUnit.net 00:00:04.45] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2199838Z [xUnit.net 00:00:04.45] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2200017Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2201074Z [xUnit.net 00:00:04.46] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpavoq2v.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2201247Z [xUnit.net 00:00:04.46] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2201595Z [xUnit.net 00:00:04.46] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2203220Z [xUnit.net 00:00:04.46] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2204816Z [xUnit.net 00:00:04.46] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(317,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.ExactMatchAndDelete2LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2206829Z [xUnit.net 00:00:04.46] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2207283Z [xUnit.net 00:00:04.46] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2207929Z [xUnit.net 00:00:04.47] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmph3fcnq.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2208031Z [xUnit.net 00:00:04.47] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2208252Z [xUnit.net 00:00:04.47] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2209414Z [xUnit.net 00:00:04.47] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2210217Z [xUnit.net 00:00:04.47] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1120,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteByNamesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2210657Z [xUnit.net 00:00:04.47] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2211031Z [xUnit.net 00:00:04.47] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2461203Z [Test] All links: (1: 0->0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2489923Z [xUnit.net 00:00:04.50] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithVariableReferences_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2491082Z [xUnit.net 00:00:04.50] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2wkufo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2497576Z [xUnit.net 00:00:04.50] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2498165Z [xUnit.net 00:00:04.50] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2500121Z [xUnit.net 00:00:04.50] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2502332Z [xUnit.net 00:00:04.50] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1791,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithVariableReferences_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2503286Z [xUnit.net 00:00:04.50] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2504085Z [xUnit.net 00:00:04.50] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2514493Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2541900Z [xUnit.net 00:00:04.50] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create2LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2543106Z [xUnit.net 00:00:04.50] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqyh3l2.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2543710Z [xUnit.net 00:00:04.50] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2544156Z [xUnit.net 00:00:04.50] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2546336Z [xUnit.net 00:00:04.50] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2548078Z [xUnit.net 00:00:04.50] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(109,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create2LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2553248Z [xUnit.net 00:00:04.50] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2554021Z [xUnit.net 00:00:04.50] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2571936Z [Test] All links: (1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2599559Z [xUnit.net 00:00:04.51] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnySourceTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2600715Z [xUnit.net 00:00:04.51] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwxv42b.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2601392Z [xUnit.net 00:00:04.51] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2601880Z [xUnit.net 00:00:04.51] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2603706Z [xUnit.net 00:00:04.51] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2609769Z [xUnit.net 00:00:04.51] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(741,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnySourceTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2610765Z [xUnit.net 00:00:04.51] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2611587Z [xUnit.net 00:00:04.51] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2612378Z [Trace] Constructing NamedTypesDecorator with names DB: C:\Users\runneradmin\AppData\Local\Temp\tmp1xgqt3.names.links +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2629692Z [Test] Starting UpdateNamedLinkNameTest +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2630063Z [Test] Step 1: Creating initial link +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2630433Z [ProcessQuery] Query: "(() ((child: father mother)))" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2635223Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2658349Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2659560Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2660322Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2661197Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2661722Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2662216Z [ValidateLinksExistOrWillBeCreated] Named links to be created: child +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2662556Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2662834Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2663143Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2694091Z [xUnit.net 00:00:04.52] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateTwoNamedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2694287Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2694876Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2695188Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2695925Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'father' as point link. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2696291Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2696581Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2696905Z [Trace] Update called with restriction: [1] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2697671Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,0,0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2698025Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2698392Z [Trace] SetName called for link: 1 with name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2698692Z [Trace] RemoveName called for link: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2699016Z [Trace] RemoveName completed for link: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2699294Z [Trace] SetName result: 108 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2700056Z [Trace] Update called with restriction: [1,0,0] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2700766Z [Trace] Debug: handlerWrapper invoked - before=1,0,0, after=1,1,1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2701079Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2701697Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2701984Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2702920Z [ValidateLinksExistOrWillBeCreated] Auto-creating missing named reference 'mother' as point link. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2703252Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2703542Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2703858Z [Trace] Update called with restriction: [2] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2705040Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,0,0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2705410Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2705728Z [Trace] SetName called for link: 2 with name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2705950Z [Trace] RemoveName called for link: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2706200Z [Trace] RemoveName completed for link: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2706416Z [Trace] SetName result: 110 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2706699Z [Trace] Update called with restriction: [2,0,0] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2707088Z [Trace] Debug: handlerWrapper invoked - before=2,0,0, after=2,2,2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2707336Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2707690Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2707945Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2708157Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2708670Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2708943Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2709288Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2709779Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2710297Z [EnsureLinkCreated] Creating link for (S=1, T=2). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2710679Z [EnsureLinkCreated] => assigned new ID=3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2710965Z [Trace] Update called with restriction: [3] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2711372Z [Trace] Debug: handlerWrapper invoked - before=3,0,0, after=3,1,2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2711668Z [Trace] Update result: 4294967295 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2712751Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2713155Z [Trace] SetName called for link: 3 with name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2713659Z [Trace] RemoveName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2721744Z [Trace] RemoveName completed for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2722096Z [Trace] SetName result: 118 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2722527Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2722809Z [Test] Initial link creation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2724482Z [Test] Step 2: Verifying initial state +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2724856Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2725162Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2725432Z [Test] Initial child ID: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2725736Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2725989Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2726285Z [Test] Initial father ID: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2726681Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2726979Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2727268Z [Test] Initial mother ID: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2727598Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2728130Z [Test] Initial links count: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2728486Z [Test] Initial state verification completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2728779Z [Test] Step 3: Updating link name +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2729072Z [Test] Removing old name 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2729368Z [Trace] RemoveName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2729658Z [Trace] RemoveName completed for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2729902Z [Test] Old name removed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2730187Z [Test] Creating new link with name 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2730570Z [ProcessQuery] Query: "(() ((son: father mother)))" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2784016Z [xUnit.net 00:00:04.52] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoUpdateUsingVariablesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2784603Z [ProcessQuery] Parser returned 1 top-level link(s). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2809924Z [ProcessQuery] Restriction link => Id="" Values.Count=0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2811257Z [ProcessQuery] Substitution link => Id="" Values.Count=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2813672Z [ProcessQuery] No restriction, but substitution is non-empty => creation scenario. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2819266Z [ValidateLinksExistOrWillBeCreated] Starting validation +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2820200Z [ValidateLinksExistOrWillBeCreated] Numeric links to be created: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2820949Z [ValidateLinksExistOrWillBeCreated] Named links to be created: son +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2821304Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2821776Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2822437Z [ValidateReferencesInPattern] Named link 'father' reference validated in substitution pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2822768Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2823072Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2823668Z [ValidateReferencesInPattern] Named link 'mother' reference validated in substitution pattern +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2824084Z [ValidateLinksExistOrWillBeCreated] Validation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2824385Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2825143Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2825707Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'father' => ID=1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2826012Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2826282Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2826829Z [EnsureNestedLinkCreatedRecursively] Found existing named leaf 'mother' => ID=2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2827210Z [EnsureLinkCreated] Link already found => ID=3 => no-op. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2828028Z [EnsureNestedLinkCreatedRecursively] Created or ensured composite link => Index=0, Source=1, Target=2 => Actual ID=3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2828378Z [Trace] SetName called for link: 3 with name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2828739Z [Trace] RemoveName called for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2829084Z [Trace] RemoveName completed for link: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2829378Z [Trace] SetName result: 123 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2829835Z [ProcessQuery] Created link ID #3 from substitution pattern. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2830314Z [Test] New link creation completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2830632Z [Test] Step 4: Verifying final state +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2830976Z [Trace] GetByName called for name: 'child' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2831335Z [Trace] GetByName result: 0 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2859995Z [Trace] GetByName called for name: 'son' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2860485Z [Trace] GetByName result: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2861074Z [Test] Final son ID: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2861415Z [Trace] GetByName called for name: 'father' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2861553Z [Trace] GetByName result: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2861674Z [Test] Final father ID: 1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2861848Z [Trace] GetByName called for name: 'mother' +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2861999Z [Trace] GetByName result: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2862123Z [Test] Final mother ID: 2 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2862324Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2862464Z [Test] Final links count: 3 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2862924Z [Test] Final state verification completed +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2863159Z [Test] UpdateNamedLinkNameTest completed successfully +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2869383Z [xUnit.net 00:00:04.52] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp1xgqt3.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2871181Z [xUnit.net 00:00:04.52] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2871572Z [xUnit.net 00:00:04.52] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2873339Z [xUnit.net 00:00:04.52] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2875132Z [xUnit.net 00:00:04.52] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(859,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateTwoNamedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2876304Z [xUnit.net 00:00:04.52] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2876954Z [xUnit.net 00:00:04.52] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2877099Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2878142Z [xUnit.net 00:00:04.52] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpy2jgzl.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2878339Z [xUnit.net 00:00:04.52] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2878697Z [xUnit.net 00:00:04.52] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2880518Z [xUnit.net 00:00:04.52] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2882674Z [xUnit.net 00:00:04.52] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(393,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoUpdateUsingVariablesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2883628Z [xUnit.net 00:00:04.52] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2884385Z [xUnit.net 00:00:04.52] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2885141Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2886200Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteMatchedLinkAndOutgoingLink_ShouldPreserveExistingParts [9 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2886402Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2887335Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpxyij1j.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2887512Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2887802Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2889290Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2892233Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Issue20_SubstituteMatchedLinkAndOutgoingLink_ShouldPreserveExistingParts() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1529 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2893835Z [xUnit.net 00:00:04.53] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksSelfReferencingUsingVariablesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2894661Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2895127Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2895906Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedFamilyLinksRemovesNamesTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2896021Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2897399Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp41ybyp.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2897720Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2897936Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2899395Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2900182Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedFamilyLinksRemovesNamesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1081 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2900518Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2900788Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2901311Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.ExactMatchAndDelete2LevelNestedLinksTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2901430Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2902281Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpavoq2v.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2902384Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2902585Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2904016Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2905381Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.ExactMatchAndDelete2LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 317 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2905854Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2906119Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2906447Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteByNamesTest [7 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2906520Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2906992Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmph3fcnq.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2907051Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2907187Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2907967Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2908644Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteByNamesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1120 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2909138Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2909432Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2910208Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithVariableReferences_ShouldSucceed [28 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2910306Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2911098Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2wkufo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2911391Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2911580Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2912878Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2914150Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithVariableReferences_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1791 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2914627Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2915060Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2915702Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create2LevelNestedLinksTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2915802Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2922424Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqyh3l2.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2922753Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2923044Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2924831Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2926078Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create2LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 109 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2926621Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2927084Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2927707Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnySourceTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2927819Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2928636Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwxv42b.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2928739Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2928935Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2930309Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2931528Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteLinksByAnySourceTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 741 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2932252Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2932675Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2933267Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateTwoNamedLinksTest [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2933370Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2934154Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp1xgqt3.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2934253Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2934447Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2935797Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2937530Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateTwoNamedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 859 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2938068Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2938535Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2939168Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoUpdateUsingVariablesTest [6 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2939268Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2940094Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpy2jgzl.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2940214Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2940394Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2941367Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2942095Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.NoUpdateUsingVariablesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 393 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2942424Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2942698Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2943218Z [xUnit.net 00:00:04.54] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteMultipleLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2943811Z [xUnit.net 00:00:04.54] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateWithNonExistentReference_ShouldThrowException [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2944440Z [xUnit.net 00:00:04.53] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmprenad5.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2944541Z [xUnit.net 00:00:04.53] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2944753Z [xUnit.net 00:00:04.53] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2945832Z [xUnit.net 00:00:04.53] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2946793Z [xUnit.net 00:00:04.53] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(536,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksSelfReferencingUsingVariablesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2947426Z [xUnit.net 00:00:04.53] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2947825Z [xUnit.net 00:00:04.53] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2947899Z [Test] All links: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2948516Z [xUnit.net 00:00:04.54] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpb020f2.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2948619Z [xUnit.net 00:00:04.54] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2948923Z [xUnit.net 00:00:04.54] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2949884Z [xUnit.net 00:00:04.54] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2950707Z [xUnit.net 00:00:04.54] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(706,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteMultipleLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2951138Z [xUnit.net 00:00:04.54] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2951516Z [xUnit.net 00:00:04.54] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2952111Z [xUnit.net 00:00:04.54] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2jdj4n.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2952202Z [xUnit.net 00:00:04.54] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2952404Z [xUnit.net 00:00:04.54] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2953817Z [xUnit.net 00:00:04.54] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2955418Z [xUnit.net 00:00:04.54] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1725,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateWithNonExistentReference_ShouldThrowException() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2956118Z [xUnit.net 00:00:04.54] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2956761Z [xUnit.net 00:00:04.54] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2961741Z [Test] All links: (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2972733Z [xUnit.net 00:00:04.55] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source1Target2 [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2974766Z [xUnit.net 00:00:04.55] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpo5bouy.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2975276Z [xUnit.net 00:00:04.55] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2975702Z [xUnit.net 00:00:04.55] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2977913Z [xUnit.net 00:00:04.55] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2980420Z [xUnit.net 00:00:04.55] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(670,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source1Target2() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2981331Z [xUnit.net 00:00:04.55] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.2982081Z [xUnit.net 00:00:04.55] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3024207Z [xUnit.net 00:00:04.55] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedLinkTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3025840Z [xUnit.net 00:00:04.55] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp424bwo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3026706Z [xUnit.net 00:00:04.55] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3028248Z [xUnit.net 00:00:04.55] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3031309Z [xUnit.net 00:00:04.55] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3033080Z [xUnit.net 00:00:04.55] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1105,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedLinkTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3033969Z [xUnit.net 00:00:04.55] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3034758Z [xUnit.net 00:00:04.55] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3064392Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 2->3) (5: 1->4) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3213722Z [xUnit.net 00:00:04.57] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create3LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3215278Z [xUnit.net 00:00:04.57] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcc30as.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3215958Z [xUnit.net 00:00:04.57] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3216404Z [xUnit.net 00:00:04.57] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3218263Z [xUnit.net 00:00:04.57] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3219908Z [xUnit.net 00:00:04.57] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(126,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create3LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3220831Z [xUnit.net 00:00:04.57] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3221605Z [xUnit.net 00:00:04.57] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3253194Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) (5: 3->4) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3266046Z [xUnit.net 00:00:04.58] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateTripleDuplicatePair_ShouldCreateOnlyOneSubLink [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3268634Z [xUnit.net 00:00:04.58] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpai0w24.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3269562Z [xUnit.net 00:00:04.58] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3269936Z [xUnit.net 00:00:04.58] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3271464Z [xUnit.net 00:00:04.58] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3273053Z [xUnit.net 00:00:04.58] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1332,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateTripleDuplicatePair_ShouldCreateOnlyOneSubLink() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3273951Z [xUnit.net 00:00:04.58] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3274355Z [xUnit.net 00:00:04.58] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3309629Z [Test] All links: (1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3323812Z [xUnit.net 00:00:04.58] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithValidSelfReference_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3324976Z [xUnit.net 00:00:04.58] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsxmcqp.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3325475Z [xUnit.net 00:00:04.58] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3325939Z [xUnit.net 00:00:04.58] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3327745Z [xUnit.net 00:00:04.58] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3329461Z [xUnit.net 00:00:04.58] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1675,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithValidSelfReference_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3330314Z [xUnit.net 00:00:04.58] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3331362Z [xUnit.net 00:00:04.58] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3354610Z [Test] All links: (1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3363302Z [xUnit.net 00:00:04.59] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3367674Z [xUnit.net 00:00:04.59] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp103kes.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3368177Z [xUnit.net 00:00:04.59] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3368622Z [xUnit.net 00:00:04.59] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3370510Z [xUnit.net 00:00:04.59] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3372065Z [xUnit.net 00:00:04.59] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(16,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3373295Z [xUnit.net 00:00:04.59] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3374808Z [xUnit.net 00:00:04.59] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3394373Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksSelfReferencingUsingVariablesTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3394525Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3395609Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmprenad5.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3395860Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3396223Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3398208Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3399740Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.MakeAllLinksSelfReferencingUsingVariablesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 536 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3400444Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3400936Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3402505Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteMultipleLinksTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3402883Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3403908Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpb020f2.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3404126Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3404322Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3405870Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3412060Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteMultipleLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 706 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3413547Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3414059Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3415935Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateWithNonExistentReference_ShouldThrowException [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3416085Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3416964Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2jdj4n.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3417069Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3417295Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3418684Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3420153Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.UpdateWithNonExistentReference_ShouldThrowException() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1725 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3420751Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3421503Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3422208Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source1Target2 [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3422324Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3423160Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpo5bouy.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3423263Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3423475Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3424862Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3426405Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source1Target2() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 670 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3426994Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3427470Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3428071Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedLinkTest [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3428185Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3429040Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp424bwo.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3429146Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3429364Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3430856Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3432098Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteNamedLinkTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1105 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3432678Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3433178Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3433860Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create3LevelNestedLinksTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3433976Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3435195Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcc30as.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3435298Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3435508Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3436985Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3438315Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create3LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 126 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3438912Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3439387Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3440505Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateTripleDuplicatePair_ShouldCreateOnlyOneSubLink [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3440616Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3441473Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpai0w24.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3441571Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3441764Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3443003Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3444600Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateTripleDuplicatePair_ShouldCreateOnlyOneSubLink() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1332 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3444941Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3445216Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3445679Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithValidSelfReference_ShouldSucceed [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3445749Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3446532Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpsxmcqp.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3446625Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3446820Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3448143Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3449119Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithValidSelfReference_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1675 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3449448Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3449717Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3450055Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3450130Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3450857Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp103kes.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3450950Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3451160Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3452509Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3455746Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 16 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3458358Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3458876Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3459064Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3460197Z [xUnit.net 00:00:04.59] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationDuringUpdateTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3461208Z [xUnit.net 00:00:04.59] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithWildcardReferences_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3462334Z [xUnit.net 00:00:04.59] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkt2su0.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3462487Z [xUnit.net 00:00:04.59] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3462802Z [xUnit.net 00:00:04.59] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3466692Z [xUnit.net 00:00:04.59] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3468302Z [xUnit.net 00:00:04.59] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(614,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationDuringUpdateTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3469063Z [xUnit.net 00:00:04.59] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3469737Z [xUnit.net 00:00:04.59] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3469885Z [Test] All links: (1: 0->0) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3471237Z [xUnit.net 00:00:04.59] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpztbyrz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3471412Z [xUnit.net 00:00:04.59] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3471769Z [xUnit.net 00:00:04.59] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3473501Z [xUnit.net 00:00:04.60] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3475174Z [xUnit.net 00:00:04.60] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1805,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithWildcardReferences_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3475935Z [xUnit.net 00:00:04.60] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3476595Z [xUnit.net 00:00:04.60] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3496140Z [Test] All links: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3504155Z [xUnit.net 00:00:04.60] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source2Target2 [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3505364Z [xUnit.net 00:00:04.60] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpl55qbx.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3505899Z [xUnit.net 00:00:04.60] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3506389Z [xUnit.net 00:00:04.60] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3508684Z [xUnit.net 00:00:04.60] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3510710Z [xUnit.net 00:00:04.60] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(689,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source2Target2() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3511668Z [xUnit.net 00:00:04.60] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3512450Z [xUnit.net 00:00:04.60] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3544440Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3555206Z [xUnit.net 00:00:04.60] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNamedLinks_MultipleQueries_ShouldReuseSameIds [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3565783Z [xUnit.net 00:00:04.60] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpx3xqe3.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3565987Z [xUnit.net 00:00:04.60] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3566363Z [xUnit.net 00:00:04.60] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3568201Z [xUnit.net 00:00:04.60] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3569958Z [xUnit.net 00:00:04.60] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1470,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNamedLinks_MultipleQueries_ShouldReuseSameIds() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3570719Z [xUnit.net 00:00:04.61] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3571346Z [xUnit.net 00:00:04.61] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3604938Z [xUnit.net 00:00:04.61] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithNonExistentReference_ShouldThrowException [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3606078Z [xUnit.net 00:00:04.61] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2v2zwk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3607042Z [xUnit.net 00:00:04.61] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3610506Z [xUnit.net 00:00:04.61] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3612557Z [xUnit.net 00:00:04.61] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3614758Z [xUnit.net 00:00:04.61] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1659,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithNonExistentReference_ShouldThrowException() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3615682Z [xUnit.net 00:00:04.61] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3616460Z [xUnit.net 00:00:04.61] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3684099Z [Test] All links: (1: 1->1) (2: 2->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3709146Z [xUnit.net 00:00:04.62] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForSingleLinkUsingVariablesTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3711697Z [xUnit.net 00:00:04.62] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpr3w113.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3714285Z [xUnit.net 00:00:04.62] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3715079Z [xUnit.net 00:00:04.62] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3717283Z [xUnit.net 00:00:04.62] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3719848Z [xUnit.net 00:00:04.62] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(426,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForSingleLinkUsingVariablesTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3722128Z [xUnit.net 00:00:04.62] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3723007Z [xUnit.net 00:00:04.62] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3736350Z [Test] All links: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3745189Z [xUnit.net 00:00:04.62] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest2 [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3748870Z [xUnit.net 00:00:04.62] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpg2pkwh.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3750887Z [xUnit.net 00:00:04.62] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3751636Z [xUnit.net 00:00:04.62] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3753874Z [xUnit.net 00:00:04.62] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3758237Z [xUnit.net 00:00:04.62] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(793,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest2() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3760602Z [xUnit.net 00:00:04.62] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3761481Z [xUnit.net 00:00:04.62] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3786633Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 5->5) (6: 6->6) (7: 7->7) (8: 6->7) (9: 5->8) (10: 4->9) (11: 3->10) (12: 2->11) (13: 1->12) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3799971Z [xUnit.net 00:00:04.63] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create7LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3802070Z [xUnit.net 00:00:04.63] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpgrybcp.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3803375Z [xUnit.net 00:00:04.63] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3803987Z [xUnit.net 00:00:04.63] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3806065Z [xUnit.net 00:00:04.63] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3809827Z [xUnit.net 00:00:04.63] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(249,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create7LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3813200Z [xUnit.net 00:00:04.63] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3814674Z [xUnit.net 00:00:04.63] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3843091Z [Test] All links: (1: 1->1) (2: 2->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3850914Z [xUnit.net 00:00:04.63] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkReferencingExistingLink_ShouldSucceed [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3855713Z [xUnit.net 00:00:04.63] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwxdccz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3858585Z [xUnit.net 00:00:04.63] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3859560Z [xUnit.net 00:00:04.63] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3861939Z [xUnit.net 00:00:04.63] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3866238Z [xUnit.net 00:00:04.63] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1706,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkReferencingExistingLink_ShouldSucceed() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3869129Z [xUnit.net 00:00:04.63] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3870788Z [xUnit.net 00:00:04.63] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3885584Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationDuringUpdateTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3886704Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3887843Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpkt2su0.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3889266Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3890574Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3892455Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3895721Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreationDuringUpdateTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 614 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3897591Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3898632Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3900351Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithWildcardReferences_ShouldSucceed [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3901447Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3902413Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpztbyrz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3903462Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3903813Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3905519Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3909635Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithWildcardReferences_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1805 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3912174Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3913360Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3914616Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source2Target2 [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3915529Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3916530Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpl55qbx.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3918742Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3919089Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3920799Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3923456Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteSingleLinkTest_Source2Target2() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 689 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3925327Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3926426Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3927822Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNamedLinks_MultipleQueries_ShouldReuseSameIds [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3928848Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3929810Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpx3xqe3.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3931344Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3931676Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3933293Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3936128Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNamedLinks_MultipleQueries_ShouldReuseSameIds() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1470 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3938135Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3939244Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3940666Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithNonExistentReference_ShouldThrowException [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3941725Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3942658Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmp2v2zwk.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3943671Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3943998Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3945656Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3950379Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithNonExistentReference_ShouldThrowException() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1659 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3952552Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3953696Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3956711Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForSingleLinkUsingVariablesTest [8 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3962134Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3964064Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpr3w113.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3966675Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3967292Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3969028Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3972330Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.SwapSourceAndTargetForSingleLinkUsingVariablesTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 426 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3974974Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3976183Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3977545Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest2 [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3978589Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3979786Z [xUnit.net 00:00:04.64] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest1 [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3981890Z [xUnit.net 00:00:04.65] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNestedDuplicates_ShouldDeduplicateAtAllLevels [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3983901Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpg2pkwh.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3985016Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3985387Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3987459Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3990531Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest2() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 793 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3992683Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3993762Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3994763Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create7LevelNestedLinksTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3995668Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3996688Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpgrybcp.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3997777Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.3998075Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4000014Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4003793Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create7LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 249 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4005934Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4012400Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4014843Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkReferencingExistingLink_ShouldSucceed [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4016284Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4017291Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwxdccz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4022445Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4023197Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4025391Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4028520Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkReferencingExistingLink_ShouldSucceed() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1706 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4029764Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4030446Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4030894Z [Test] All links: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4031639Z [xUnit.net 00:00:04.64] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpiw14sf.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4032356Z [xUnit.net 00:00:04.64] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4032714Z [xUnit.net 00:00:04.64] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4033990Z [xUnit.net 00:00:04.64] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4035834Z [xUnit.net 00:00:04.64] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(759,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest1() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4037178Z [xUnit.net 00:00:04.64] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4038023Z [xUnit.net 00:00:04.64] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4038602Z [Test] All links: (1: 1->1) (2: 2->2) (3: 1->2) (4: 3->3) (5: 4->4) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4039422Z [xUnit.net 00:00:04.65] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqji023.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4040123Z [xUnit.net 00:00:04.65] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4040484Z [xUnit.net 00:00:04.65] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4042489Z [xUnit.net 00:00:04.65] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4045420Z [xUnit.net 00:00:04.65] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1434,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNestedDuplicates_ShouldDeduplicateAtAllLevels() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4047994Z [xUnit.net 00:00:04.65] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4050417Z [xUnit.net 00:00:04.65] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4052526Z [xUnit.net 00:00:04.65] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create4LevelNestedLinksTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4054796Z [Test] All links: (1: 1->1) (2: 2->2) (3: 3->3) (4: 4->4) (5: 3->4) (6: 2->5) (7: 1->6) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4061728Z [xUnit.net 00:00:04.65] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqtspcz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4063032Z [xUnit.net 00:00:04.65] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4063658Z [xUnit.net 00:00:04.65] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4065850Z [xUnit.net 00:00:04.65] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4069079Z [xUnit.net 00:00:04.65] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(145,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create4LevelNestedLinksTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4073128Z [xUnit.net 00:00:04.65] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4075027Z [xUnit.net 00:00:04.65] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4076386Z [Test] All links: (1: 1->1) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4077494Z [xUnit.net 00:00:04.66] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexTest [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4079533Z [xUnit.net 00:00:04.66] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcrvsgf.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4080863Z [xUnit.net 00:00:04.66] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4081520Z [xUnit.net 00:00:04.66] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4083822Z [xUnit.net 00:00:04.66] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4087137Z [xUnit.net 00:00:04.66] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(31,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexTest() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4089515Z [xUnit.net 00:00:04.66] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4091483Z [xUnit.net 00:00:04.66] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4100908Z [Test] All links: (1: 1->1) (2: 2->2) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4116983Z [xUnit.net 00:00:04.66] Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithSource2Target2Test [FAIL] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4119163Z [xUnit.net 00:00:04.66] System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwn34ci.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4120853Z [xUnit.net 00:00:04.66] Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4121609Z [xUnit.net 00:00:04.66] at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4123364Z [xUnit.net 00:00:04.66] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(1606,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4126742Z [xUnit.net 00:00:04.66] D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs(76,0): at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithSource2Target2Test() +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4128089Z [xUnit.net 00:00:04.66] at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:51.4128955Z [xUnit.net 00:00:04.66] at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9022891Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest1 [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9024335Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9025544Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpiw14sf.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9026824Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9027491Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9029285Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9032147Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeleteAllLinksBySourceAndTargetTest1() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 759 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9034193Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9035336Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9036742Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNestedDuplicates_ShouldDeduplicateAtAllLevels [5 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9037872Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9038876Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqji023.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9039983Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9040320Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9042034Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9045004Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.DeduplicateNestedDuplicates_ShouldDeduplicateAtAllLevels() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1434 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9047472Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9048575Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9050083Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create4LevelNestedLinksTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9051104Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9052078Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpqtspcz.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9053111Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9053452Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9055104Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9058055Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.Create4LevelNestedLinksTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 145 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9060013Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9061121Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9062368Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexTest [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9063237Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9064184Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpcrvsgf.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9065225Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9065562Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9067603Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9070339Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateSingleLinkWithIndexTest() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 31 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9072191Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9073310Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9074540Z Failed Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithSource2Target2Test [4 ms] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9075448Z Error Message: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9076378Z System.IO.IOException : The process cannot access the file 'C:\Users\runneradmin\AppData\Local\Temp\tmpwn34ci.names.links' because it is being used by another process. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9077396Z Stack Trace: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9077755Z at System.IO.FileSystem.DeleteFile(String fullPath) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9079453Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.RunTestWithLinks(Action`1 testAction, Boolean enableTracing) in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 1606 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9082162Z at Foundation.Data.Doublets.Cli.Tests.Tests.AdvancedMixedQueryProcessor.CreateLinkWithSource2Target2Test() in D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\AdvancedMixedQueryProcessor.cs:line 76 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9084046Z at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9085148Z at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:52.9086285Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ExportAlias_WritesNamedReferences [3 s] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:56.6135453Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.AlwaysTriggerOption_StoresTriggerAndAppliesItOnLaterChange [4 s] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:09:58.8186843Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ExportAlias_WritesNumberedReferences [2 s] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:09.4995464Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.StructureOption_RendersLeftBranchWithIndexes [10 s] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:11.6409443Z [xUnit.net 00:00:24.89] Finished: Foundation.Data.Doublets.Cli.Tests +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3025644Z Passed Foundation.Data.Doublets.Cli.Tests.CliExportIntegrationTests.ImportOption_ReadsNumberedLinoFile [2 s] +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3134489Z +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3174277Z Test Run Failed. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3174822Z Total tests: 187 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3175283Z Passed: 73 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3175811Z Failed: 114 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3177396Z Total time: 31.7034 Seconds +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3343192Z 1>Project "D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.sln" (1) is building "D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Foundation.Data.Doublets.Cli.Tests.csproj" (2) on node 1 (VSTest target(s)). +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3344713Z 2>_VSTestConsole: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3345181Z MSB4181: The "VSTestTask" task returned false but did not log an error. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3367362Z 2>Done Building Project "D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\Foundation.Data.Doublets.Cli.Tests.csproj" (VSTest target(s)) -- FAILED. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3482179Z 1>Done Building Project "D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.sln" (VSTest target(s)) -- FAILED. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3592326Z +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3592691Z Build FAILED. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3593470Z 0 Warning(s) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3593748Z 0 Error(s) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3595048Z +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.3595248Z Time Elapsed 00:00:33.67 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.5661447Z +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.5669611Z Attachments: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:12.5672207Z D:\a\link-cli\link-cli\csharp\Foundation.Data.Doublets.Cli.Tests\TestResults\29b8c6e3-98ad-4020-9d48-ff19dbdc1155\coverage.cobertura.xml +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.0069302Z ##[error]Process completed with exit code 1. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.0281455Z Post job cleanup. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.2713694Z Post job cleanup. +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.4821637Z [command]"C:\Program Files\Git\bin\git.exe" version +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.5119935Z git version 2.54.0.windows.1 +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.5206578Z Temporarily overriding HOME='D:\a\_temp\861fbd69-23ac-4b5c-8c98-5414afdde256' before making global git config changes +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.5207858Z Adding repository directory to the temporary git global config as a safe directory +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.5218899Z [command]"C:\Program Files\Git\bin\git.exe" config --global --add safe.directory D:\a\link-cli\link-cli +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.5618500Z [command]"C:\Program Files\Git\bin\git.exe" config --local --name-only --get-regexp core\.sshCommand +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:13.5948772Z [command]"C:\Program Files\Git\bin\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :\"" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:14.1381761Z [command]"C:\Program Files\Git\bin\git.exe" config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:14.1667837Z http.https://github.com/.extraheader +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:14.1731223Z [command]"C:\Program Files\Git\bin\git.exe" config --local --unset-all http.https://github.com/.extraheader +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:14.2111707Z [command]"C:\Program Files\Git\bin\git.exe" submodule foreach --recursive "sh -c \"git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :\"" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:14.7802448Z [command]"C:\Program Files\Git\bin\git.exe" config --local --name-only --get-regexp ^includeIf\.gitdir: +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:14.8123304Z [command]"C:\Program Files\Git\bin\git.exe" submodule foreach --recursive "git config --local --show-origin --name-only --get-regexp remote.origin.url" +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:15.3574007Z Cleaning up orphan processes +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:15.3826228Z Terminate orphan process: pid (7452) (dotnet) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:15.3882579Z Terminate orphan process: pid (5600) (conhost) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:15.3996672Z Terminate orphan process: pid (5988) (VBCSCompiler) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:15.4049567Z Terminate orphan process: pid (10072) (conhost) +Test (windows-latest) UNKNOWN STEP 2026-05-09T07:10:15.4115820Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-dotnet@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9896275Z Current runner version: '2.334.0' +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9919704Z ##[group]Runner Image Provisioner +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9920477Z Hosted Compute Agent +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9921019Z Version: 20260213.493 +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9922101Z Commit: 5c115507f6dd24b8de37d8bbe0bb4509d0cc0fa3 +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9922820Z Build Date: 2026-02-13T00:28:41Z +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9923455Z Worker ID: {d36995c9-c937-4096-90fc-16a3190fce9d} +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9924180Z Azure Region: westus +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9924947Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9926401Z ##[group]Operating System +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9927092Z Ubuntu +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9927532Z 24.04.4 +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9927986Z LTS +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9928439Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9928954Z ##[group]Runner Image +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9929502Z Image: ubuntu-24.04 +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9930051Z Version: 20260413.86.1 +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9931325Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260413.86/images/ubuntu/Ubuntu2404-Readme.md +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9932871Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260413.86 +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9933724Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9936975Z ##[group]GITHUB_TOKEN Permissions +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9939033Z Actions: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9939599Z ArtifactMetadata: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9940108Z Attestations: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9940719Z Checks: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9941248Z Contents: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9941713Z Deployments: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9942297Z Discussions: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9942784Z Issues: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9943263Z Metadata: read +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9943768Z Models: read +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9944293Z Packages: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9945091Z Pages: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9945741Z PullRequests: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9946279Z RepositoryProjects: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9946813Z SecurityEvents: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9947399Z Statuses: write +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9947924Z VulnerabilityAlerts: read +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9948481Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9950524Z Secret source: Actions +Build Package UNKNOWN STEP 2026-05-09T07:10:25.9951244Z Prepare workflow directory +Build Package UNKNOWN STEP 2026-05-09T07:10:26.0427396Z Prepare all required actions +Build Package UNKNOWN STEP 2026-05-09T07:10:26.0463735Z Getting action download info +Build Package UNKNOWN STEP 2026-05-09T07:10:26.5424682Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Build Package UNKNOWN STEP 2026-05-09T07:10:26.6701812Z Download action repository 'actions/setup-dotnet@v4' (SHA:67a3573c9a986a3f9c594539f4ab511d57bb3ce9) +Build Package UNKNOWN STEP 2026-05-09T07:10:27.1795774Z Download action repository 'actions/upload-artifact@v4' (SHA:ea165f8d65b6e75b540449e92b4886f43607fa02) +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4023765Z Complete job name: Build Package +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4871611Z ##[group]Run actions/checkout@v4 +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4872817Z with: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4873526Z repository: link-foundation/link-cli +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4874995Z token: *** +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4875670Z ssh-strict: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4876368Z ssh-user: git +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4877092Z persist-credentials: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4877908Z clean: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4878616Z sparse-checkout-cone-mode: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4879507Z fetch-depth: 1 +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4880201Z fetch-tags: false +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4880929Z show-progress: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4881658Z lfs: false +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4882316Z submodules: false +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4883048Z set-safe-directory: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4884224Z env: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4885113Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4886115Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4887004Z DOTNET_NOLOGO: true +Build Package UNKNOWN STEP 2026-05-09T07:10:27.4887714Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6036023Z Syncing repository: link-foundation/link-cli +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6038760Z ##[group]Getting Git version info +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6040722Z Working directory is '/home/runner/work/link-cli/link-cli' +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6043700Z [command]/usr/bin/git version +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6069101Z git version 2.53.0 +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6096618Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6113037Z Temporarily overriding HOME='/home/runner/work/_temp/46e5af85-4c30-4f11-af15-c93f90b3bec8' before making global git config changes +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6117844Z Adding repository directory to the temporary git global config as a safe directory +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6121562Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6151787Z Deleting the contents of '/home/runner/work/link-cli/link-cli' +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6154994Z ##[group]Initializing the repository +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6159243Z [command]/usr/bin/git init /home/runner/work/link-cli/link-cli +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6245032Z hint: Using 'master' as the name for the initial branch. This default branch name +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6248124Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6251196Z hint: to use in all of your new repositories, which will suppress this warning, +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6253591Z hint: call: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6254933Z hint: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6256361Z hint: git config --global init.defaultBranch +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6258262Z hint: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6260072Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6262995Z hint: 'development'. The just-created branch can be renamed via this command: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6265762Z hint: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6266547Z hint: git branch -m +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6267326Z hint: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6268404Z hint: Disable this message with "git config set advice.defaultBranchName false" +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6270262Z Initialized empty Git repository in /home/runner/work/link-cli/link-cli/.git/ +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6275540Z [command]/usr/bin/git remote add origin https://github.com/link-foundation/link-cli +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6291996Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6294169Z ##[group]Disabling automatic garbage collection +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6296469Z [command]/usr/bin/git config --local gc.auto 0 +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6325939Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6327981Z ##[group]Setting up auth +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6333835Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6364178Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6639803Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6671577Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6885360Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Build Package UNKNOWN STEP 2026-05-09T07:10:27.6925950Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Build Package UNKNOWN STEP 2026-05-09T07:10:27.7151503Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Build Package UNKNOWN STEP 2026-05-09T07:10:27.7186003Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:27.7188073Z ##[group]Fetching the repository +Build Package UNKNOWN STEP 2026-05-09T07:10:27.7197717Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +70a959516ae64dd5878b72f5cb6af961a765aedc:refs/remotes/origin/main +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5629366Z From https://github.com/link-foundation/link-cli +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5631058Z * [new ref] 70a959516ae64dd5878b72f5cb6af961a765aedc -> origin/main +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5661252Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5663554Z ##[group]Determining the checkout info +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5666506Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5669061Z [command]/usr/bin/git sparse-checkout disable +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5708318Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5736548Z ##[group]Checking out the ref +Build Package UNKNOWN STEP 2026-05-09T07:10:28.5740869Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6138829Z Switched to a new branch 'main' +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6140660Z branch 'main' set up to track 'origin/main'. +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6152061Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6189163Z [command]/usr/bin/git log -1 --format=%H +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6212994Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6472125Z ##[group]Run actions/setup-dotnet@v4 +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6473143Z with: +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6473854Z dotnet-version: 8.0.x +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6474881Z cache: false +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6475600Z env: +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6476351Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6477426Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6478397Z DOTNET_NOLOGO: true +Build Package UNKNOWN STEP 2026-05-09T07:10:28.6479180Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:28.8399539Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS +Build Package UNKNOWN STEP 2026-05-09T07:10:29.2031845Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Build Package UNKNOWN STEP 2026-05-09T07:10:29.3761406Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz size is 36689672 bytes. +Build Package UNKNOWN STEP 2026-05-09T07:10:29.3764760Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0491381Z dotnet-install: Downloaded file size is 36689672 bytes. +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0492673Z dotnet-install: The remote and local file sizes are equal. +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0779502Z dotnet-install: Installed version is 10.0.7 +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0840433Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0842926Z dotnet-install: Note that the script does not resolve dependencies during installation. +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0844129Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0845863Z dotnet-install: Installation finished successfully. +Build Package UNKNOWN STEP 2026-05-09T07:10:30.0887451Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --channel 8.0 +Build Package UNKNOWN STEP 2026-05-09T07:10:30.3853631Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Build Package UNKNOWN STEP 2026-05-09T07:10:31.1703487Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz size is 216822173 bytes. +Build Package UNKNOWN STEP 2026-05-09T07:10:31.1707032Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Build Package UNKNOWN STEP 2026-05-09T07:10:35.8355577Z dotnet-install: Downloaded file size is 216822173 bytes. +Build Package UNKNOWN STEP 2026-05-09T07:10:35.8356332Z dotnet-install: The remote and local file sizes are equal. +Build Package UNKNOWN STEP 2026-05-09T07:10:36.0829973Z dotnet-install: Installed version is 8.0.420 +Build Package UNKNOWN STEP 2026-05-09T07:10:36.0889779Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Build Package UNKNOWN STEP 2026-05-09T07:10:36.0891132Z dotnet-install: Note that the script does not resolve dependencies during installation. +Build Package UNKNOWN STEP 2026-05-09T07:10:36.0892626Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Build Package UNKNOWN STEP 2026-05-09T07:10:36.0894134Z dotnet-install: Installation finished successfully. +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1131159Z ##[group]Run dotnet restore +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1131485Z ^[[36;1mdotnet restore^[[0m +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1158829Z shell: /usr/bin/bash -e {0} +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1159329Z env: +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1159538Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1159839Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1160079Z DOTNET_NOLOGO: true +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1160286Z DOTNET_ROOT: /usr/share/dotnet +Build Package UNKNOWN STEP 2026-05-09T07:10:36.1160527Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:39.0336002Z Determining projects to restore... +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4353545Z Restored /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj (in 2.68 sec). +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4366624Z Restored /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/Foundation.Data.Doublets.Cli.Tests.csproj (in 2.7 sec). +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4741629Z ##[group]Run dotnet build --no-restore --configuration Release +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4742159Z ^[[36;1mdotnet build --no-restore --configuration Release^[[0m +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4766147Z shell: /usr/bin/bash -e {0} +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4766401Z env: +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4766657Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4766957Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4767223Z DOTNET_NOLOGO: true +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4767448Z DOTNET_ROOT: /usr/share/dotnet +Build Package UNKNOWN STEP 2026-05-09T07:10:42.4767705Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:48.3689807Z Foundation.Data.Doublets.Cli -> /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/bin/Release/net8/Foundation.Data.Doublets.Cli.dll +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6598450Z Foundation.Data.Doublets.Cli.Tests -> /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli.Tests/bin/Release/net8/Foundation.Data.Doublets.Cli.Tests.dll +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6793315Z +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6801058Z Build succeeded. +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6801535Z 0 Warning(s) +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6801842Z 0 Error(s) +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6802042Z +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6802327Z Time Elapsed 00:00:07.02 +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6986518Z ##[group]Run dotnet pack --no-build --configuration Release --output ./artifacts +Build Package UNKNOWN STEP 2026-05-09T07:10:49.6987108Z ^[[36;1mdotnet pack --no-build --configuration Release --output ./artifacts^[[0m +Build Package UNKNOWN STEP 2026-05-09T07:10:49.7008003Z shell: /usr/bin/bash -e {0} +Build Package UNKNOWN STEP 2026-05-09T07:10:49.7008226Z env: +Build Package UNKNOWN STEP 2026-05-09T07:10:49.7008432Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Build Package UNKNOWN STEP 2026-05-09T07:10:49.7008706Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Build Package UNKNOWN STEP 2026-05-09T07:10:49.7008946Z DOTNET_NOLOGO: true +Build Package UNKNOWN STEP 2026-05-09T07:10:49.7009148Z DOTNET_ROOT: /usr/share/dotnet +Build Package UNKNOWN STEP 2026-05-09T07:10:49.7009376Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:50.2427234Z Foundation.Data.Doublets.Cli -> /home/runner/work/link-cli/link-cli/csharp/Foundation.Data.Doublets.Cli/bin/Release/net8/publish/ +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6148203Z Successfully created package '/home/runner/work/link-cli/link-cli/csharp/artifacts/clink.2.3.0.nupkg'. +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6488947Z ##[group]Run actions/upload-artifact@v4 +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6489235Z with: +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6489424Z name: nuget-package +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6489647Z path: csharp/artifacts/*.nupkg +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6489906Z if-no-files-found: warn +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6490125Z compression-level: 6 +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6490318Z overwrite: false +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6490514Z include-hidden-files: false +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6490719Z env: +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6490907Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6491177Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6491410Z DOTNET_NOLOGO: true +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6491612Z DOTNET_ROOT: /usr/share/dotnet +Build Package UNKNOWN STEP 2026-05-09T07:10:50.6491829Z ##[endgroup] +Build Package UNKNOWN STEP 2026-05-09T07:10:50.8787832Z With the provided path, there will be 1 file uploaded +Build Package UNKNOWN STEP 2026-05-09T07:10:50.8794700Z Artifact name is valid! +Build Package UNKNOWN STEP 2026-05-09T07:10:50.8796643Z Root directory input is valid! +Build Package UNKNOWN STEP 2026-05-09T07:10:51.1920782Z Beginning upload of artifact content to blob storage +Build Package UNKNOWN STEP 2026-05-09T07:10:51.9398709Z Uploaded bytes 514563 +Build Package UNKNOWN STEP 2026-05-09T07:10:52.0281011Z Finished uploading artifact content to blob storage! +Build Package UNKNOWN STEP 2026-05-09T07:10:52.0284613Z SHA256 digest of uploaded artifact zip is 58b65337f8bca7e10569f3b6cb43bed8c54c42292f97910b59e67ee3480ca44e +Build Package UNKNOWN STEP 2026-05-09T07:10:52.0287102Z Finalizing artifact upload +Build Package UNKNOWN STEP 2026-05-09T07:10:52.2084778Z Artifact nuget-package.zip successfully finalized. Artifact ID 6893868027 +Build Package UNKNOWN STEP 2026-05-09T07:10:52.2086682Z Artifact nuget-package has been successfully uploaded! Final size is 514563 bytes. Artifact ID is 6893868027 +Build Package UNKNOWN STEP 2026-05-09T07:10:52.2094612Z Artifact download URL: https://github.com/link-foundation/link-cli/actions/runs/25594941803/artifacts/6893868027 +Build Package UNKNOWN STEP 2026-05-09T07:10:52.2236152Z Post job cleanup. +Build Package UNKNOWN STEP 2026-05-09T07:10:52.3912056Z Post job cleanup. +Build Package UNKNOWN STEP 2026-05-09T07:10:52.4890116Z [command]/usr/bin/git version +Build Package UNKNOWN STEP 2026-05-09T07:10:52.4928776Z git version 2.53.0 +Build Package UNKNOWN STEP 2026-05-09T07:10:52.4981299Z Temporarily overriding HOME='/home/runner/work/_temp/b9f57663-fb2e-4e3f-a86b-23a794df4821' before making global git config changes +Build Package UNKNOWN STEP 2026-05-09T07:10:52.4983138Z Adding repository directory to the temporary git global config as a safe directory +Build Package UNKNOWN STEP 2026-05-09T07:10:52.4986796Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5020882Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5053858Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5290575Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5314714Z http.https://github.com/.extraheader +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5328047Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5363516Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5607624Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Build Package UNKNOWN STEP 2026-05-09T07:10:52.5642617Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Build Package UNKNOWN STEP 2026-05-09T07:10:52.6005571Z Cleaning up orphan processes +Build Package UNKNOWN STEP 2026-05-09T07:10:52.6317290Z Terminate orphan process: pid (2887) (dotnet) +Build Package UNKNOWN STEP 2026-05-09T07:10:52.6338960Z Terminate orphan process: pid (2959) (VBCSCompiler) +Build Package UNKNOWN STEP 2026-05-09T07:10:52.6364075Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-dotnet@v4, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ +Release UNKNOWN STEP 2026-05-09T07:11:03.7972864Z Current runner version: '2.334.0' +Release UNKNOWN STEP 2026-05-09T07:11:03.7998523Z ##[group]Runner Image Provisioner +Release UNKNOWN STEP 2026-05-09T07:11:03.7999467Z Hosted Compute Agent +Release UNKNOWN STEP 2026-05-09T07:11:03.8000122Z Version: 20260213.493 +Release UNKNOWN STEP 2026-05-09T07:11:03.8000789Z Commit: 5c115507f6dd24b8de37d8bbe0bb4509d0cc0fa3 +Release UNKNOWN STEP 2026-05-09T07:11:03.8001612Z Build Date: 2026-02-13T00:28:41Z +Release UNKNOWN STEP 2026-05-09T07:11:03.8002577Z Worker ID: {d8caa464-c168-4284-b916-7bed90db88ff} +Release UNKNOWN STEP 2026-05-09T07:11:03.8003381Z Azure Region: eastus2 +Release UNKNOWN STEP 2026-05-09T07:11:03.8003983Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:03.8005489Z ##[group]Operating System +Release UNKNOWN STEP 2026-05-09T07:11:03.8006123Z Ubuntu +Release UNKNOWN STEP 2026-05-09T07:11:03.8006798Z 24.04.4 +Release UNKNOWN STEP 2026-05-09T07:11:03.8007337Z LTS +Release UNKNOWN STEP 2026-05-09T07:11:03.8007826Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:03.8008462Z ##[group]Runner Image +Release UNKNOWN STEP 2026-05-09T07:11:03.8009063Z Image: ubuntu-24.04 +Release UNKNOWN STEP 2026-05-09T07:11:03.8009644Z Version: 20260413.86.1 +Release UNKNOWN STEP 2026-05-09T07:11:03.8011014Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260413.86/images/ubuntu/Ubuntu2404-Readme.md +Release UNKNOWN STEP 2026-05-09T07:11:03.8013040Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260413.86 +Release UNKNOWN STEP 2026-05-09T07:11:03.8014048Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:03.8015180Z ##[group]GITHUB_TOKEN Permissions +Release UNKNOWN STEP 2026-05-09T07:11:03.8017384Z Contents: write +Release UNKNOWN STEP 2026-05-09T07:11:03.8018195Z Metadata: read +Release UNKNOWN STEP 2026-05-09T07:11:03.8018778Z Packages: write +Release UNKNOWN STEP 2026-05-09T07:11:03.8019504Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:03.8021624Z Secret source: Actions +Release UNKNOWN STEP 2026-05-09T07:11:03.8023083Z Prepare workflow directory +Release UNKNOWN STEP 2026-05-09T07:11:03.8441342Z Prepare all required actions +Release UNKNOWN STEP 2026-05-09T07:11:03.8479822Z Getting action download info +Release UNKNOWN STEP 2026-05-09T07:11:04.2325096Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Release UNKNOWN STEP 2026-05-09T07:11:04.3763429Z Download action repository 'actions/setup-dotnet@v4' (SHA:67a3573c9a986a3f9c594539f4ab511d57bb3ce9) +Release UNKNOWN STEP 2026-05-09T07:11:04.6590339Z Download action repository 'actions/setup-node@v4' (SHA:49933ea5288caeca8642d1e84afbd3f7d6820020) +Release UNKNOWN STEP 2026-05-09T07:11:04.9094781Z Download action repository 'actions/download-artifact@v4' (SHA:d3f86a106a0bac45b974a628896c90dbdf5c8093) +Release UNKNOWN STEP 2026-05-09T07:11:05.2832759Z Complete job name: Release +Release UNKNOWN STEP 2026-05-09T07:11:05.3722058Z ##[group]Run actions/checkout@v4 +Release UNKNOWN STEP 2026-05-09T07:11:05.3723437Z with: +Release UNKNOWN STEP 2026-05-09T07:11:05.3724149Z fetch-depth: 0 +Release UNKNOWN STEP 2026-05-09T07:11:05.3725025Z repository: link-foundation/link-cli +Release UNKNOWN STEP 2026-05-09T07:11:05.3726354Z token: *** +Release UNKNOWN STEP 2026-05-09T07:11:05.3727086Z ssh-strict: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3727828Z ssh-user: git +Release UNKNOWN STEP 2026-05-09T07:11:05.3728595Z persist-credentials: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3729464Z clean: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3730217Z sparse-checkout-cone-mode: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3731182Z fetch-tags: false +Release UNKNOWN STEP 2026-05-09T07:11:05.3732155Z show-progress: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3732943Z lfs: false +Release UNKNOWN STEP 2026-05-09T07:11:05.3733647Z submodules: false +Release UNKNOWN STEP 2026-05-09T07:11:05.3734428Z set-safe-directory: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3735571Z env: +Release UNKNOWN STEP 2026-05-09T07:11:05.3736341Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3737434Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3738393Z DOTNET_NOLOGO: true +Release UNKNOWN STEP 2026-05-09T07:11:05.3739151Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:05.4868814Z Syncing repository: link-foundation/link-cli +Release UNKNOWN STEP 2026-05-09T07:11:05.4871453Z ##[group]Getting Git version info +Release UNKNOWN STEP 2026-05-09T07:11:05.4873075Z Working directory is '/home/runner/work/link-cli/link-cli' +Release UNKNOWN STEP 2026-05-09T07:11:05.4874912Z [command]/usr/bin/git version +Release UNKNOWN STEP 2026-05-09T07:11:05.4914764Z git version 2.53.0 +Release UNKNOWN STEP 2026-05-09T07:11:05.4941170Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:05.4956422Z Temporarily overriding HOME='/home/runner/work/_temp/a610fd83-fc70-42e2-9565-8c0150143fd3' before making global git config changes +Release UNKNOWN STEP 2026-05-09T07:11:05.4959132Z Adding repository directory to the temporary git global config as a safe directory +Release UNKNOWN STEP 2026-05-09T07:11:05.4961961Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Release UNKNOWN STEP 2026-05-09T07:11:05.4994122Z Deleting the contents of '/home/runner/work/link-cli/link-cli' +Release UNKNOWN STEP 2026-05-09T07:11:05.4997396Z ##[group]Initializing the repository +Release UNKNOWN STEP 2026-05-09T07:11:05.5001516Z [command]/usr/bin/git init /home/runner/work/link-cli/link-cli +Release UNKNOWN STEP 2026-05-09T07:11:05.5083932Z hint: Using 'master' as the name for the initial branch. This default branch name +Release UNKNOWN STEP 2026-05-09T07:11:05.5087369Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Release UNKNOWN STEP 2026-05-09T07:11:05.5090586Z hint: to use in all of your new repositories, which will suppress this warning, +Release UNKNOWN STEP 2026-05-09T07:11:05.5093363Z hint: call: +Release UNKNOWN STEP 2026-05-09T07:11:05.5094587Z hint: +Release UNKNOWN STEP 2026-05-09T07:11:05.5096172Z hint: git config --global init.defaultBranch +Release UNKNOWN STEP 2026-05-09T07:11:05.5098253Z hint: +Release UNKNOWN STEP 2026-05-09T07:11:05.5100081Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Release UNKNOWN STEP 2026-05-09T07:11:05.5103390Z hint: 'development'. The just-created branch can be renamed via this command: +Release UNKNOWN STEP 2026-05-09T07:11:05.5105310Z hint: +Release UNKNOWN STEP 2026-05-09T07:11:05.5106075Z hint: git branch -m +Release UNKNOWN STEP 2026-05-09T07:11:05.5106973Z hint: +Release UNKNOWN STEP 2026-05-09T07:11:05.5108150Z hint: Disable this message with "git config set advice.defaultBranchName false" +Release UNKNOWN STEP 2026-05-09T07:11:05.5111187Z Initialized empty Git repository in /home/runner/work/link-cli/link-cli/.git/ +Release UNKNOWN STEP 2026-05-09T07:11:05.5115713Z [command]/usr/bin/git remote add origin https://github.com/link-foundation/link-cli +Release UNKNOWN STEP 2026-05-09T07:11:05.5130018Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:05.5132692Z ##[group]Disabling automatic garbage collection +Release UNKNOWN STEP 2026-05-09T07:11:05.5134979Z [command]/usr/bin/git config --local gc.auto 0 +Release UNKNOWN STEP 2026-05-09T07:11:05.5165024Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:05.5167248Z ##[group]Setting up auth +Release UNKNOWN STEP 2026-05-09T07:11:05.5172819Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Release UNKNOWN STEP 2026-05-09T07:11:05.5206404Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Release UNKNOWN STEP 2026-05-09T07:11:05.5483605Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Release UNKNOWN STEP 2026-05-09T07:11:05.5517698Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Release UNKNOWN STEP 2026-05-09T07:11:05.5739094Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Release UNKNOWN STEP 2026-05-09T07:11:05.5771214Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Release UNKNOWN STEP 2026-05-09T07:11:05.5992808Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Release UNKNOWN STEP 2026-05-09T07:11:05.6027134Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:05.6029456Z ##[group]Fetching the repository +Release UNKNOWN STEP 2026-05-09T07:11:05.6038618Z [command]/usr/bin/git -c protocol.version=2 fetch --prune --no-recurse-submodules origin +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/tags/* +Release UNKNOWN STEP 2026-05-09T07:11:06.0318209Z From https://github.com/link-foundation/link-cli +Release UNKNOWN STEP 2026-05-09T07:11:06.0322890Z * [new branch] claude/code-review-and-issues-01WwM3yFJiaRwTrhABNoUkYa -> origin/claude/code-review-and-issues-01WwM3yFJiaRwTrhABNoUkYa +Release UNKNOWN STEP 2026-05-09T07:11:06.0327427Z * [new branch] issue-11-36571c97 -> origin/issue-11-36571c97 +Release UNKNOWN STEP 2026-05-09T07:11:06.0330101Z * [new branch] issue-12-fc4292e4 -> origin/issue-12-fc4292e4 +Release UNKNOWN STEP 2026-05-09T07:11:06.0332915Z * [new branch] issue-15-d0c58a82 -> origin/issue-15-d0c58a82 +Release UNKNOWN STEP 2026-05-09T07:11:06.0335162Z * [new branch] issue-17-1bd2fb57 -> origin/issue-17-1bd2fb57 +Release UNKNOWN STEP 2026-05-09T07:11:06.0336717Z * [new branch] issue-18-f86143d5 -> origin/issue-18-f86143d5 +Release UNKNOWN STEP 2026-05-09T07:11:06.0338256Z * [new branch] issue-19-9de6817b -> origin/issue-19-9de6817b +Release UNKNOWN STEP 2026-05-09T07:11:06.0339818Z * [new branch] issue-20-aba7a4fa -> origin/issue-20-aba7a4fa +Release UNKNOWN STEP 2026-05-09T07:11:06.0341355Z * [new branch] issue-22-889744b4 -> origin/issue-22-889744b4 +Release UNKNOWN STEP 2026-05-09T07:11:06.0343158Z * [new branch] issue-23-e23fa86d -> origin/issue-23-e23fa86d +Release UNKNOWN STEP 2026-05-09T07:11:06.0344985Z * [new branch] issue-24-3e3135c5 -> origin/issue-24-3e3135c5 +Release UNKNOWN STEP 2026-05-09T07:11:06.0346493Z * [new branch] issue-25-4c1591ce -> origin/issue-25-4c1591ce +Release UNKNOWN STEP 2026-05-09T07:11:06.0348010Z * [new branch] issue-26-c9ed9c27 -> origin/issue-26-c9ed9c27 +Release UNKNOWN STEP 2026-05-09T07:11:06.0349526Z * [new branch] issue-3-af35a436 -> origin/issue-3-af35a436 +Release UNKNOWN STEP 2026-05-09T07:11:06.0351066Z * [new branch] issue-30-7073054f -> origin/issue-30-7073054f +Release UNKNOWN STEP 2026-05-09T07:11:06.0352819Z * [new branch] issue-31-e51b89e4 -> origin/issue-31-e51b89e4 +Release UNKNOWN STEP 2026-05-09T07:11:06.0354334Z * [new branch] issue-32-3b3efd02 -> origin/issue-32-3b3efd02 +Release UNKNOWN STEP 2026-05-09T07:11:06.0355853Z * [new branch] issue-33-a60a3c86 -> origin/issue-33-a60a3c86 +Release UNKNOWN STEP 2026-05-09T07:11:06.0357364Z * [new branch] issue-34-22f3c425 -> origin/issue-34-22f3c425 +Release UNKNOWN STEP 2026-05-09T07:11:06.0358865Z * [new branch] issue-35-391818e8 -> origin/issue-35-391818e8 +Release UNKNOWN STEP 2026-05-09T07:11:06.0360379Z * [new branch] issue-56-73ae4c3a -> origin/issue-56-73ae4c3a +Release UNKNOWN STEP 2026-05-09T07:11:06.0362171Z * [new branch] issue-58-2571f420 -> origin/issue-58-2571f420 +Release UNKNOWN STEP 2026-05-09T07:11:06.0363742Z * [new branch] issue-63-452491b85cd2 -> origin/issue-63-452491b85cd2 +Release UNKNOWN STEP 2026-05-09T07:11:06.0365315Z * [new branch] issue-65-5d06345e60dc -> origin/issue-65-5d06345e60dc +Release UNKNOWN STEP 2026-05-09T07:11:06.0366889Z * [new branch] issue-67-d67d72474036 -> origin/issue-67-d67d72474036 +Release UNKNOWN STEP 2026-05-09T07:11:06.0368467Z * [new branch] issue-69-43fc7f1a4ec3 -> origin/issue-69-43fc7f1a4ec3 +Release UNKNOWN STEP 2026-05-09T07:11:06.0370056Z * [new branch] issue-71-c1debd4cdf5e -> origin/issue-71-c1debd4cdf5e +Release UNKNOWN STEP 2026-05-09T07:11:06.0371827Z * [new branch] issue-73-d71d2656d381 -> origin/issue-73-d71d2656d381 +Release UNKNOWN STEP 2026-05-09T07:11:06.0373582Z * [new branch] issue-8-e91a69e5 -> origin/issue-8-e91a69e5 +Release UNKNOWN STEP 2026-05-09T07:11:06.0374936Z * [new branch] main -> origin/main +Release UNKNOWN STEP 2026-05-09T07:11:06.0376247Z * [new branch] named-links -> origin/named-links +Release UNKNOWN STEP 2026-05-09T07:11:06.0377977Z * [new branch] nested-creation-1 -> origin/nested-creation-1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0379429Z * [new tag] 1.0.1 -> 1.0.1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0380541Z * [new tag] v1.2.1 -> v1.2.1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0381923Z * [new tag] v1.2.2 -> v1.2.2 +Release UNKNOWN STEP 2026-05-09T07:11:06.0383080Z * [new tag] v1.2.3 -> v1.2.3 +Release UNKNOWN STEP 2026-05-09T07:11:06.0384198Z * [new tag] v1.3.0 -> v1.3.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0385308Z * [new tag] v1.3.1 -> v1.3.1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0386419Z * [new tag] v1.4.0 -> v1.4.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0387544Z * [new tag] v1.4.1 -> v1.4.1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0388641Z * [new tag] v1.5.0 -> v1.5.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0389742Z * [new tag] v1.6.0 -> v1.6.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0390868Z * [new tag] v1.7.0 -> v1.7.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0392192Z * [new tag] v1.7.1 -> v1.7.1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0393308Z * [new tag] v1.7.2 -> v1.7.2 +Release UNKNOWN STEP 2026-05-09T07:11:06.0394405Z * [new tag] v1.7.3 -> v1.7.3 +Release UNKNOWN STEP 2026-05-09T07:11:06.0395639Z * [new tag] v1.7.4 -> v1.7.4 +Release UNKNOWN STEP 2026-05-09T07:11:06.0397488Z * [new tag] v1.8.0 -> v1.8.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0399267Z * [new tag] v2.0.2 -> v2.0.2 +Release UNKNOWN STEP 2026-05-09T07:11:06.0400404Z * [new tag] v2.1.0 -> v2.1.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0401517Z * [new tag] v2.1.1 -> v2.1.1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0402917Z * [new tag] v2.1.2 -> v2.1.2 +Release UNKNOWN STEP 2026-05-09T07:11:06.0404562Z * [new tag] v2.1.3 -> v2.1.3 +Release UNKNOWN STEP 2026-05-09T07:11:06.0405989Z * [new tag] v2.2.0 -> v2.2.0 +Release UNKNOWN STEP 2026-05-09T07:11:06.0407392Z * [new tag] v2.2.1 -> v2.2.1 +Release UNKNOWN STEP 2026-05-09T07:11:06.0408521Z * [new tag] v2.2.2 -> v2.2.2 +Release UNKNOWN STEP 2026-05-09T07:11:06.0412851Z [command]/usr/bin/git branch --list --remote origin/main +Release UNKNOWN STEP 2026-05-09T07:11:06.0440840Z origin/main +Release UNKNOWN STEP 2026-05-09T07:11:06.0452357Z [command]/usr/bin/git rev-parse refs/remotes/origin/main +Release UNKNOWN STEP 2026-05-09T07:11:06.0473824Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Release UNKNOWN STEP 2026-05-09T07:11:06.0480106Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:06.0482881Z ##[group]Determining the checkout info +Release UNKNOWN STEP 2026-05-09T07:11:06.0485534Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:06.0486616Z [command]/usr/bin/git sparse-checkout disable +Release UNKNOWN STEP 2026-05-09T07:11:06.0523708Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig +Release UNKNOWN STEP 2026-05-09T07:11:06.0549813Z ##[group]Checking out the ref +Release UNKNOWN STEP 2026-05-09T07:11:06.0553501Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main +Release UNKNOWN STEP 2026-05-09T07:11:06.1096691Z Switched to a new branch 'main' +Release UNKNOWN STEP 2026-05-09T07:11:06.1098810Z branch 'main' set up to track 'origin/main'. +Release UNKNOWN STEP 2026-05-09T07:11:06.1113758Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:06.1156305Z [command]/usr/bin/git log -1 --format=%H +Release UNKNOWN STEP 2026-05-09T07:11:06.1186524Z 70a959516ae64dd5878b72f5cb6af961a765aedc +Release UNKNOWN STEP 2026-05-09T07:11:06.1445203Z ##[group]Run actions/setup-dotnet@v4 +Release UNKNOWN STEP 2026-05-09T07:11:06.1446179Z with: +Release UNKNOWN STEP 2026-05-09T07:11:06.1446842Z dotnet-version: 8.0.x +Release UNKNOWN STEP 2026-05-09T07:11:06.1447612Z cache: false +Release UNKNOWN STEP 2026-05-09T07:11:06.1448269Z env: +Release UNKNOWN STEP 2026-05-09T07:11:06.1448975Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Release UNKNOWN STEP 2026-05-09T07:11:06.1449974Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Release UNKNOWN STEP 2026-05-09T07:11:06.1450874Z DOTNET_NOLOGO: true +Release UNKNOWN STEP 2026-05-09T07:11:06.1451611Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:06.3267554Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS +Release UNKNOWN STEP 2026-05-09T07:11:06.6122701Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Release UNKNOWN STEP 2026-05-09T07:11:06.9108631Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz size is 36689672 bytes. +Release UNKNOWN STEP 2026-05-09T07:11:06.9111238Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.7/dotnet-runtime-10.0.7-linux-x64.tar.gz +Release UNKNOWN STEP 2026-05-09T07:11:07.5890898Z dotnet-install: Downloaded file size is 36689672 bytes. +Release UNKNOWN STEP 2026-05-09T07:11:07.5891511Z dotnet-install: The remote and local file sizes are equal. +Release UNKNOWN STEP 2026-05-09T07:11:07.6183890Z dotnet-install: Installed version is 10.0.7 +Release UNKNOWN STEP 2026-05-09T07:11:07.6244873Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Release UNKNOWN STEP 2026-05-09T07:11:07.6248004Z dotnet-install: Note that the script does not resolve dependencies during installation. +Release UNKNOWN STEP 2026-05-09T07:11:07.6249713Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Release UNKNOWN STEP 2026-05-09T07:11:07.6251284Z dotnet-install: Installation finished successfully. +Release UNKNOWN STEP 2026-05-09T07:11:07.6276654Z [command]/home/runner/work/_actions/actions/setup-dotnet/v4/externals/install-dotnet.sh --skip-non-versioned-files --channel 8.0 +Release UNKNOWN STEP 2026-05-09T07:11:07.8824886Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Release UNKNOWN STEP 2026-05-09T07:11:08.8568476Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz size is 216822173 bytes. +Release UNKNOWN STEP 2026-05-09T07:11:08.8570505Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.420/dotnet-sdk-8.0.420-linux-x64.tar.gz +Release UNKNOWN STEP 2026-05-09T07:11:13.5083856Z dotnet-install: Downloaded file size is 216822173 bytes. +Release UNKNOWN STEP 2026-05-09T07:11:13.5085324Z dotnet-install: The remote and local file sizes are equal. +Release UNKNOWN STEP 2026-05-09T07:11:13.7554095Z dotnet-install: Installed version is 8.0.420 +Release UNKNOWN STEP 2026-05-09T07:11:13.7613518Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script. +Release UNKNOWN STEP 2026-05-09T07:11:13.7614793Z dotnet-install: Note that the script does not resolve dependencies during installation. +Release UNKNOWN STEP 2026-05-09T07:11:13.7617254Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. +Release UNKNOWN STEP 2026-05-09T07:11:13.7618607Z dotnet-install: Installation finished successfully. +Release UNKNOWN STEP 2026-05-09T07:11:13.7818666Z ##[group]Run actions/setup-node@v4 +Release UNKNOWN STEP 2026-05-09T07:11:13.7818978Z with: +Release UNKNOWN STEP 2026-05-09T07:11:13.7819157Z node-version: 20.x +Release UNKNOWN STEP 2026-05-09T07:11:13.7819361Z always-auth: false +Release UNKNOWN STEP 2026-05-09T07:11:13.7819553Z check-latest: false +Release UNKNOWN STEP 2026-05-09T07:11:13.7819912Z token: *** +Release UNKNOWN STEP 2026-05-09T07:11:13.7820096Z env: +Release UNKNOWN STEP 2026-05-09T07:11:13.7820292Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Release UNKNOWN STEP 2026-05-09T07:11:13.7820571Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Release UNKNOWN STEP 2026-05-09T07:11:13.7820829Z DOTNET_NOLOGO: true +Release UNKNOWN STEP 2026-05-09T07:11:13.7821035Z DOTNET_ROOT: /usr/share/dotnet +Release UNKNOWN STEP 2026-05-09T07:11:13.7821295Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:13.9822034Z Found in cache @ /opt/hostedtoolcache/node/20.20.2/x64 +Release UNKNOWN STEP 2026-05-09T07:11:13.9828598Z ##[group]Environment details +Release UNKNOWN STEP 2026-05-09T07:11:16.6242240Z node: v20.20.2 +Release UNKNOWN STEP 2026-05-09T07:11:16.6242677Z npm: 10.8.2 +Release UNKNOWN STEP 2026-05-09T07:11:16.6242967Z yarn: 1.22.22 +Release UNKNOWN STEP 2026-05-09T07:11:16.6244349Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:16.6343223Z ##[group]Run # Count changeset files (excluding README.md and config.json) +Release UNKNOWN STEP 2026-05-09T07:11:16.6343796Z ^[[36;1m# Count changeset files (excluding README.md and config.json)^[[0m +Release UNKNOWN STEP 2026-05-09T07:11:16.6344363Z ^[[36;1mCHANGESET_COUNT=$(find csharp/.changeset -name "*.md" ! -name "README.md" 2>/dev/null | wc -l)^[[0m +Release UNKNOWN STEP 2026-05-09T07:11:16.6344871Z ^[[36;1mecho "Found $CHANGESET_COUNT changeset file(s)"^[[0m +Release UNKNOWN STEP 2026-05-09T07:11:16.6345361Z ^[[36;1mecho "has_changesets=$([[ $CHANGESET_COUNT -gt 0 ]] && echo 'true' || echo 'false')" >> $GITHUB_OUTPUT^[[0m +Release UNKNOWN STEP 2026-05-09T07:11:16.6345918Z ^[[36;1mecho "changeset_count=$CHANGESET_COUNT" >> $GITHUB_OUTPUT^[[0m +Release UNKNOWN STEP 2026-05-09T07:11:16.6375714Z shell: /usr/bin/bash -e {0} +Release UNKNOWN STEP 2026-05-09T07:11:16.6375975Z env: +Release UNKNOWN STEP 2026-05-09T07:11:16.6376189Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Release UNKNOWN STEP 2026-05-09T07:11:16.6376461Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Release UNKNOWN STEP 2026-05-09T07:11:16.6376719Z DOTNET_NOLOGO: true +Release UNKNOWN STEP 2026-05-09T07:11:16.6376928Z DOTNET_ROOT: /usr/share/dotnet +Release UNKNOWN STEP 2026-05-09T07:11:16.6377210Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:16.6470297Z Found 11 changeset file(s) +Release UNKNOWN STEP 2026-05-09T07:11:16.6534826Z ##[group]Run echo "Multiple changesets detected, merging..." +Release UNKNOWN STEP 2026-05-09T07:11:16.6535280Z ^[[36;1mecho "Multiple changesets detected, merging..."^[[0m +Release UNKNOWN STEP 2026-05-09T07:11:16.6535710Z ^[[36;1mnode scripts/merge-changesets.mjs --dir csharp/.changeset^[[0m +Release UNKNOWN STEP 2026-05-09T07:11:16.6557175Z shell: /usr/bin/bash -e {0} +Release UNKNOWN STEP 2026-05-09T07:11:16.6557435Z env: +Release UNKNOWN STEP 2026-05-09T07:11:16.6557661Z DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true +Release UNKNOWN STEP 2026-05-09T07:11:16.6557970Z DOTNET_CLI_TELEMETRY_OPTOUT: true +Release UNKNOWN STEP 2026-05-09T07:11:16.6558238Z DOTNET_NOLOGO: true +Release UNKNOWN STEP 2026-05-09T07:11:16.6558473Z DOTNET_ROOT: /usr/share/dotnet +Release UNKNOWN STEP 2026-05-09T07:11:16.6558725Z ##[endgroup] +Release UNKNOWN STEP 2026-05-09T07:11:16.6602662Z Multiple changesets detected, merging... +Release UNKNOWN STEP 2026-05-09T07:11:16.6896205Z Checking for multiple changesets to merge... +Release UNKNOWN STEP 2026-05-09T07:11:16.6922114Z node:fs:1521 +Release UNKNOWN STEP 2026-05-09T07:11:16.6922990Z const result = binding.readdir( +Release UNKNOWN STEP 2026-05-09T07:11:16.6923721Z ^ +Release UNKNOWN STEP 2026-05-09T07:11:16.6924126Z +Release UNKNOWN STEP 2026-05-09T07:11:16.6925149Z Error: ENOENT: no such file or directory, scandir '.changeset' +Release UNKNOWN STEP 2026-05-09T07:11:16.6926105Z at readdirSync (node:fs:1521:26) +Release UNKNOWN STEP 2026-05-09T07:11:16.6927155Z at main (file:///home/runner/work/link-cli/link-cli/scripts/merge-changesets.mjs:189:26) +Release UNKNOWN STEP 2026-05-09T07:11:16.6928129Z at file:///home/runner/work/link-cli/link-cli/scripts/merge-changesets.mjs:264:1 +Release UNKNOWN STEP 2026-05-09T07:11:16.6928897Z at ModuleJob.run (node:internal/modules/esm/module_job:325:25) +Release UNKNOWN STEP 2026-05-09T07:11:16.6929953Z at async ModuleLoader.import (node:internal/modules/esm/loader:606:24) +Release UNKNOWN STEP 2026-05-09T07:11:16.6930773Z at async asyncRunEntryPointWithESMLoader (node:internal/modules/run_main:117:5) { +Release UNKNOWN STEP 2026-05-09T07:11:16.6931469Z errno: -2, +Release UNKNOWN STEP 2026-05-09T07:11:16.6932216Z code: 'ENOENT', +Release UNKNOWN STEP 2026-05-09T07:11:16.6932637Z syscall: 'scandir', +Release UNKNOWN STEP 2026-05-09T07:11:16.6933078Z path: '.changeset' +Release UNKNOWN STEP 2026-05-09T07:11:16.6933518Z } +Release UNKNOWN STEP 2026-05-09T07:11:16.6933720Z +Release UNKNOWN STEP 2026-05-09T07:11:16.6933899Z Node.js v20.20.2 +Release UNKNOWN STEP 2026-05-09T07:11:16.6966491Z ##[error]Process completed with exit code 1. +Release UNKNOWN STEP 2026-05-09T07:11:16.7102258Z Post job cleanup. +Release UNKNOWN STEP 2026-05-09T07:11:16.8089845Z [command]/usr/bin/git version +Release UNKNOWN STEP 2026-05-09T07:11:16.8126073Z git version 2.53.0 +Release UNKNOWN STEP 2026-05-09T07:11:16.8176770Z Temporarily overriding HOME='/home/runner/work/_temp/8b736b12-cf43-4513-8b51-efc45d54f4fb' before making global git config changes +Release UNKNOWN STEP 2026-05-09T07:11:16.8178069Z Adding repository directory to the temporary git global config as a safe directory +Release UNKNOWN STEP 2026-05-09T07:11:16.8182008Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Release UNKNOWN STEP 2026-05-09T07:11:16.8216000Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Release UNKNOWN STEP 2026-05-09T07:11:16.8247939Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Release UNKNOWN STEP 2026-05-09T07:11:16.8469367Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Release UNKNOWN STEP 2026-05-09T07:11:16.8490389Z http.https://github.com/.extraheader +Release UNKNOWN STEP 2026-05-09T07:11:16.8502276Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader +Release UNKNOWN STEP 2026-05-09T07:11:16.8533119Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Release UNKNOWN STEP 2026-05-09T07:11:16.8755821Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Release UNKNOWN STEP 2026-05-09T07:11:16.8791096Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Release UNKNOWN STEP 2026-05-09T07:11:16.9127712Z Cleaning up orphan processes +Release UNKNOWN STEP 2026-05-09T07:11:16.9408552Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-dotnet@v4, actions/setup-node@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ diff --git a/docs/case-studies/issue-77/evidence/issue-77-comments.json b/docs/case-studies/issue-77/evidence/issue-77-comments.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/issue-77-comments.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/docs/case-studies/issue-77/evidence/issue-77.json b/docs/case-studies/issue-77/evidence/issue-77.json new file mode 100644 index 0000000..b572cae --- /dev/null +++ b/docs/case-studies/issue-77/evidence/issue-77.json @@ -0,0 +1 @@ +{"author":{"id":"MDQ6VXNlcjE0MzE5MDQ=","is_bot":false,"login":"konard","name":"Konstantin Diachenko"},"body":"./scripts folder for CI/CD and other scripts should be split into ./csharp/scripts and ./rust/scripts.\n\nWe should use Rust for Rust scripts as we do in our template.\n\n./src and ./tests folders should not exists in root, instead they should be moved to respective language or where they used.\n\nIn CI/CD we should have separate README.md files for each language version, also we need to have badges to confirm publication of package visually to both crates and nugets, and in each specific language readme (that should also will go to each package), and also in GitHub releases, we need to make sure we have both C# and Rust GitHub Releases (with badges, and actually packages released).\n\nAlso I see GitHub Pages deploy is failing, it should also be fixed.\n\nUse all the best practices from CI/CD templates (check full file tree to compare for all GitHub workflow and CI/CD scripts file), if the same issue is found in template report issue also in templates:\n- https://github.com/link-foundation/js-ai-driven-development-pipeline-template\n- https://github.com/link-foundation/rust-ai-driven-development-pipeline-template\n- https://github.com/link-foundation/csharp-ai-driven-development-pipeline-template\n\nWe should compare all files, so we don't have more CI/CD errors in the future and reuse all the best practices from these templates.\n\nWe need to download all logs and data related about the issue to this repository, make sure we compile that data to `./docs/case-studies/issue-{id}` folder, and use it to do deep case study analysis (also make sure to search online for additional facts and data), in which we will reconstruct timeline/sequence of events, list of each and all requirements from the issue, find root causes of the each problem, and propose possible solutions and solution plans for each requirement (we should also check known existing components/libraries, that solve similar problem or can help in solutions).\n\nIf there is not enough data to find actual root cause, add debug output and verbose mode if not present, that will allow us to find root cause on next iteration.\n\nIf issue related to any other repository/project, where we can report issues on GitHub, please do so. Each issue must contain reproducible examples, workarounds and suggestions for fix the issue in code.\n\nPlease plan and execute everything in a single pull request, you have unlimited time and context, as context auto-compacts and you can continue indefinitely, until it is each and every requirement fully addressed, and everything is totally done.","comments":[],"createdAt":"2026-05-12T11:03:09Z","labels":[{"id":"LA_kwDONXCAbs8AAAAB0ixENw","name":"bug","description":"Something isn't working","color":"d73a4a"}],"number":77,"state":"OPEN","title":"Fixes and improvements","updatedAt":"2026-05-12T11:06:27Z","url":"https://github.com/link-foundation/link-cli/issues/77"} diff --git a/docs/case-studies/issue-77/evidence/link-cli-file-tree-after.txt b/docs/case-studies/issue-77/evidence/link-cli-file-tree-after.txt new file mode 100644 index 0000000..508488c --- /dev/null +++ b/docs/case-studies/issue-77/evidence/link-cli-file-tree-after.txt @@ -0,0 +1,351 @@ +.github/workflows/csharp.yml +.github/workflows/rust.yml +.github/workflows/wasm.yml +.gitignore +.gitkeep +LICENSE +README-WASM.md +README.md +WEBASSEMBLY_IMPLEMENTATION.md +ci-logs/rust-lint-75003226910.log +csharp/.changeset/README.md +csharp/.changeset/add-export-alias.md +csharp/.changeset/add-lino-input-import.md +csharp/.changeset/add-lino-output-export.md +csharp/.changeset/add-named-types-decorator.md +csharp/.changeset/add-persistent-transformation-triggers.md +csharp/.changeset/add-pinned-types-decorator.md +csharp/.changeset/config.json +csharp/.changeset/fix-issue-20-substitution.md +csharp/.changeset/fix-issue-62-review-coverage.md +csharp/.changeset/split-csharp-scripts.md +csharp/.changeset/support-string-id-aliases.md +csharp/.changeset/update-links-notation-dependency.md +csharp/.changeset/validate-missing-references.md +csharp/Foundation.Data.Doublets.Cli.Tests/AdvancedMixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli.Tests/BasicQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli.Tests/ChangesSimplifier.cs +csharp/Foundation.Data.Doublets.Cli.Tests/CliExportIntegrationTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/Foundation.Data.Doublets.Cli.Tests.csproj +csharp/Foundation.Data.Doublets.Cli.Tests/Issue62ReviewCoverageTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/LinoDatabaseInputTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/LinoDatabaseOutputTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/MixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli.Tests/NamedLinksDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/NamedTypesDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/PersistentTransformationDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/PinnedTypesDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/PinnedTypesTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/SimpleLinksDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/UnicodeStringStorageTests.cs +csharp/Foundation.Data.Doublets.Cli.sln +csharp/Foundation.Data.Doublets.Cli/AdvancedMixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli/BasicQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli/ChangesSimplifier.cs +csharp/Foundation.Data.Doublets.Cli/EnumerableExtensions.cs +csharp/Foundation.Data.Doublets.Cli/Exceptions.cs +csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj +csharp/Foundation.Data.Doublets.Cli/INamedTypes.cs +csharp/Foundation.Data.Doublets.Cli/LinksExtensions.cs +csharp/Foundation.Data.Doublets.Cli/LinoDatabaseInput.cs +csharp/Foundation.Data.Doublets.Cli/LinoDatabaseOutput.cs +csharp/Foundation.Data.Doublets.Cli/MixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli/NamedLinks.cs +csharp/Foundation.Data.Doublets.Cli/NamedLinksDecorator.cs +csharp/Foundation.Data.Doublets.Cli/NamedTypesDecorator.cs +csharp/Foundation.Data.Doublets.Cli/PersistentTransformationDecorator.cs +csharp/Foundation.Data.Doublets.Cli/PinnedTypes.cs +csharp/Foundation.Data.Doublets.Cli/PinnedTypesDecorator.cs +csharp/Foundation.Data.Doublets.Cli/Program.cs +csharp/Foundation.Data.Doublets.Cli/QueryConstants.cs +csharp/Foundation.Data.Doublets.Cli/SimpleLinksDecorator.cs +csharp/Foundation.Data.Doublets.Cli/UnicodeStringStorage.cs +csharp/README.md +csharp/scripts/bump-version.mjs +csharp/scripts/check-file-size.mjs +csharp/scripts/create-github-release.mjs +csharp/scripts/detect-code-changes.mjs +csharp/scripts/merge-changesets.mjs +csharp/scripts/release-scripts.test.mjs +csharp/scripts/validate-changeset.mjs +csharp/scripts/version-and-commit.mjs +docs/ARCHITECTURE.md +docs/HOW-IT-WORKS.md +docs/REQUIREMENTS.md +docs/case-studies/issue-12/README.md +docs/case-studies/issue-12/evidence/ci-runs.json +docs/case-studies/issue-12/evidence/doublets-web-issue-5.json +docs/case-studies/issue-12/evidence/issue-12.json +docs/case-studies/issue-12/evidence/npm-doublets-web.json +docs/case-studies/issue-12/evidence/pr-52-conversation-comments.json +docs/case-studies/issue-20/README.md +docs/case-studies/issue-20/evidence/cargo-clippy.log +docs/case-studies/issue-20/evidence/cargo-doc-test.log +docs/case-studies/issue-20/evidence/cargo-fmt-check.log +docs/case-studies/issue-20/evidence/cargo-targeted.log +docs/case-studies/issue-20/evidence/cargo-test.log +docs/case-studies/issue-20/evidence/ci-rust-lint-75003226910.log +docs/case-studies/issue-20/evidence/diff-check.log +docs/case-studies/issue-20/evidence/dotnet-build.log +docs/case-studies/issue-20/evidence/dotnet-restore.log +docs/case-studies/issue-20/evidence/dotnet-targeted.log +docs/case-studies/issue-20/evidence/dotnet-test.log +docs/case-studies/issue-20/evidence/issue-20-comments.json +docs/case-studies/issue-20/evidence/issue-20-screenshot.png +docs/case-studies/issue-20/evidence/issue-20.json +docs/case-studies/issue-20/evidence/linksplatform-data-doublets-ilinksextensions.cs +docs/case-studies/issue-20/evidence/linksplatform-data-ilinksextensions.cs +docs/case-studies/issue-20/evidence/linksplatform-data-linksconstants.cs +docs/case-studies/issue-20/evidence/linksplatform-data-point.cs +docs/case-studies/issue-20/evidence/npm-build.log +docs/case-studies/issue-20/evidence/npm-ci.log +docs/case-studies/issue-20/evidence/npm-test-wasm.log +docs/case-studies/issue-20/evidence/pr-47-conversation-comments.json +docs/case-studies/issue-20/evidence/pr-47-review-comments.json +docs/case-studies/issue-20/evidence/pr-47-reviews.json +docs/case-studies/issue-20/evidence/pr-47.json +docs/case-studies/issue-20/evidence/repro-after-fix.log +docs/case-studies/issue-20/evidence/rust-file-size-check.log +docs/case-studies/issue-20/evidence/setup-after-fix.log +docs/case-studies/issue-67/README.md +docs/case-studies/issue-69/README.md +docs/case-studies/issue-69/evidence/npm-build-after-ci.log +docs/case-studies/issue-69/evidence/npm-ci.log +docs/case-studies/issue-69/evidence/npm-test-wasm.log +docs/case-studies/issue-69/evidence/recent-runs-issue-branch.json +docs/case-studies/issue-69/evidence/run-25245349330.json +docs/case-studies/issue-69/evidence/run-25245349330.log +docs/case-studies/issue-69/evidence/run-25249954218.json +docs/case-studies/issue-69/evidence/run-25249954818.json +docs/case-studies/issue-71/README.md +docs/case-studies/issue-71/evidence/cargo-search-doublets.txt +docs/case-studies/issue-71/evidence/cargo-search-links-notation.txt +docs/case-studies/issue-71/evidence/code-search-named-types.json +docs/case-studies/issue-71/evidence/code-search-persistent-transformation.json +docs/case-studies/issue-71/evidence/csharp-help.txt +docs/case-studies/issue-71/evidence/issue-71-comments.json +docs/case-studies/issue-71/evidence/issue-71.json +docs/case-studies/issue-71/evidence/issues-all.json +docs/case-studies/issue-71/evidence/named-reference-examples.txt +docs/case-studies/issue-71/evidence/npm-doublets-web-detailed.json +docs/case-studies/issue-71/evidence/npm-doublets-web.json +docs/case-studies/issue-71/evidence/npm-vite-plugin-react.json +docs/case-studies/issue-71/evidence/nuget-search-clink.txt +docs/case-studies/issue-71/evidence/pr-72-conversation-comments.json +docs/case-studies/issue-71/evidence/pr-72-review-comments.json +docs/case-studies/issue-71/evidence/pr-72-reviews.json +docs/case-studies/issue-71/evidence/pr-72.json +docs/case-studies/issue-71/evidence/pulls-all.json +docs/case-studies/issue-71/evidence/repository-issue-and-pr-conversation-comments.json +docs/case-studies/issue-71/evidence/repository-pr-review-comments.json +docs/case-studies/issue-71/evidence/rust-help.txt +docs/case-studies/issue-73/README.md +docs/case-studies/issue-73/evidence/cargo-clippy-root.log +docs/case-studies/issue-73/evidence/cargo-fmt-root.log +docs/case-studies/issue-73/evidence/cargo-install-wasm-pack.log +docs/case-studies/issue-73/evidence/cargo-metadata-all-features-after.json +docs/case-studies/issue-73/evidence/cargo-metadata-all-features-before.json +docs/case-studies/issue-73/evidence/cargo-test-lib-after.log +docs/case-studies/issue-73/evidence/cargo-test-lib-before.log +docs/case-studies/issue-73/evidence/cargo-test-root-all-features.log +docs/case-studies/issue-73/evidence/cargo-test-rust-core.log +docs/case-studies/issue-73/evidence/cargo-tree-all-features-after.txt +docs/case-studies/issue-73/evidence/cargo-tree-wee-alloc-before.txt +docs/case-studies/issue-73/evidence/check-file-size-rust.log +docs/case-studies/issue-73/evidence/code-search-wee-alloc.json +docs/case-studies/issue-73/evidence/dependabot-alert-1.json +docs/case-studies/issue-73/evidence/dependabot-alerts.json +docs/case-studies/issue-73/evidence/dependabot-regression-test-after.log +docs/case-studies/issue-73/evidence/dependabot-regression-test-before.log +docs/case-studies/issue-73/evidence/dependabot-regression-test-final.log +docs/case-studies/issue-73/evidence/github-advisory-ghsa-rc23-xxgq-x27g.json +docs/case-studies/issue-73/evidence/issue-73-comments.json +docs/case-studies/issue-73/evidence/issue-73.json +docs/case-studies/issue-73/evidence/local-wee-alloc-references-after.txt +docs/case-studies/issue-73/evidence/local-wee-alloc-references-before.txt +docs/case-studies/issue-73/evidence/npm-audit-after.json +docs/case-studies/issue-73/evidence/npm-audit-before.json +docs/case-studies/issue-73/evidence/npm-ci.log +docs/case-studies/issue-73/evidence/npm-run-build.log +docs/case-studies/issue-73/evidence/npm-run-test-wasm.log +docs/case-studies/issue-73/evidence/npm-test.log +docs/case-studies/issue-73/evidence/pr-74-conversation-comments.json +docs/case-studies/issue-73/evidence/pr-74-review-comments.json +docs/case-studies/issue-73/evidence/pr-74-reviews.json +docs/case-studies/issue-73/evidence/pr-74.json +docs/case-studies/issue-73/evidence/recent-merged-prs.json +docs/case-studies/issue-73/evidence/rustsec-2022-0054.md +docs/case-studies/issue-73/evidence/rustwasm-wee-alloc-issue-107-comments.json +docs/case-studies/issue-73/evidence/rustwasm-wee-alloc-issue-107.json +docs/case-studies/issue-75/README.md +docs/case-studies/issue-75/evidence/cargo-clippy.log +docs/case-studies/issue-75/evidence/cargo-doc-test.log +docs/case-studies/issue-75/evidence/cargo-fmt.log +docs/case-studies/issue-75/evidence/cargo-test.log +docs/case-studies/issue-75/evidence/check-file-size-rust.log +docs/case-studies/issue-75/evidence/dotnet-pack.log +docs/case-studies/issue-75/evidence/dotnet-test.log +docs/case-studies/issue-75/evidence/git-diff-check.log +docs/case-studies/issue-75/evidence/node-check-scripts.log +docs/case-studies/issue-75/evidence/npm-test-js.log +docs/case-studies/issue-75/evidence/recent-merged-prs-release-cicd.json +docs/case-studies/issue-75/evidence/recent-merged-prs-workflow.json +docs/case-studies/issue-75/evidence/recent-merged-prs.json +docs/case-studies/issue-75/evidence/recent-prs.json +docs/case-studies/issue-75/evidence/recent-releases.txt +docs/case-studies/issue-75/evidence/recent-runs-issue-branch.json +docs/case-studies/issue-75/evidence/recent-runs-main.json +docs/case-studies/issue-75/evidence/release-script-tests-after.log +docs/case-studies/issue-75/evidence/release-script-tests-before.log +docs/case-studies/issue-75/evidence/releases.json +docs/case-studies/issue-75/evidence/run-25594941803.json +docs/case-studies/issue-75/evidence/run-25594941803.log +docs/case-studies/issue-75/evidence/run-25594941825.json +docs/case-studies/issue-75/evidence/run-25594941825.log +docs/case-studies/issue-75/evidence/template-csharp-release.yml +docs/case-studies/issue-75/evidence/template-csharp-workflows.json +docs/case-studies/issue-75/evidence/template-js-release.yml +docs/case-studies/issue-75/evidence/template-js-workflows.json +docs/case-studies/issue-75/evidence/template-python-release.yml +docs/case-studies/issue-75/evidence/template-python-workflows.json +docs/case-studies/issue-75/evidence/template-rust-release.yml +docs/case-studies/issue-75/evidence/template-rust-workflows.json +docs/case-studies/issue-75/evidence/workflow-yaml-parse.log +docs/case-studies/issue-77/README.md +docs/case-studies/issue-77/evidence/cargo-search-link-cli.txt +docs/case-studies/issue-77/evidence/crates-link-cli.json +docs/case-studies/issue-77/evidence/csharp-25594941803-log.txt +docs/case-studies/issue-77/evidence/issue-77-comments.json +docs/case-studies/issue-77/evidence/issue-77.json +docs/case-studies/issue-77/evidence/link-cli-file-tree-after.txt +docs/case-studies/issue-77/evidence/link-cli-file-tree-before.txt +docs/case-studies/issue-77/evidence/npm-doublets-web.json +docs/case-studies/issue-77/evidence/npm-link-cli-web.json +docs/case-studies/issue-77/evidence/nuget-search-clink.json +docs/case-studies/issue-77/evidence/pr-78-conversation-comments.json +docs/case-studies/issue-77/evidence/pr-78-review-comments.json +docs/case-studies/issue-77/evidence/pr-78-reviews.json +docs/case-studies/issue-77/evidence/pr-78.json +docs/case-studies/issue-77/evidence/recent-runs-issue-branch.json +docs/case-studies/issue-77/evidence/recent-runs-main.json +docs/case-studies/issue-77/evidence/recent-runs-pages.json +docs/case-studies/issue-77/evidence/recent-runs-wasm.json +docs/case-studies/issue-77/evidence/releases.txt +docs/case-studies/issue-77/evidence/run-25245349330.json +docs/case-studies/issue-77/evidence/run-25594941803.json +docs/case-studies/issue-77/evidence/run-25728494285.json +docs/case-studies/issue-77/evidence/run-25728494305.json +docs/case-studies/issue-77/evidence/run-25728494323.json +docs/case-studies/issue-77/evidence/template-csharp-file-tree.txt +docs/case-studies/issue-77/evidence/template-csharp-release.yml +docs/case-studies/issue-77/evidence/template-js-file-tree.txt +docs/case-studies/issue-77/evidence/template-js-links.yml +docs/case-studies/issue-77/evidence/template-js-release.yml +docs/case-studies/issue-77/evidence/template-rust-file-tree.txt +docs/case-studies/issue-77/evidence/template-rust-release.yml +docs/case-studies/issue-77/evidence/webassembly-25245349330-log.txt +docs/screenshots/issue-12/webassembly-workbench-desktop.png +docs/screenshots/issue-12/webassembly-workbench-mobile.png +examples/debug_changes.cs +examples/test1_output.txt +examples/test_issue_scenario.cs +examples/test_storable_patterns.sh +experiments/validate-wasm-workflow.mjs +package-lock.json +package.json +rust/Cargo.lock +rust/Cargo.toml +rust/README.md +rust/changelog.d/20260430_041900_rust_query_parity.md +rust/changelog.d/20260430_063000_lino_output_export.md +rust/changelog.d/20260430_070900_named_types_decorator.md +rust/changelog.d/20260430_072128_validate_missing_references.md +rust/changelog.d/20260430_073500_pinned_types_decorator.md +rust/changelog.d/20260430_105500_named_type_query_cli.md +rust/changelog.d/20260502_061000_export_alias.md +rust/changelog.d/20260508_104000_lino_input_import.md +rust/changelog.d/20260508_105800_issue_20_substitution.md +rust/changelog.d/20260509_053805_issue_62_review_coverage.md +rust/changelog.d/20260512_000000_issue_77_layout.md +rust/changelog.d/README.md +rust/scripts/bump-version.rs +rust/scripts/check-changelog-fragment.rs +rust/scripts/check-file-size.rs +rust/scripts/check-release-needed.rs +rust/scripts/check-version-modification.rs +rust/scripts/collect-changelog.rs +rust/scripts/create-changelog-fragment.rs +rust/scripts/create-github-release.rs +rust/scripts/detect-code-changes.rs +rust/scripts/get-bump-type.rs +rust/scripts/get-version.rs +rust/scripts/git-config.rs +rust/scripts/publish-crate.rs +rust/scripts/rust-paths.rs +rust/scripts/version-and-commit.rs +rust/scripts/wait-for-crate.rs +rust/src/changes_simplifier.rs +rust/src/cli.rs +rust/src/error.rs +rust/src/hybrid_reference.rs +rust/src/lib.rs +rust/src/link.rs +rust/src/link_reference_validator.rs +rust/src/link_storage.rs +rust/src/lino_database_input.rs +rust/src/lino_link.rs +rust/src/main.rs +rust/src/named_links.rs +rust/src/named_type_links.rs +rust/src/named_types.rs +rust/src/parser.rs +rust/src/pinned_types.rs +rust/src/query_options.rs +rust/src/query_processor.rs +rust/src/query_processor_substitution.rs +rust/src/query_types.rs +rust/src/sequences/address_to_raw_number_converter.rs +rust/src/sequences/balanced_variant_converter.rs +rust/src/sequences/caching_converter_decorator.rs +rust/src/sequences/char_to_unicode_symbol_converter.rs +rust/src/sequences/default_stack.rs +rust/src/sequences/mod.rs +rust/src/sequences/raw_number_to_address_converter.rs +rust/src/sequences/right_sequence_walker.rs +rust/src/sequences/string_to_unicode_sequence_converter.rs +rust/src/sequences/target_matcher.rs +rust/src/sequences/unicode_sequence_to_string_converter.rs +rust/src/sequences/unicode_symbol_to_char_converter.rs +rust/src/unicode_string_storage.rs +rust/tests/changes_simplifier_tests.rs +rust/tests/cli_arguments_tests.rs +rust/tests/cli_export_tests.rs +rust/tests/cli_import_tests.rs +rust/tests/cli_named_types_tests.rs +rust/tests/dependency_basis_tests.rs +rust/tests/issue62_review_coverage_tests.rs +rust/tests/link_storage_tests.rs +rust/tests/link_tests.rs +rust/tests/lino_database_input_tests.rs +rust/tests/lino_link_tests.rs +rust/tests/named_types_decorator_tests.rs +rust/tests/parser_tests.rs +rust/tests/pinned_types_decorator_tests.rs +rust/tests/query_processor_csharp_parity_tests.rs +rust/tests/query_processor_tests.rs +rust/tests/unicode_sequence_converter_tests.rs +rust/tests/unicode_string_storage_tests.rs +rust/wasm/Cargo.lock +rust/wasm/Cargo.toml +rust/wasm/src/lib.rs +rust/wasm/tests/dependabot_alert_tests.rs +rust/wasm/tests/web.rs +web/favicon.svg +web/index.html +web/src/App.jsx +web/src/linkGraph.js +web/src/main.jsx +web/src/styles.css +web/test/linkGraph.test.mjs +web/test/repositoryLayout.test.mjs +web/vite.config.js diff --git a/docs/case-studies/issue-77/evidence/link-cli-file-tree-before.txt b/docs/case-studies/issue-77/evidence/link-cli-file-tree-before.txt new file mode 100644 index 0000000..24e5df1 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/link-cli-file-tree-before.txt @@ -0,0 +1,750 @@ +.github/workflows/csharp.yml +.github/workflows/rust.yml +.github/workflows/wasm.yml +.gitignore +.gitkeep +Cargo.lock +Cargo.toml +LICENSE +README-WASM.md +README.md +WEBASSEMBLY_IMPLEMENTATION.md +ci-logs/issue-77/csharp-25594941803.log +ci-logs/issue-77/webassembly-25245349330.log +ci-logs/rust-lint-75003226910.log +csharp/.changeset/README.md +csharp/.changeset/add-export-alias.md +csharp/.changeset/add-lino-input-import.md +csharp/.changeset/add-lino-output-export.md +csharp/.changeset/add-named-types-decorator.md +csharp/.changeset/add-persistent-transformation-triggers.md +csharp/.changeset/add-pinned-types-decorator.md +csharp/.changeset/config.json +csharp/.changeset/fix-issue-20-substitution.md +csharp/.changeset/fix-issue-62-review-coverage.md +csharp/.changeset/support-string-id-aliases.md +csharp/.changeset/update-links-notation-dependency.md +csharp/.changeset/validate-missing-references.md +csharp/Foundation.Data.Doublets.Cli.Tests/AdvancedMixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli.Tests/BasicQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli.Tests/ChangesSimplifier.cs +csharp/Foundation.Data.Doublets.Cli.Tests/CliExportIntegrationTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/Foundation.Data.Doublets.Cli.Tests.csproj +csharp/Foundation.Data.Doublets.Cli.Tests/Issue62ReviewCoverageTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/LinoDatabaseInputTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/LinoDatabaseOutputTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/MixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli.Tests/NamedLinksDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/NamedTypesDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/PersistentTransformationDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/PinnedTypesDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/PinnedTypesTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/SimpleLinksDecoratorTests.cs +csharp/Foundation.Data.Doublets.Cli.Tests/UnicodeStringStorageTests.cs +csharp/Foundation.Data.Doublets.Cli.sln +csharp/Foundation.Data.Doublets.Cli/AdvancedMixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli/BasicQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli/ChangesSimplifier.cs +csharp/Foundation.Data.Doublets.Cli/EnumerableExtensions.cs +csharp/Foundation.Data.Doublets.Cli/Exceptions.cs +csharp/Foundation.Data.Doublets.Cli/Foundation.Data.Doublets.Cli.csproj +csharp/Foundation.Data.Doublets.Cli/INamedTypes.cs +csharp/Foundation.Data.Doublets.Cli/LinksExtensions.cs +csharp/Foundation.Data.Doublets.Cli/LinoDatabaseInput.cs +csharp/Foundation.Data.Doublets.Cli/LinoDatabaseOutput.cs +csharp/Foundation.Data.Doublets.Cli/MixedQueryProcessor.cs +csharp/Foundation.Data.Doublets.Cli/NamedLinks.cs +csharp/Foundation.Data.Doublets.Cli/NamedLinksDecorator.cs +csharp/Foundation.Data.Doublets.Cli/NamedTypesDecorator.cs +csharp/Foundation.Data.Doublets.Cli/PersistentTransformationDecorator.cs +csharp/Foundation.Data.Doublets.Cli/PinnedTypes.cs +csharp/Foundation.Data.Doublets.Cli/PinnedTypesDecorator.cs +csharp/Foundation.Data.Doublets.Cli/Program.cs +csharp/Foundation.Data.Doublets.Cli/QueryConstants.cs +csharp/Foundation.Data.Doublets.Cli/SimpleLinksDecorator.cs +csharp/Foundation.Data.Doublets.Cli/UnicodeStringStorage.cs +docs/ARCHITECTURE.md +docs/HOW-IT-WORKS.md +docs/REQUIREMENTS.md +docs/case-studies/issue-12/README.md +docs/case-studies/issue-12/evidence/ci-runs.json +docs/case-studies/issue-12/evidence/doublets-web-issue-5.json +docs/case-studies/issue-12/evidence/issue-12.json +docs/case-studies/issue-12/evidence/npm-doublets-web.json +docs/case-studies/issue-12/evidence/pr-52-conversation-comments.json +docs/case-studies/issue-20/README.md +docs/case-studies/issue-20/evidence/cargo-clippy.log +docs/case-studies/issue-20/evidence/cargo-doc-test.log +docs/case-studies/issue-20/evidence/cargo-fmt-check.log +docs/case-studies/issue-20/evidence/cargo-targeted.log +docs/case-studies/issue-20/evidence/cargo-test.log +docs/case-studies/issue-20/evidence/ci-rust-lint-75003226910.log +docs/case-studies/issue-20/evidence/diff-check.log +docs/case-studies/issue-20/evidence/dotnet-build.log +docs/case-studies/issue-20/evidence/dotnet-restore.log +docs/case-studies/issue-20/evidence/dotnet-targeted.log +docs/case-studies/issue-20/evidence/dotnet-test.log +docs/case-studies/issue-20/evidence/issue-20-comments.json +docs/case-studies/issue-20/evidence/issue-20-screenshot.png +docs/case-studies/issue-20/evidence/issue-20.json +docs/case-studies/issue-20/evidence/linksplatform-data-doublets-ilinksextensions.cs +docs/case-studies/issue-20/evidence/linksplatform-data-ilinksextensions.cs +docs/case-studies/issue-20/evidence/linksplatform-data-linksconstants.cs +docs/case-studies/issue-20/evidence/linksplatform-data-point.cs +docs/case-studies/issue-20/evidence/npm-build.log +docs/case-studies/issue-20/evidence/npm-ci.log +docs/case-studies/issue-20/evidence/npm-test-wasm.log +docs/case-studies/issue-20/evidence/pr-47-conversation-comments.json +docs/case-studies/issue-20/evidence/pr-47-review-comments.json +docs/case-studies/issue-20/evidence/pr-47-reviews.json +docs/case-studies/issue-20/evidence/pr-47.json +docs/case-studies/issue-20/evidence/repro-after-fix.log +docs/case-studies/issue-20/evidence/rust-file-size-check.log +docs/case-studies/issue-20/evidence/setup-after-fix.log +docs/case-studies/issue-67/README.md +docs/case-studies/issue-69/README.md +docs/case-studies/issue-69/evidence/npm-build-after-ci.log +docs/case-studies/issue-69/evidence/npm-ci.log +docs/case-studies/issue-69/evidence/npm-test-wasm.log +docs/case-studies/issue-69/evidence/recent-runs-issue-branch.json +docs/case-studies/issue-69/evidence/run-25245349330.json +docs/case-studies/issue-69/evidence/run-25245349330.log +docs/case-studies/issue-69/evidence/run-25249954218.json +docs/case-studies/issue-69/evidence/run-25249954818.json +docs/case-studies/issue-71/README.md +docs/case-studies/issue-71/evidence/cargo-search-doublets.txt +docs/case-studies/issue-71/evidence/cargo-search-links-notation.txt +docs/case-studies/issue-71/evidence/code-search-named-types.json +docs/case-studies/issue-71/evidence/code-search-persistent-transformation.json +docs/case-studies/issue-71/evidence/csharp-help.txt +docs/case-studies/issue-71/evidence/issue-71-comments.json +docs/case-studies/issue-71/evidence/issue-71.json +docs/case-studies/issue-71/evidence/issues-all.json +docs/case-studies/issue-71/evidence/named-reference-examples.txt +docs/case-studies/issue-71/evidence/npm-doublets-web-detailed.json +docs/case-studies/issue-71/evidence/npm-doublets-web.json +docs/case-studies/issue-71/evidence/npm-vite-plugin-react.json +docs/case-studies/issue-71/evidence/nuget-search-clink.txt +docs/case-studies/issue-71/evidence/pr-72-conversation-comments.json +docs/case-studies/issue-71/evidence/pr-72-review-comments.json +docs/case-studies/issue-71/evidence/pr-72-reviews.json +docs/case-studies/issue-71/evidence/pr-72.json +docs/case-studies/issue-71/evidence/pulls-all.json +docs/case-studies/issue-71/evidence/repository-issue-and-pr-conversation-comments.json +docs/case-studies/issue-71/evidence/repository-pr-review-comments.json +docs/case-studies/issue-71/evidence/rust-help.txt +docs/case-studies/issue-73/README.md +docs/case-studies/issue-73/evidence/cargo-clippy-root.log +docs/case-studies/issue-73/evidence/cargo-fmt-root.log +docs/case-studies/issue-73/evidence/cargo-install-wasm-pack.log +docs/case-studies/issue-73/evidence/cargo-metadata-all-features-after.json +docs/case-studies/issue-73/evidence/cargo-metadata-all-features-before.json +docs/case-studies/issue-73/evidence/cargo-test-lib-after.log +docs/case-studies/issue-73/evidence/cargo-test-lib-before.log +docs/case-studies/issue-73/evidence/cargo-test-root-all-features.log +docs/case-studies/issue-73/evidence/cargo-test-rust-core.log +docs/case-studies/issue-73/evidence/cargo-tree-all-features-after.txt +docs/case-studies/issue-73/evidence/cargo-tree-wee-alloc-before.txt +docs/case-studies/issue-73/evidence/check-file-size-rust.log +docs/case-studies/issue-73/evidence/code-search-wee-alloc.json +docs/case-studies/issue-73/evidence/dependabot-alert-1.json +docs/case-studies/issue-73/evidence/dependabot-alerts.json +docs/case-studies/issue-73/evidence/dependabot-regression-test-after.log +docs/case-studies/issue-73/evidence/dependabot-regression-test-before.log +docs/case-studies/issue-73/evidence/dependabot-regression-test-final.log +docs/case-studies/issue-73/evidence/github-advisory-ghsa-rc23-xxgq-x27g.json +docs/case-studies/issue-73/evidence/issue-73-comments.json +docs/case-studies/issue-73/evidence/issue-73.json +docs/case-studies/issue-73/evidence/local-wee-alloc-references-after.txt +docs/case-studies/issue-73/evidence/local-wee-alloc-references-before.txt +docs/case-studies/issue-73/evidence/npm-audit-after.json +docs/case-studies/issue-73/evidence/npm-audit-before.json +docs/case-studies/issue-73/evidence/npm-ci.log +docs/case-studies/issue-73/evidence/npm-run-build.log +docs/case-studies/issue-73/evidence/npm-run-test-wasm.log +docs/case-studies/issue-73/evidence/npm-test.log +docs/case-studies/issue-73/evidence/pr-74-conversation-comments.json +docs/case-studies/issue-73/evidence/pr-74-review-comments.json +docs/case-studies/issue-73/evidence/pr-74-reviews.json +docs/case-studies/issue-73/evidence/pr-74.json +docs/case-studies/issue-73/evidence/recent-merged-prs.json +docs/case-studies/issue-73/evidence/rustsec-2022-0054.md +docs/case-studies/issue-73/evidence/rustwasm-wee-alloc-issue-107-comments.json +docs/case-studies/issue-73/evidence/rustwasm-wee-alloc-issue-107.json +docs/case-studies/issue-75/README.md +docs/case-studies/issue-75/evidence/cargo-clippy.log +docs/case-studies/issue-75/evidence/cargo-doc-test.log +docs/case-studies/issue-75/evidence/cargo-fmt.log +docs/case-studies/issue-75/evidence/cargo-test.log +docs/case-studies/issue-75/evidence/check-file-size-rust.log +docs/case-studies/issue-75/evidence/dotnet-pack.log +docs/case-studies/issue-75/evidence/dotnet-test.log +docs/case-studies/issue-75/evidence/git-diff-check.log +docs/case-studies/issue-75/evidence/node-check-scripts.log +docs/case-studies/issue-75/evidence/npm-test-js.log +docs/case-studies/issue-75/evidence/recent-merged-prs-release-cicd.json +docs/case-studies/issue-75/evidence/recent-merged-prs-workflow.json +docs/case-studies/issue-75/evidence/recent-merged-prs.json +docs/case-studies/issue-75/evidence/recent-prs.json +docs/case-studies/issue-75/evidence/recent-releases.txt +docs/case-studies/issue-75/evidence/recent-runs-issue-branch.json +docs/case-studies/issue-75/evidence/recent-runs-main.json +docs/case-studies/issue-75/evidence/release-script-tests-after.log +docs/case-studies/issue-75/evidence/release-script-tests-before.log +docs/case-studies/issue-75/evidence/releases.json +docs/case-studies/issue-75/evidence/run-25594941803.json +docs/case-studies/issue-75/evidence/run-25594941803.log +docs/case-studies/issue-75/evidence/run-25594941825.json +docs/case-studies/issue-75/evidence/run-25594941825.log +docs/case-studies/issue-75/evidence/template-csharp-release.yml +docs/case-studies/issue-75/evidence/template-csharp-workflows.json +docs/case-studies/issue-75/evidence/template-js-release.yml +docs/case-studies/issue-75/evidence/template-js-workflows.json +docs/case-studies/issue-75/evidence/template-python-release.yml +docs/case-studies/issue-75/evidence/template-python-workflows.json +docs/case-studies/issue-75/evidence/template-rust-release.yml +docs/case-studies/issue-75/evidence/template-rust-workflows.json +docs/case-studies/issue-75/evidence/workflow-yaml-parse.log +docs/case-studies/issue-77/evidence/cargo-search-link-cli.txt +docs/case-studies/issue-77/evidence/crates-link-cli.json +docs/case-studies/issue-77/evidence/issue-77-comments.json +docs/case-studies/issue-77/evidence/issue-77.json +docs/case-studies/issue-77/evidence/link-cli-file-tree-before.txt +docs/case-studies/issue-77/evidence/npm-doublets-web.json +docs/case-studies/issue-77/evidence/npm-link-cli-web.json +docs/case-studies/issue-77/evidence/nuget-search-clink.json +docs/case-studies/issue-77/evidence/pr-78-conversation-comments.json +docs/case-studies/issue-77/evidence/pr-78-review-comments.json +docs/case-studies/issue-77/evidence/pr-78-reviews.json +docs/case-studies/issue-77/evidence/pr-78.json +docs/case-studies/issue-77/evidence/recent-runs-issue-branch.json +docs/case-studies/issue-77/evidence/recent-runs-main.json +docs/case-studies/issue-77/evidence/recent-runs-pages.json +docs/case-studies/issue-77/evidence/recent-runs-wasm.json +docs/case-studies/issue-77/evidence/release.yml +docs/case-studies/issue-77/evidence/releases.txt +docs/case-studies/issue-77/evidence/run-25245349330.json +docs/case-studies/issue-77/evidence/run-25594941803.json +docs/case-studies/issue-77/evidence/run-25728494285.json +docs/case-studies/issue-77/evidence/run-25728494305.json +docs/case-studies/issue-77/evidence/run-25728494323.json +docs/case-studies/issue-77/evidence/template-csharp-file-tree.txt +docs/case-studies/issue-77/evidence/template-js-file-tree.txt +docs/case-studies/issue-77/evidence/template-rust-file-tree.txt +docs/screenshots/issue-12/webassembly-workbench-desktop.png +docs/screenshots/issue-12/webassembly-workbench-mobile.png +examples/debug_changes.cs +examples/test1_output.txt +examples/test_issue_scenario.cs +examples/test_storable_patterns.sh +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.changeset/README.md +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.changeset/add-changesets-workflow.md +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.changeset/config.json +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.changeset/fix-ci-workflow-dependencies.md +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.changeset/fix-csharp-release-format.md +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.editorconfig +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/HEAD +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/config +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/description +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/applypatch-msg.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/commit-msg.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/fsmonitor-watchman.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/post-update.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/pre-applypatch.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/pre-commit.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/pre-merge-commit.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/pre-push.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/pre-rebase.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/pre-receive.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/prepare-commit-msg.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/push-to-checkout.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/sendemail-validate.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/hooks/update.sample +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/index +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/info/exclude +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/logs/HEAD +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/logs/refs/heads/main +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/logs/refs/remotes/origin/HEAD +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/objects/pack/pack-9932d9096b588ed4b97ea6e9d91afcb4e17df1eb.idx +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/objects/pack/pack-9932d9096b588ed4b97ea6e9d91afcb4e17df1eb.pack +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/objects/pack/pack-9932d9096b588ed4b97ea6e9d91afcb4e17df1eb.rev +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/packed-refs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/refs/heads/main +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/refs/remotes/origin/HEAD +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.git/shallow +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.github/workflows/release.yml +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.gitignore +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/.pre-commit-config.yaml +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/CHANGELOG.md +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/CONTRIBUTING.md +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/Directory.Build.props +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/LICENSE +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/MyPackage.sln +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/README.md +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/examples/BasicUsage.cs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/examples/BasicUsage.csproj +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/bump-version.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/check-file-size.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/create-github-release.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/create-github-release.test.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/detect-code-changes.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/merge-changesets.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/validate-changeset.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/scripts/version-and-commit.mjs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/src/MyPackage/Calculator.cs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/src/MyPackage/MyPackage.csproj +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/src/MyPackage/PackageInfo.cs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/tests/MyPackage.Tests/CalculatorTests.cs +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/tests/MyPackage.Tests/MyPackage.Tests.csproj +experiments/issue-77/templates/csharp-ai-driven-development-pipeline-template/tests/MyPackage.Tests/PackageInfoTests.cs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.changeset/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.changeset/config.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/HEAD +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/config +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/description +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/applypatch-msg.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/commit-msg.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/fsmonitor-watchman.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/post-update.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/pre-applypatch.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/pre-commit.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/pre-merge-commit.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/pre-push.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/pre-rebase.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/pre-receive.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/prepare-commit-msg.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/push-to-checkout.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/sendemail-validate.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/hooks/update.sample +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/index +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/info/exclude +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/logs/HEAD +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/logs/refs/heads/main +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/logs/refs/remotes/origin/HEAD +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/objects/pack/pack-5fd7d6552b1ca83032cd41538013a22c1ddfc555.idx +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/objects/pack/pack-5fd7d6552b1ca83032cd41538013a22c1ddfc555.pack +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/objects/pack/pack-5fd7d6552b1ca83032cd41538013a22c1ddfc555.rev +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/packed-refs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/refs/heads/main +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/refs/remotes/origin/HEAD +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.git/shallow +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.github/actions/publish-dockerhub/action.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.github/workflows/links.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.github/workflows/release.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.gitignore +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.husky/pre-commit +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.jscpd.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.lycheeignore +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.prettierignore +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.prettierrc +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/.secretlintrc.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/CHANGELOG.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/LICENSE +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/bunfig.toml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/deno.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/BEST-PRACTICES.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/CONTRIBUTING.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-13/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-13/hive-mind-issue-960.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-13/hive-mind-pr-961-diff.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-13/hive-mind-pr-961.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/ci-logs/run-20803315337.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/ci-logs/run-20885464993.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/issue-111-data.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/issue-113-data.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/pr-112-data.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/pr-112-diff.patch +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/pr-114-data.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-21/pr-114-diff.patch +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/hive-mind-check-version.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/hive-mind-ci.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/hive-mind-eslint.config.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/hive-mind-release.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/issue-1126-details.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/issue-1141-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/issue-1141-details.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/pr-1127-conversation-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/pr-1127-diff.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/pr-1127-review-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/pr-1142-conversation-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/pr-1142-diff.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-23/data/pr-1142-review-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-25/DETAILED-COMPARISON.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-25/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-25/data/hive-mind-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-25/data/issue-1274-case-study.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-25/data/issue-1278-case-study.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-25/data/template-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-29/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/created-issues.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/issue-data.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/original-format-release-notes.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/reference-pr-59-diff.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/reference-pr-59.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/release-v0.1.0.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/repositories-with-same-script.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-3/research-notes.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-31/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-31/web-capture-pr49-commits.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-33/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-33/ci-logs/release-24395209194.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-33/ci-logs/upstream-nodejs-62430.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-33/ci-logs/upstream-npm-cli-9151.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-33/ci-logs/upstream-runner-images-13883.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-36/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-36/ci-logs/release-24399965550.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-38/CASE-STUDY.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/CICD-COMPARISON.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/ci-run-25212337438.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/ci-runs-branch.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/downstream-web-capture-issue-98.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/downstream-web-capture-pr-99.diff +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/downstream-web-capture-pr-99.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/issue-40.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/js-cicd-files.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/js-template-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/pr-43.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/related-js-merged-prs.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/rust-cicd-files.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/rust-template-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/rust-template-head.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/shields-broken-prefixed-badge.svg +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/shields-broken-prefixed-prerelease-badge.svg +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/shields-working-normalized-badge.svg +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/data/shields-working-prerelease-badge.svg +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/rust-template/create-github-release.rs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-40/rust-template/release.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-check-file-line-limits.sh +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-issue-1593-case-study.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-issue-1593-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-issue-1593.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-issue-1730-case-study.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-issue-1730-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/hive-mind-issue-1730.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/js-template-check-file-line-limits-before.sh +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/js-template-eslint.config.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/js-template-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/js-template-issue-41-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/js-template-issue-41.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/js-template-release.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/js-template-warn-threshold-search-before.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/rust-template-check-file-size.rs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/rust-template-created-issue-url.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/rust-template-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/rust-template-issue-40.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/rust-template-issues.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/rust-template-max-lines-search.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-41/data/rust-template-release.yml +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/README.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/ci-runs-branch.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/issue-42-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/issue-42.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/js-template-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/js-template-pre-fix-head.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/link-foundation-my-package-search.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/link-foundation-package-name-search.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/pr-45-conversation-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/pr-45-review-comments.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/pr-45-reviews.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/pr-45.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/related-merged-prs-check-release-needed.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/related-merged-prs-publish-to-npm.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/rust-template-ci-cd-findings.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/rust-template-file-tree.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-42/data/rust-template-head.txt +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-7/BEST-PRACTICES-COMPARISON.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-7/FORMATTER-COMPARISON.md +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-7/current-repository-analysis.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/docs/case-studies/issue-7/effect-template-analysis.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/eslint.config.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/examples/basic-usage.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-changeset-scripts.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-check-release-needed.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-detect-changes.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-failure-detection.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-format-major-changes.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-format-minor-changes.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-format-no-hash.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/experiments/test-format-patch-changes.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/package-lock.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/package.json +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/changeset-version.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/check-changesets.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/check-docker-publish.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/check-file-line-limits.sh +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/check-mjs-syntax.sh +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/check-release-needed.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/check-version.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/check-web-archive.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/create-github-release.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/create-manual-changeset.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/detect-code-changes.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/format-github-release.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/format-release-notes-helpers.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/format-release-notes.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/instant-version-bump.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/js-paths.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/merge-changesets.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/package-info.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/publish-to-npm.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/setup-npm.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/simulate-fresh-merge.sh +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/validate-changeset.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/version-and-commit.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/scripts/wait-for-npm.mjs +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/src/index.d.ts +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/src/index.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/check-file-line-limits.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/ci-timeouts.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/create-github-release.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/docker-publish.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/index.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/package-info.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/release-badge.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/setup-npm.test.js +experiments/issue-77/templates/js-ai-driven-development-pipeline-template/tests/tag-prefix.test.js +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/HEAD +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/config +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/description +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/applypatch-msg.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/commit-msg.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/fsmonitor-watchman.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/post-update.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/pre-applypatch.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/pre-commit.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/pre-merge-commit.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/pre-push.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/pre-rebase.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/pre-receive.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/prepare-commit-msg.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/push-to-checkout.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/sendemail-validate.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/hooks/update.sample +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/index +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/info/exclude +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/logs/HEAD +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/logs/refs/heads/main +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/logs/refs/remotes/origin/HEAD +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/objects/pack/pack-989fb6972df8d28cf9a67fcbccc9c2925a1f60fe.idx +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/objects/pack/pack-989fb6972df8d28cf9a67fcbccc9c2925a1f60fe.pack +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/objects/pack/pack-989fb6972df8d28cf9a67fcbccc9c2925a1f60fe.rev +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/packed-refs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/refs/heads/main +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/refs/remotes/origin/HEAD +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/refs/tags/v0.11.0 +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.git/shallow +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.github/workflows/release.yml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.gitignore +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/.pre-commit-config.yaml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/CHANGELOG.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/CONTRIBUTING.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/Cargo.lock +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/Cargo.toml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/LICENSE +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20251227_224645_changeset_support.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20251229_143823_fix_ci_workflow_dependencies.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20251231_115800_fix_readme_script_references.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260107_apply_best_practices.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260108_171124_fix_changelog_check.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260108_171435_prevent_manual_version_modification.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260108_apply_lino_objects_codec_fixes.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260111_multi_language_support.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260119_best_practices_from_browser_commander.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260311_translate_scripts_to_rust.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260413-ci-cd-best-practices.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260413_fix_cargo_token_fallback.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260413_fix_crates_io_check.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260413_fix_lookahead_regex.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260414_fix_per_commit_diff.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260415_fix_workspace_release_scripts.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260501_decouple_docs_deploy.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260503_111500_ci_timeouts.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260503_111700_file_size_warning_threshold.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260509_031015_human_readable_release_titles.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/20260509_205000_docker_hub_release_publishing.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/changelog.d/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-11/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-11/analysis-crates-io.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-11/analysis-set-output.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-11/analysis-workflow-dispatch.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-11/online-research.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-17/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/ci-logs/ci-run-20885464993.log.gz +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/issue-113-details.txt +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/pr-commits.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/pr-conversation-comments.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/pr-details.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/pr-diff.patch +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/pr-review-comments.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/pr-reviews.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/solution-draft-log-1.txt.gz +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-19/pr-114-data/solution-draft-log-2.txt.gz +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-21/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-21/browser-commander-issue-27.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-21/browser-commander-issue-29.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-21/browser-commander-issue-31.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-21/browser-commander-issue-33.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-21/browser-commander-rust.yml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-25/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-29/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-32/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-34/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/README.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/downstream-meta-after-run-24985948212.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/downstream-meta-after-run-24985948212.log.gz +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/downstream-meta-before-run-24983875003.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/downstream-meta-before-run-24983875003.log.gz +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/downstream-meta-ontology-issue-3.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/downstream-meta-ontology-pr-4.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/issue-38-comments.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/issue-38.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/js-template-issue-search.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/main-run-24465255225.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/main-run-24465255225.log.gz +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/main-runs.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/pr-39-conversation-comments.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/pr-39-review-comments.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/pr-39-reviews.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/pr-39.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/pr-branch-runs.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/pr-run-25212295127.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/pr-run-25212295127.log.gz +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/raw-data/rust-template-issue-search.json +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/template-data/js-template-ci-tree.txt +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/template-data/js-template-links.yml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/template-data/js-template-release.yml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/template-data/rust-template-ci-tree.txt +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/template-data/rust-template-release-after.yml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/case-studies/issue-38/template-data/rust-template-release-before.yml +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/docs/ci-cd/troubleshooting.md +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/examples/basic_usage.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/experiments/test-changelog-parsing.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/experiments/test-crates-io-check.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/experiments/test-detect-code-changes.sh +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/experiments/test-version-check-dependencies.sh +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/experiments/test-version-check.sh +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/bump-version.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/check-changelog-fragment.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/check-file-size.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/check-release-needed.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/check-version-modification.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/collect-changelog.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/create-changelog-fragment.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/create-github-release.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/detect-code-changes.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/get-bump-type.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/get-version.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/git-config.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/publish-crate.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/rust-paths.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/version-and-commit.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/scripts/wait-for-crate.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/src/lib.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/src/main.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/src/sum.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/integration/mod.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/integration/sum.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/unit/ci-cd/changelog_parsing.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/unit/ci-cd/mod.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/unit/ci-cd/workflow_release.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/unit/ci-cd/workspace_manifest_resolution.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/unit/mod.rs +experiments/issue-77/templates/rust-ai-driven-development-pipeline-template/tests/unit/sum.rs +experiments/validate-wasm-workflow.mjs +package-lock.json +package.json +rust/Cargo.lock +rust/Cargo.toml +rust/changelog.d/20260430_041900_rust_query_parity.md +rust/changelog.d/20260430_063000_lino_output_export.md +rust/changelog.d/20260430_070900_named_types_decorator.md +rust/changelog.d/20260430_072128_validate_missing_references.md +rust/changelog.d/20260430_073500_pinned_types_decorator.md +rust/changelog.d/20260430_105500_named_type_query_cli.md +rust/changelog.d/20260502_061000_export_alias.md +rust/changelog.d/20260508_104000_lino_input_import.md +rust/changelog.d/20260508_105800_issue_20_substitution.md +rust/changelog.d/20260509_053805_issue_62_review_coverage.md +rust/changelog.d/README.md +rust/src/changes_simplifier.rs +rust/src/cli.rs +rust/src/error.rs +rust/src/hybrid_reference.rs +rust/src/lib.rs +rust/src/link.rs +rust/src/link_reference_validator.rs +rust/src/link_storage.rs +rust/src/lino_database_input.rs +rust/src/lino_link.rs +rust/src/main.rs +rust/src/named_links.rs +rust/src/named_type_links.rs +rust/src/named_types.rs +rust/src/parser.rs +rust/src/pinned_types.rs +rust/src/query_options.rs +rust/src/query_processor.rs +rust/src/query_processor_substitution.rs +rust/src/query_types.rs +rust/src/sequences/address_to_raw_number_converter.rs +rust/src/sequences/balanced_variant_converter.rs +rust/src/sequences/caching_converter_decorator.rs +rust/src/sequences/char_to_unicode_symbol_converter.rs +rust/src/sequences/default_stack.rs +rust/src/sequences/mod.rs +rust/src/sequences/raw_number_to_address_converter.rs +rust/src/sequences/right_sequence_walker.rs +rust/src/sequences/string_to_unicode_sequence_converter.rs +rust/src/sequences/target_matcher.rs +rust/src/sequences/unicode_sequence_to_string_converter.rs +rust/src/sequences/unicode_symbol_to_char_converter.rs +rust/src/unicode_string_storage.rs +rust/tests/changes_simplifier_tests.rs +rust/tests/cli_arguments_tests.rs +rust/tests/cli_export_tests.rs +rust/tests/cli_import_tests.rs +rust/tests/cli_named_types_tests.rs +rust/tests/dependency_basis_tests.rs +rust/tests/issue62_review_coverage_tests.rs +rust/tests/link_storage_tests.rs +rust/tests/link_tests.rs +rust/tests/lino_database_input_tests.rs +rust/tests/lino_link_tests.rs +rust/tests/named_types_decorator_tests.rs +rust/tests/parser_tests.rs +rust/tests/pinned_types_decorator_tests.rs +rust/tests/query_processor_csharp_parity_tests.rs +rust/tests/query_processor_tests.rs +rust/tests/unicode_sequence_converter_tests.rs +rust/tests/unicode_string_storage_tests.rs +scripts/bump-version.mjs +scripts/check-file-size.mjs +scripts/collect-changelog.mjs +scripts/create-github-release.mjs +scripts/detect-code-changes.mjs +scripts/get-bump-type.mjs +scripts/merge-changesets.mjs +scripts/release-scripts.test.mjs +scripts/validate-changeset.mjs +scripts/version-and-commit-csharp.mjs +scripts/version-and-commit-rust.mjs +src/lib.rs +tests/dependabot_alert_tests.rs +tests/web.rs +web/favicon.svg +web/index.html +web/src/App.jsx +web/src/linkGraph.js +web/src/main.jsx +web/src/styles.css +web/test/linkGraph.test.mjs +web/vite.config.js diff --git a/docs/case-studies/issue-77/evidence/npm-doublets-web.json b/docs/case-studies/issue-77/evidence/npm-doublets-web.json new file mode 100644 index 0000000..286d4eb --- /dev/null +++ b/docs/case-studies/issue-77/evidence/npm-doublets-web.json @@ -0,0 +1,12 @@ +{ + "name": "doublets-web", + "version": "0.1.3", + "dist-tags": { + "latest": "0.1.3" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/linksplatform/doublets-web.git" + }, + "description": "WebAssembly bindings for the LinksPlatform Doublets associative storage library." +} diff --git a/docs/case-studies/issue-77/evidence/npm-link-cli-web.json b/docs/case-studies/issue-77/evidence/npm-link-cli-web.json new file mode 100644 index 0000000..4114c65 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/npm-link-cli-web.json @@ -0,0 +1,7 @@ +{ + "error": { + "code": "E404", + "summary": "Not Found - GET https://registry.npmjs.org/link-cli-web - Not found", + "detail": "The requested resource 'link-cli-web@*' could not be found or you do not have permission to access it.\n\nNote that you can also install from a\ntarball, folder, http url, or git url." + } +} diff --git a/docs/case-studies/issue-77/evidence/nuget-search-clink.json b/docs/case-studies/issue-77/evidence/nuget-search-clink.json new file mode 100644 index 0000000..5b34b71 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/nuget-search-clink.json @@ -0,0 +1 @@ +{"@context":{"@vocab":"http://schema.nuget.org/schema#","@base":"https://api.nuget.org/v3/registration5-semver1/"},"totalHits":1,"data":[{"@id":"https://api.nuget.org/v3/registration5-semver1/clink/index.json","@type":"Package","registration":"https://api.nuget.org/v3/registration5-semver1/clink/index.json","id":"clink","version":"2.2.2","description":"A CLI tool for links manipulation.","summary":"","title":"clink","licenseUrl":"https://www.nuget.org/packages/clink/2.2.2/license","tags":[],"authors":["link-foundation"],"owners":["LinksPlatform"],"totalDownloads":101784,"verified":false,"packageTypes":[{"name":"DotnetTool"}],"versions":[{"version":"1.0.0","downloads":4183,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.0.0.json"},{"version":"1.0.1","downloads":4173,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.0.1.json"},{"version":"1.1.0","downloads":4189,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.1.0.json"},{"version":"1.2.0","downloads":4184,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.2.0.json"},{"version":"1.2.3","downloads":4188,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.2.3.json"},{"version":"1.3.0","downloads":4177,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.3.0.json"},{"version":"1.3.1","downloads":4187,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.3.1.json"},{"version":"1.4.0","downloads":4186,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.4.0.json"},{"version":"1.4.1","downloads":4180,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.4.1.json"},{"version":"1.5.0","downloads":4183,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.5.0.json"},{"version":"1.6.0","downloads":4202,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.6.0.json"},{"version":"1.7.0","downloads":4174,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.7.0.json"},{"version":"1.7.1","downloads":4171,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.7.1.json"},{"version":"1.7.3","downloads":4181,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.7.3.json"},{"version":"1.7.4","downloads":4174,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.7.4.json"},{"version":"1.8.0","downloads":4197,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/1.8.0.json"},{"version":"2.0.2","downloads":4247,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.0.2.json"},{"version":"2.1.0","downloads":4241,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.1.0.json"},{"version":"2.1.1","downloads":4248,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.1.1.json"},{"version":"2.1.2","downloads":4248,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.1.2.json"},{"version":"2.1.3","downloads":4297,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.1.3.json"},{"version":"2.2.0","downloads":4383,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.2.0.json"},{"version":"2.2.1","downloads":4349,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.2.1.json"},{"version":"2.2.2","downloads":4842,"@id":"https://api.nuget.org/v3/registration5-semver1/clink/2.2.2.json"}],"vulnerabilities":[]}]} \ No newline at end of file diff --git a/docs/case-studies/issue-77/evidence/pr-78-conversation-comments.json b/docs/case-studies/issue-77/evidence/pr-78-conversation-comments.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/pr-78-conversation-comments.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/docs/case-studies/issue-77/evidence/pr-78-review-comments.json b/docs/case-studies/issue-77/evidence/pr-78-review-comments.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/pr-78-review-comments.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/docs/case-studies/issue-77/evidence/pr-78-reviews.json b/docs/case-studies/issue-77/evidence/pr-78-reviews.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/pr-78-reviews.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/docs/case-studies/issue-77/evidence/pr-78.json b/docs/case-studies/issue-77/evidence/pr-78.json new file mode 100644 index 0000000..b38ca69 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/pr-78.json @@ -0,0 +1 @@ +{"author":{"id":"MDQ6VXNlcjE0MzE5MDQ=","is_bot":false,"login":"konard","name":"Konstantin Diachenko"},"baseRefName":"main","body":"## 🤖 AI-Powered Solution Draft\n\nThis pull request is being automatically generated to solve issue #77.\n\n### 📋 Issue Reference\nFixes #77\n\n### 🚧 Status\n**Work in Progress** - The AI assistant is currently analyzing and implementing the solution draft.\n\n### 📝 Implementation Details\n_Details will be added as the solution draft is developed..._\n\n---\n*This PR was created automatically by the AI issue solver*","comments":[],"createdAt":"2026-05-12T11:07:13Z","headRefName":"issue-77-388911d8eea6","headRefOid":"f9efafc58a92387ac62640f2ee11f08ce7fb03c0","isDraft":true,"mergeStateStatus":"CLEAN","number":78,"reviewDecision":"","state":"OPEN","statusCheckRollup":[],"title":"[WIP] Fixes and improvements","updatedAt":"2026-05-12T11:07:14Z","url":"https://github.com/link-foundation/link-cli/pull/78"} diff --git a/docs/case-studies/issue-77/evidence/recent-runs-issue-branch.json b/docs/case-studies/issue-77/evidence/recent-runs-issue-branch.json new file mode 100644 index 0000000..fe51488 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/recent-runs-issue-branch.json @@ -0,0 +1 @@ +[] diff --git a/docs/case-studies/issue-77/evidence/recent-runs-main.json b/docs/case-studies/issue-77/evidence/recent-runs-main.json new file mode 100644 index 0000000..92ef998 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/recent-runs-main.json @@ -0,0 +1 @@ +[{"conclusion":"success","createdAt":"2026-05-12T10:24:34Z","databaseId":25728494323,"headSha":"d9309c5d34124229675900119a8da1f30b7fe042","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25728494323","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-12T10:24:34Z","databaseId":25728494305,"headSha":"d9309c5d34124229675900119a8da1f30b7fe042","name":"Rust CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305","workflowName":"Rust CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-12T10:24:34Z","databaseId":25728494285,"headSha":"d9309c5d34124229675900119a8da1f30b7fe042","name":"C# CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285","workflowName":"C# CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-09T07:08:11Z","databaseId":25594941811,"headSha":"70a959516ae64dd5878b72f5cb6af961a765aedc","name":"CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25594941811","workflowName":"CI"},{"conclusion":"success","createdAt":"2026-05-09T07:08:11Z","databaseId":25594941825,"headSha":"70a959516ae64dd5878b72f5cb6af961a765aedc","name":"Rust CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25594941825","workflowName":"Rust CI/CD Pipeline"},{"conclusion":"failure","createdAt":"2026-05-09T07:08:11Z","databaseId":25594941803,"headSha":"70a959516ae64dd5878b72f5cb6af961a765aedc","name":"C# CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803","workflowName":"C# CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-09T07:08:10Z","databaseId":25594941795,"headSha":"70a959516ae64dd5878b72f5cb6af961a765aedc","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25594941795","workflowName":"WebAssembly CI"},{"conclusion":"cancelled","createdAt":"2026-05-09T07:06:16Z","databaseId":25594903641,"headSha":"9269c28e0f51d5ce5ade88d884a358c5227ccf01","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25594903641","workflowName":"WebAssembly CI"},{"conclusion":"failure","createdAt":"2026-05-08T13:49:44Z","databaseId":25559263605,"headSha":"b5e1f0f944f205ccd8c9207ecd2c5b1b5e5bc27b","name":"C# CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25559263605","workflowName":"C# CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-08T12:30:31Z","databaseId":25555638226,"headSha":"79135acbf7352b76d02826501d11453717d6ac44","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555638226","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T12:30:31Z","databaseId":25555638233,"headSha":"79135acbf7352b76d02826501d11453717d6ac44","name":"Rust CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555638233","workflowName":"Rust CI/CD Pipeline"},{"conclusion":"failure","createdAt":"2026-05-08T12:30:31Z","databaseId":25555638241,"headSha":"79135acbf7352b76d02826501d11453717d6ac44","name":"C# CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555638241","workflowName":"C# CI/CD Pipeline"},{"conclusion":"cancelled","createdAt":"2026-05-08T12:29:30Z","databaseId":25555594182,"headSha":"895750dc8851edc9999c888c217beb5b5321d519","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555594182","workflowName":"WebAssembly CI"},{"conclusion":"cancelled","createdAt":"2026-05-08T12:29:30Z","databaseId":25555594206,"headSha":"895750dc8851edc9999c888c217beb5b5321d519","name":"Rust CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555594206","workflowName":"Rust CI/CD Pipeline"},{"conclusion":"cancelled","createdAt":"2026-05-08T12:29:30Z","databaseId":25555594181,"headSha":"895750dc8851edc9999c888c217beb5b5321d519","name":"C# CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555594181","workflowName":"C# CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-08T10:19:08Z","databaseId":25550223694,"headSha":"0f54b1d61261f3c6f1f606ff3004fa7609ec17c7","name":"Rust CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25550223694","workflowName":"Rust CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-08T10:19:08Z","databaseId":25550223679,"headSha":"0f54b1d61261f3c6f1f606ff3004fa7609ec17c7","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25550223679","workflowName":"WebAssembly CI"},{"conclusion":"failure","createdAt":"2026-05-08T10:19:08Z","databaseId":25550223650,"headSha":"0f54b1d61261f3c6f1f606ff3004fa7609ec17c7","name":"C# CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25550223650","workflowName":"C# CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-03T20:23:53Z","databaseId":25289873724,"headSha":"2c6f585811ba3a77e86f2d77ef4e167ccff355fb","name":"Rust CI/CD Pipeline","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25289873724","workflowName":"Rust CI/CD Pipeline"},{"conclusion":"success","createdAt":"2026-05-03T20:23:53Z","databaseId":25289873725,"headSha":"2c6f585811ba3a77e86f2d77ef4e167ccff355fb","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25289873725","workflowName":"WebAssembly CI"}] diff --git a/docs/case-studies/issue-77/evidence/recent-runs-pages.json b/docs/case-studies/issue-77/evidence/recent-runs-pages.json new file mode 100644 index 0000000..e69de29 diff --git a/docs/case-studies/issue-77/evidence/recent-runs-wasm.json b/docs/case-studies/issue-77/evidence/recent-runs-wasm.json new file mode 100644 index 0000000..f1755c0 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/recent-runs-wasm.json @@ -0,0 +1 @@ +[{"conclusion":"success","createdAt":"2026-05-12T10:24:34Z","databaseId":25728494323,"event":"push","headSha":"d9309c5d34124229675900119a8da1f30b7fe042","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25728494323","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-12T10:17:18Z","databaseId":25728160457,"event":"pull_request","headSha":"36cc8908c95a8551fdb05995b13423c80833d2a3","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25728160457","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-12T10:17:16Z","databaseId":25728158574,"event":"push","headSha":"36cc8908c95a8551fdb05995b13423c80833d2a3","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25728158574","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-09T07:08:10Z","databaseId":25594941795,"event":"push","headSha":"70a959516ae64dd5878b72f5cb6af961a765aedc","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25594941795","workflowName":"WebAssembly CI"},{"conclusion":"cancelled","createdAt":"2026-05-09T07:06:16Z","databaseId":25594903641,"event":"push","headSha":"9269c28e0f51d5ce5ade88d884a358c5227ccf01","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25594903641","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-09T05:46:02Z","databaseId":25593269666,"event":"pull_request","headSha":"91457aa844dcdf0420ed05af3c3fdd60ee5bc85b","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25593269666","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-09T05:43:45Z","databaseId":25593222698,"event":"pull_request","headSha":"5735f3b0bfeab9be77f7d0cabb79840298f27b10","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25593222698","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-09T05:38:27Z","databaseId":25593113240,"event":"pull_request","headSha":"b68a6aed2313b06461def5f17b7b70bad0068e21","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25593113240","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-09T05:38:26Z","databaseId":25593112800,"event":"push","headSha":"b68a6aed2313b06461def5f17b7b70bad0068e21","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25593112800","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T13:39:08Z","databaseId":25558751448,"event":"push","headSha":"fb13256b150592bf12fad6a9247e1de5ac60717a","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25558751448","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T12:30:31Z","databaseId":25555638226,"event":"push","headSha":"79135acbf7352b76d02826501d11453717d6ac44","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555638226","workflowName":"WebAssembly CI"},{"conclusion":"cancelled","createdAt":"2026-05-08T12:29:30Z","databaseId":25555594182,"event":"push","headSha":"895750dc8851edc9999c888c217beb5b5321d519","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25555594182","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T11:17:23Z","databaseId":25552636581,"event":"pull_request","headSha":"f3c7b7ea5c870ecc15cce46fcd111f88f441dcde","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25552636581","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T11:17:21Z","databaseId":25552635354,"event":"push","headSha":"f3c7b7ea5c870ecc15cce46fcd111f88f441dcde","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25552635354","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T11:11:42Z","databaseId":25552409113,"event":"pull_request","headSha":"496bf759c20068b8f838b80a8b60aa951b30b527","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25552409113","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T11:11:41Z","databaseId":25552408228,"event":"push","headSha":"496bf759c20068b8f838b80a8b60aa951b30b527","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25552408228","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T10:58:38Z","databaseId":25551880333,"event":"pull_request","headSha":"51d2055844b916116e23094b2e4a74024d599949","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25551880333","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T10:58:37Z","databaseId":25551879748,"event":"push","headSha":"51d2055844b916116e23094b2e4a74024d599949","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25551879748","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T10:19:08Z","databaseId":25550223679,"event":"push","headSha":"0f54b1d61261f3c6f1f606ff3004fa7609ec17c7","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25550223679","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T06:26:05Z","databaseId":25540635494,"event":"pull_request","headSha":"00d4b6c68a6adad0cb0214e9604f754b19d88e61","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25540635494","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-08T06:26:05Z","databaseId":25540635097,"event":"push","headSha":"00d4b6c68a6adad0cb0214e9604f754b19d88e61","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25540635097","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-03T20:23:53Z","databaseId":25289873725,"event":"push","headSha":"2c6f585811ba3a77e86f2d77ef4e167ccff355fb","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25289873725","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-02T22:48:21Z","databaseId":25263817157,"event":"push","headSha":"dfb09ed407379150bd44e69b3418f6e6cf4b4222","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25263817157","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-02T10:39:55Z","databaseId":25250079684,"event":"pull_request","headSha":"bc6a0f46a1505c05b0394654ddc790d7c84164df","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25250079684","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-02T10:34:46Z","databaseId":25249996696,"event":"pull_request","headSha":"cb9a15b178c6823e43c98db4d8d35276a600971f","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25249996696","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-02T10:32:09Z","databaseId":25249954818,"event":"pull_request","headSha":"fb2298021fc5fae82c40cb22d98736b4213e50be","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25249954818","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-02T10:32:07Z","databaseId":25249954218,"event":"push","headSha":"fb2298021fc5fae82c40cb22d98736b4213e50be","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25249954218","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-02T06:11:52Z","databaseId":25245529311,"event":"pull_request","headSha":"f4db21ed3af307b752330e05ebf54d21a2e6f4c1","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25245529311","workflowName":"WebAssembly CI"},{"conclusion":"success","createdAt":"2026-05-02T06:11:50Z","databaseId":25245528704,"event":"push","headSha":"f4db21ed3af307b752330e05ebf54d21a2e6f4c1","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25245528704","workflowName":"WebAssembly CI"},{"conclusion":"failure","createdAt":"2026-05-02T06:01:29Z","databaseId":25245349330,"event":"push","headSha":"26050750382b801a4d9f33d1445627e2db2b7867","name":"WebAssembly CI","status":"completed","url":"https://github.com/link-foundation/link-cli/actions/runs/25245349330","workflowName":"WebAssembly CI"}] diff --git a/docs/case-studies/issue-77/evidence/releases.txt b/docs/case-studies/issue-77/evidence/releases.txt new file mode 100644 index 0000000..e9fcbf1 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/releases.txt @@ -0,0 +1,11 @@ +Rust v0.1.0 Latest rust-v0.1.0 2026-05-12T10:27:08Z +v2.4.0 v2.4.0 2026-05-12T09:50:13Z +v2.2.2 v2.2.2 2025-06-13T00:37:16Z +v2.1.3 v2.1.3 2025-05-16T00:08:20Z +v2.1.2 v2.1.2 2025-04-06T16:54:17Z +v1.8.0 v1.8.0 2024-12-21T17:19:35Z +v1.7.0 v1.7.0 2024-12-21T00:21:48Z +v1.6.0 v1.6.0 2024-12-15T18:11:46Z +v1.4.0 v1.4.0 2024-12-15T01:50:52Z +v1.2.3 v1.2.3 2024-12-07T18:55:36Z +1.0.1 1.0.1 2024-12-05T07:54:30Z diff --git a/docs/case-studies/issue-77/evidence/run-25245349330.json b/docs/case-studies/issue-77/evidence/run-25245349330.json new file mode 100644 index 0000000..6add657 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/run-25245349330.json @@ -0,0 +1 @@ +{"conclusion":"failure","createdAt":"2026-05-02T06:01:29Z","databaseId":25245349330,"event":"push","headSha":"26050750382b801a4d9f33d1445627e2db2b7867","jobs":[{"completedAt":"2026-05-02T06:04:27Z","conclusion":"success","databaseId":74028583022,"name":"Test","startedAt":"2026-05-02T06:01:32Z","status":"completed","steps":[{"completedAt":"2026-05-02T06:01:35Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-02T06:01:33Z","status":"completed"},{"completedAt":"2026-05-02T06:01:35Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-02T06:01:35Z","status":"completed"},{"completedAt":"2026-05-02T06:01:46Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-02T06:01:35Z","status":"completed"},{"completedAt":"2026-05-02T06:03:01Z","conclusion":"success","name":"Install wasm-pack","number":4,"startedAt":"2026-05-02T06:01:46Z","status":"completed"},{"completedAt":"2026-05-02T06:03:02Z","conclusion":"success","name":"Setup Node.js","number":5,"startedAt":"2026-05-02T06:03:01Z","status":"completed"},{"completedAt":"2026-05-02T06:03:09Z","conclusion":"success","name":"Cache cargo registry","number":6,"startedAt":"2026-05-02T06:03:02Z","status":"completed"},{"completedAt":"2026-05-02T06:03:12Z","conclusion":"success","name":"Install npm dependencies","number":7,"startedAt":"2026-05-02T06:03:09Z","status":"completed"},{"completedAt":"2026-05-02T06:03:22Z","conclusion":"success","name":"Test Rust CLI core","number":8,"startedAt":"2026-05-02T06:03:12Z","status":"completed"},{"completedAt":"2026-05-02T06:03:46Z","conclusion":"success","name":"Test WebAssembly wrapper","number":9,"startedAt":"2026-05-02T06:03:22Z","status":"completed"},{"completedAt":"2026-05-02T06:04:11Z","conclusion":"success","name":"Build React WebAssembly app","number":10,"startedAt":"2026-05-02T06:03:46Z","status":"completed"},{"completedAt":"2026-05-02T06:04:12Z","conclusion":"success","name":"Upload built app","number":11,"startedAt":"2026-05-02T06:04:11Z","status":"completed"},{"completedAt":"2026-05-02T06:04:22Z","conclusion":"success","name":"Post Cache cargo registry","number":20,"startedAt":"2026-05-02T06:04:12Z","status":"completed"},{"completedAt":"2026-05-02T06:04:24Z","conclusion":"success","name":"Post Setup Node.js","number":21,"startedAt":"2026-05-02T06:04:22Z","status":"completed"},{"completedAt":"2026-05-02T06:04:24Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":22,"startedAt":"2026-05-02T06:04:24Z","status":"completed"},{"completedAt":"2026-05-02T06:04:24Z","conclusion":"success","name":"Complete job","number":23,"startedAt":"2026-05-02T06:04:24Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25245349330/job/74028583022"},{"completedAt":"2026-05-02T06:06:31Z","conclusion":"failure","databaseId":74028721474,"name":"Deploy GitHub Pages","startedAt":"2026-05-02T06:04:29Z","status":"completed","steps":[{"completedAt":"2026-05-02T06:04:34Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-02T06:04:30Z","status":"completed"},{"completedAt":"2026-05-02T06:04:35Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-02T06:04:34Z","status":"completed"},{"completedAt":"2026-05-02T06:04:46Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-02T06:04:35Z","status":"completed"},{"completedAt":"2026-05-02T06:05:57Z","conclusion":"success","name":"Install wasm-pack","number":4,"startedAt":"2026-05-02T06:04:46Z","status":"completed"},{"completedAt":"2026-05-02T06:06:00Z","conclusion":"success","name":"Setup Node.js","number":5,"startedAt":"2026-05-02T06:05:57Z","status":"completed"},{"completedAt":"2026-05-02T06:06:01Z","conclusion":"success","name":"Install npm dependencies","number":6,"startedAt":"2026-05-02T06:06:00Z","status":"completed"},{"completedAt":"2026-05-02T06:06:28Z","conclusion":"success","name":"Build GitHub Pages app","number":7,"startedAt":"2026-05-02T06:06:01Z","status":"completed"},{"completedAt":"2026-05-02T06:06:29Z","conclusion":"failure","name":"Configure Pages","number":8,"startedAt":"2026-05-02T06:06:28Z","status":"completed"},{"completedAt":"2026-05-02T06:06:29Z","conclusion":"skipped","name":"Upload Pages artifact","number":9,"startedAt":"2026-05-02T06:06:29Z","status":"completed"},{"completedAt":"2026-05-02T06:06:29Z","conclusion":"skipped","name":"Deploy to GitHub Pages","number":10,"startedAt":"2026-05-02T06:06:29Z","status":"completed"},{"completedAt":"2026-05-02T06:06:29Z","conclusion":"skipped","name":"Post Setup Node.js","number":19,"startedAt":"2026-05-02T06:06:29Z","status":"completed"},{"completedAt":"2026-05-02T06:06:29Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":20,"startedAt":"2026-05-02T06:06:29Z","status":"completed"},{"completedAt":"2026-05-02T06:06:29Z","conclusion":"success","name":"Complete job","number":21,"startedAt":"2026-05-02T06:06:29Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25245349330/job/74028721474"}],"name":"WebAssembly CI","status":"completed","updatedAt":"2026-05-02T06:06:32Z","url":"https://github.com/link-foundation/link-cli/actions/runs/25245349330"} diff --git a/docs/case-studies/issue-77/evidence/run-25594941803.json b/docs/case-studies/issue-77/evidence/run-25594941803.json new file mode 100644 index 0000000..8bb19f5 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/run-25594941803.json @@ -0,0 +1 @@ +{"conclusion":"failure","createdAt":"2026-05-09T07:08:11Z","databaseId":25594941803,"event":"push","headSha":"70a959516ae64dd5878b72f5cb6af961a765aedc","jobs":[{"completedAt":"2026-05-09T07:08:26Z","conclusion":"success","databaseId":75139166186,"name":"Detect Changes","startedAt":"2026-05-09T07:08:19Z","status":"completed","steps":[{"completedAt":"2026-05-09T07:08:21Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-09T07:08:20Z","status":"completed"},{"completedAt":"2026-05-09T07:08:22Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-09T07:08:21Z","status":"completed"},{"completedAt":"2026-05-09T07:08:25Z","conclusion":"success","name":"Setup Node.js","number":3,"startedAt":"2026-05-09T07:08:22Z","status":"completed"},{"completedAt":"2026-05-09T07:08:25Z","conclusion":"success","name":"Detect changes","number":4,"startedAt":"2026-05-09T07:08:25Z","status":"completed"},{"completedAt":"2026-05-09T07:08:25Z","conclusion":"success","name":"Post Setup Node.js","number":7,"startedAt":"2026-05-09T07:08:25Z","status":"completed"},{"completedAt":"2026-05-09T07:08:25Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":8,"startedAt":"2026-05-09T07:08:25Z","status":"completed"},{"completedAt":"2026-05-09T07:08:25Z","conclusion":"success","name":"Complete job","number":9,"startedAt":"2026-05-09T07:08:25Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139166186"},{"completedAt":"2026-05-09T07:09:05Z","conclusion":"success","databaseId":75139179922,"name":"Lint and Format Check","startedAt":"2026-05-09T07:08:35Z","status":"completed","steps":[{"completedAt":"2026-05-09T07:08:37Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-09T07:08:36Z","status":"completed"},{"completedAt":"2026-05-09T07:08:38Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-09T07:08:37Z","status":"completed"},{"completedAt":"2026-05-09T07:08:48Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-09T07:08:38Z","status":"completed"},{"completedAt":"2026-05-09T07:08:55Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-09T07:08:48Z","status":"completed"},{"completedAt":"2026-05-09T07:09:03Z","conclusion":"success","name":"Build","number":5,"startedAt":"2026-05-09T07:08:55Z","status":"completed"},{"completedAt":"2026-05-09T07:09:03Z","conclusion":"success","name":"Post Setup .NET","number":9,"startedAt":"2026-05-09T07:09:03Z","status":"completed"},{"completedAt":"2026-05-09T07:09:03Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":10,"startedAt":"2026-05-09T07:09:03Z","status":"completed"},{"completedAt":"2026-05-09T07:09:03Z","conclusion":"success","name":"Complete job","number":11,"startedAt":"2026-05-09T07:09:03Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139179922"},{"completedAt":"2026-05-09T07:08:27Z","conclusion":"skipped","databaseId":75139180000,"name":"Changeset Validation","startedAt":"2026-05-09T07:08:27Z","status":"completed","steps":[],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139180000"},{"completedAt":"2026-05-09T07:09:02Z","conclusion":"success","databaseId":75139180022,"name":"Test (macos-latest)","startedAt":"2026-05-09T07:08:28Z","status":"completed","steps":[{"completedAt":"2026-05-09T07:08:31Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-09T07:08:29Z","status":"completed"},{"completedAt":"2026-05-09T07:08:33Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-09T07:08:31Z","status":"completed"},{"completedAt":"2026-05-09T07:08:35Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-09T07:08:33Z","status":"completed"},{"completedAt":"2026-05-09T07:08:42Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-09T07:08:35Z","status":"completed"},{"completedAt":"2026-05-09T07:08:45Z","conclusion":"success","name":"Build","number":5,"startedAt":"2026-05-09T07:08:42Z","status":"completed"},{"completedAt":"2026-05-09T07:08:59Z","conclusion":"success","name":"Run tests","number":6,"startedAt":"2026-05-09T07:08:45Z","status":"completed"},{"completedAt":"2026-05-09T07:08:59Z","conclusion":"skipped","name":"Upload coverage to Codecov","number":7,"startedAt":"2026-05-09T07:08:59Z","status":"completed"},{"completedAt":"2026-05-09T07:08:59Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-09T07:08:59Z","status":"completed"},{"completedAt":"2026-05-09T07:09:00Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-09T07:08:59Z","status":"completed"},{"completedAt":"2026-05-09T07:09:00Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-09T07:09:00Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139180022"},{"completedAt":"2026-05-09T07:09:27Z","conclusion":"success","databaseId":75139180033,"name":"Test (ubuntu-latest)","startedAt":"2026-05-09T07:08:29Z","status":"completed","steps":[{"completedAt":"2026-05-09T07:08:32Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-09T07:08:30Z","status":"completed"},{"completedAt":"2026-05-09T07:08:34Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-09T07:08:32Z","status":"completed"},{"completedAt":"2026-05-09T07:08:41Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-09T07:08:34Z","status":"completed"},{"completedAt":"2026-05-09T07:08:50Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-09T07:08:41Z","status":"completed"},{"completedAt":"2026-05-09T07:08:58Z","conclusion":"success","name":"Build","number":5,"startedAt":"2026-05-09T07:08:50Z","status":"completed"},{"completedAt":"2026-05-09T07:09:21Z","conclusion":"success","name":"Run tests","number":6,"startedAt":"2026-05-09T07:08:58Z","status":"completed"},{"completedAt":"2026-05-09T07:09:24Z","conclusion":"success","name":"Upload coverage to Codecov","number":7,"startedAt":"2026-05-09T07:09:21Z","status":"completed"},{"completedAt":"2026-05-09T07:09:25Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-09T07:09:24Z","status":"completed"},{"completedAt":"2026-05-09T07:09:25Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-09T07:09:25Z","status":"completed"},{"completedAt":"2026-05-09T07:09:25Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-09T07:09:25Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139180033"},{"completedAt":"2026-05-09T07:10:16Z","conclusion":"success","databaseId":75139180036,"name":"Test (windows-latest)","startedAt":"2026-05-09T07:08:29Z","status":"completed","steps":[{"completedAt":"2026-05-09T07:08:30Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-09T07:08:29Z","status":"completed"},{"completedAt":"2026-05-09T07:08:35Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-09T07:08:30Z","status":"completed"},{"completedAt":"2026-05-09T07:08:49Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-09T07:08:35Z","status":"completed"},{"completedAt":"2026-05-09T07:09:22Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-09T07:08:49Z","status":"completed"},{"completedAt":"2026-05-09T07:09:38Z","conclusion":"success","name":"Build","number":5,"startedAt":"2026-05-09T07:09:22Z","status":"completed"},{"completedAt":"2026-05-09T07:10:13Z","conclusion":"success","name":"Run tests","number":6,"startedAt":"2026-05-09T07:09:38Z","status":"completed"},{"completedAt":"2026-05-09T07:10:13Z","conclusion":"skipped","name":"Upload coverage to Codecov","number":7,"startedAt":"2026-05-09T07:10:13Z","status":"completed"},{"completedAt":"2026-05-09T07:10:13Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-09T07:10:13Z","status":"completed"},{"completedAt":"2026-05-09T07:10:15Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-09T07:10:13Z","status":"completed"},{"completedAt":"2026-05-09T07:10:15Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-09T07:10:15Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139180036"},{"completedAt":"2026-05-09T07:10:54Z","conclusion":"success","databaseId":75139267974,"name":"Build Package","startedAt":"2026-05-09T07:10:25Z","status":"completed","steps":[{"completedAt":"2026-05-09T07:10:27Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-09T07:10:25Z","status":"completed"},{"completedAt":"2026-05-09T07:10:28Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-09T07:10:27Z","status":"completed"},{"completedAt":"2026-05-09T07:10:36Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-09T07:10:28Z","status":"completed"},{"completedAt":"2026-05-09T07:10:42Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-09T07:10:36Z","status":"completed"},{"completedAt":"2026-05-09T07:10:49Z","conclusion":"success","name":"Build Release","number":5,"startedAt":"2026-05-09T07:10:42Z","status":"completed"},{"completedAt":"2026-05-09T07:10:50Z","conclusion":"success","name":"Pack NuGet package","number":6,"startedAt":"2026-05-09T07:10:49Z","status":"completed"},{"completedAt":"2026-05-09T07:10:52Z","conclusion":"success","name":"Upload artifacts","number":7,"startedAt":"2026-05-09T07:10:50Z","status":"completed"},{"completedAt":"2026-05-09T07:10:52Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-09T07:10:52Z","status":"completed"},{"completedAt":"2026-05-09T07:10:52Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-09T07:10:52Z","status":"completed"},{"completedAt":"2026-05-09T07:10:52Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-09T07:10:52Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139267974"},{"completedAt":"2026-05-09T07:11:18Z","conclusion":"failure","databaseId":75139300629,"name":"Release","startedAt":"2026-05-09T07:11:03Z","status":"completed","steps":[{"completedAt":"2026-05-09T07:11:05Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-09T07:11:03Z","status":"completed"},{"completedAt":"2026-05-09T07:11:06Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-09T07:11:05Z","status":"completed"},{"completedAt":"2026-05-09T07:11:13Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-09T07:11:06Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"success","name":"Setup Node.js","number":4,"startedAt":"2026-05-09T07:11:13Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"success","name":"Check for changesets","number":5,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"failure","name":"Merge multiple changesets","number":6,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"skipped","name":"Version and commit","number":7,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"skipped","name":"Download artifacts","number":8,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"skipped","name":"Publish to NuGet","number":9,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"skipped","name":"Create GitHub Release","number":10,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"skipped","name":"Post Setup Node.js","number":18,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"skipped","name":"Post Setup .NET","number":19,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":20,"startedAt":"2026-05-09T07:11:16Z","status":"completed"},{"completedAt":"2026-05-09T07:11:16Z","conclusion":"success","name":"Complete job","number":21,"startedAt":"2026-05-09T07:11:16Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139300629"},{"completedAt":"2026-05-09T07:10:54Z","conclusion":"skipped","databaseId":75139300782,"name":"Instant Release","startedAt":"2026-05-09T07:10:55Z","status":"completed","steps":[],"url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803/job/75139300782"}],"name":"C# CI/CD Pipeline","status":"completed","updatedAt":"2026-05-09T07:11:19Z","url":"https://github.com/link-foundation/link-cli/actions/runs/25594941803"} diff --git a/docs/case-studies/issue-77/evidence/run-25728494285.json b/docs/case-studies/issue-77/evidence/run-25728494285.json new file mode 100644 index 0000000..cded09e --- /dev/null +++ b/docs/case-studies/issue-77/evidence/run-25728494285.json @@ -0,0 +1 @@ +{"conclusion":"success","createdAt":"2026-05-12T10:24:34Z","databaseId":25728494285,"event":"push","headSha":"d9309c5d34124229675900119a8da1f30b7fe042","jobs":[{"completedAt":"2026-05-12T10:24:46Z","conclusion":"success","databaseId":75547358971,"name":"Detect Changes","startedAt":"2026-05-12T10:24:37Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:38Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:38Z","status":"completed"},{"completedAt":"2026-05-12T10:24:40Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:38Z","status":"completed"},{"completedAt":"2026-05-12T10:24:43Z","conclusion":"success","name":"Setup Node.js","number":3,"startedAt":"2026-05-12T10:24:40Z","status":"completed"},{"completedAt":"2026-05-12T10:24:43Z","conclusion":"success","name":"Detect changes","number":4,"startedAt":"2026-05-12T10:24:43Z","status":"completed"},{"completedAt":"2026-05-12T10:24:43Z","conclusion":"success","name":"Post Setup Node.js","number":7,"startedAt":"2026-05-12T10:24:43Z","status":"completed"},{"completedAt":"2026-05-12T10:24:43Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":8,"startedAt":"2026-05-12T10:24:43Z","status":"completed"},{"completedAt":"2026-05-12T10:24:43Z","conclusion":"success","name":"Complete job","number":9,"startedAt":"2026-05-12T10:24:43Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547358971"},{"completedAt":"2026-05-12T10:25:25Z","conclusion":"success","databaseId":75547388738,"name":"Lint and Format Check","startedAt":"2026-05-12T10:24:54Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:56Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:55Z","status":"completed"},{"completedAt":"2026-05-12T10:24:57Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:56Z","status":"completed"},{"completedAt":"2026-05-12T10:25:05Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-12T10:24:57Z","status":"completed"},{"completedAt":"2026-05-12T10:25:08Z","conclusion":"success","name":"Setup Node.js","number":4,"startedAt":"2026-05-12T10:25:05Z","status":"completed"},{"completedAt":"2026-05-12T10:25:09Z","conclusion":"success","name":"Run release script tests","number":5,"startedAt":"2026-05-12T10:25:08Z","status":"completed"},{"completedAt":"2026-05-12T10:25:17Z","conclusion":"success","name":"Restore dependencies","number":6,"startedAt":"2026-05-12T10:25:09Z","status":"completed"},{"completedAt":"2026-05-12T10:25:24Z","conclusion":"success","name":"Build","number":7,"startedAt":"2026-05-12T10:25:17Z","status":"completed"},{"completedAt":"2026-05-12T10:25:24Z","conclusion":"success","name":"Post Setup Node.js","number":12,"startedAt":"2026-05-12T10:25:24Z","status":"completed"},{"completedAt":"2026-05-12T10:25:24Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-12T10:25:24Z","status":"completed"},{"completedAt":"2026-05-12T10:25:24Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-12T10:25:24Z","status":"completed"},{"completedAt":"2026-05-12T10:25:24Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-12T10:25:24Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547388738"},{"completedAt":"2026-05-12T10:26:33Z","conclusion":"success","databaseId":75547389134,"name":"Test (windows-latest)","startedAt":"2026-05-12T10:24:50Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:56Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:53Z","status":"completed"},{"completedAt":"2026-05-12T10:25:03Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:56Z","status":"completed"},{"completedAt":"2026-05-12T10:25:15Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-12T10:25:03Z","status":"completed"},{"completedAt":"2026-05-12T10:25:46Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-12T10:25:15Z","status":"completed"},{"completedAt":"2026-05-12T10:25:58Z","conclusion":"success","name":"Build","number":5,"startedAt":"2026-05-12T10:25:46Z","status":"completed"},{"completedAt":"2026-05-12T10:26:29Z","conclusion":"success","name":"Run tests","number":6,"startedAt":"2026-05-12T10:25:58Z","status":"completed"},{"completedAt":"2026-05-12T10:26:29Z","conclusion":"skipped","name":"Upload coverage to Codecov","number":7,"startedAt":"2026-05-12T10:26:29Z","status":"completed"},{"completedAt":"2026-05-12T10:26:29Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-12T10:26:29Z","status":"completed"},{"completedAt":"2026-05-12T10:26:31Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-12T10:26:29Z","status":"completed"},{"completedAt":"2026-05-12T10:26:31Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-12T10:26:31Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547389134"},{"completedAt":"2026-05-12T10:25:45Z","conclusion":"success","databaseId":75547389201,"name":"Test (ubuntu-latest)","startedAt":"2026-05-12T10:24:49Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:52Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:50Z","status":"completed"},{"completedAt":"2026-05-12T10:24:54Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:52Z","status":"completed"},{"completedAt":"2026-05-12T10:25:03Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-12T10:24:54Z","status":"completed"},{"completedAt":"2026-05-12T10:25:09Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-12T10:25:03Z","status":"completed"},{"completedAt":"2026-05-12T10:25:16Z","conclusion":"success","name":"Build","number":5,"startedAt":"2026-05-12T10:25:09Z","status":"completed"},{"completedAt":"2026-05-12T10:25:39Z","conclusion":"success","name":"Run tests","number":6,"startedAt":"2026-05-12T10:25:16Z","status":"completed"},{"completedAt":"2026-05-12T10:25:42Z","conclusion":"success","name":"Upload coverage to Codecov","number":7,"startedAt":"2026-05-12T10:25:39Z","status":"completed"},{"completedAt":"2026-05-12T10:25:42Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-12T10:25:42Z","status":"completed"},{"completedAt":"2026-05-12T10:25:43Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-12T10:25:42Z","status":"completed"},{"completedAt":"2026-05-12T10:25:43Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-12T10:25:43Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547389201"},{"completedAt":"2026-05-12T10:25:34Z","conclusion":"success","databaseId":75547389209,"name":"Test (macos-latest)","startedAt":"2026-05-12T10:24:50Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:53Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:50Z","status":"completed"},{"completedAt":"2026-05-12T10:24:55Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:53Z","status":"completed"},{"completedAt":"2026-05-12T10:24:56Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-12T10:24:55Z","status":"completed"},{"completedAt":"2026-05-12T10:25:03Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-12T10:24:56Z","status":"completed"},{"completedAt":"2026-05-12T10:25:09Z","conclusion":"success","name":"Build","number":5,"startedAt":"2026-05-12T10:25:03Z","status":"completed"},{"completedAt":"2026-05-12T10:25:30Z","conclusion":"success","name":"Run tests","number":6,"startedAt":"2026-05-12T10:25:09Z","status":"completed"},{"completedAt":"2026-05-12T10:25:30Z","conclusion":"skipped","name":"Upload coverage to Codecov","number":7,"startedAt":"2026-05-12T10:25:30Z","status":"completed"},{"completedAt":"2026-05-12T10:25:30Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-12T10:25:30Z","status":"completed"},{"completedAt":"2026-05-12T10:25:31Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-12T10:25:30Z","status":"completed"},{"completedAt":"2026-05-12T10:25:32Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-12T10:25:31Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547389209"},{"completedAt":"2026-05-12T10:24:46Z","conclusion":"skipped","databaseId":75547389273,"name":"Changeset Validation","startedAt":"2026-05-12T10:24:46Z","status":"completed","steps":[],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547389273"},{"completedAt":"2026-05-12T10:27:08Z","conclusion":"success","databaseId":75547658570,"name":"Build Package","startedAt":"2026-05-12T10:26:41Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:26:43Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:26:42Z","status":"completed"},{"completedAt":"2026-05-12T10:26:44Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:26:43Z","status":"completed"},{"completedAt":"2026-05-12T10:26:52Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-12T10:26:44Z","status":"completed"},{"completedAt":"2026-05-12T10:26:57Z","conclusion":"success","name":"Restore dependencies","number":4,"startedAt":"2026-05-12T10:26:52Z","status":"completed"},{"completedAt":"2026-05-12T10:27:05Z","conclusion":"success","name":"Build Release","number":5,"startedAt":"2026-05-12T10:26:57Z","status":"completed"},{"completedAt":"2026-05-12T10:27:06Z","conclusion":"success","name":"Pack NuGet package","number":6,"startedAt":"2026-05-12T10:27:05Z","status":"completed"},{"completedAt":"2026-05-12T10:27:06Z","conclusion":"success","name":"Upload artifacts","number":7,"startedAt":"2026-05-12T10:27:06Z","status":"completed"},{"completedAt":"2026-05-12T10:27:07Z","conclusion":"success","name":"Post Setup .NET","number":13,"startedAt":"2026-05-12T10:27:06Z","status":"completed"},{"completedAt":"2026-05-12T10:27:07Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":14,"startedAt":"2026-05-12T10:27:07Z","status":"completed"},{"completedAt":"2026-05-12T10:27:07Z","conclusion":"success","name":"Complete job","number":15,"startedAt":"2026-05-12T10:27:07Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547658570"},{"completedAt":"2026-05-12T10:27:29Z","conclusion":"success","databaseId":75547750663,"name":"Release","startedAt":"2026-05-12T10:27:11Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:27:12Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:27:11Z","status":"completed"},{"completedAt":"2026-05-12T10:27:15Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:27:12Z","status":"completed"},{"completedAt":"2026-05-12T10:27:25Z","conclusion":"success","name":"Setup .NET","number":3,"startedAt":"2026-05-12T10:27:15Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Setup Node.js","number":4,"startedAt":"2026-05-12T10:27:25Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Check for changesets","number":5,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Merge multiple changesets","number":6,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Version and commit","number":7,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"skipped","name":"Build release package","number":8,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"skipped","name":"Resolve NuGet package id","number":9,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"skipped","name":"Publish to NuGet","number":10,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"skipped","name":"Create GitHub Release","number":11,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Post Setup Node.js","number":20,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Post Setup .NET","number":21,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":22,"startedAt":"2026-05-12T10:27:26Z","status":"completed"},{"completedAt":"2026-05-12T10:27:26Z","conclusion":"success","name":"Complete job","number":23,"startedAt":"2026-05-12T10:27:26Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547750663"},{"completedAt":"2026-05-12T10:27:08Z","conclusion":"skipped","databaseId":75547751402,"name":"Instant Release","startedAt":"2026-05-12T10:27:09Z","status":"completed","steps":[],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285/job/75547751402"}],"name":"C# CI/CD Pipeline","status":"completed","updatedAt":"2026-05-12T10:27:30Z","url":"https://github.com/link-foundation/link-cli/actions/runs/25728494285"} diff --git a/docs/case-studies/issue-77/evidence/run-25728494305.json b/docs/case-studies/issue-77/evidence/run-25728494305.json new file mode 100644 index 0000000..cb1d11d --- /dev/null +++ b/docs/case-studies/issue-77/evidence/run-25728494305.json @@ -0,0 +1 @@ +{"conclusion":"success","createdAt":"2026-05-12T10:24:34Z","databaseId":25728494305,"event":"push","headSha":"d9309c5d34124229675900119a8da1f30b7fe042","jobs":[{"completedAt":"2026-05-12T10:24:42Z","conclusion":"success","databaseId":75547358861,"name":"Detect Changes","startedAt":"2026-05-12T10:24:36Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:38Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:37Z","status":"completed"},{"completedAt":"2026-05-12T10:24:39Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:38Z","status":"completed"},{"completedAt":"2026-05-12T10:24:39Z","conclusion":"success","name":"Setup Node.js","number":3,"startedAt":"2026-05-12T10:24:39Z","status":"completed"},{"completedAt":"2026-05-12T10:24:40Z","conclusion":"success","name":"Detect changes","number":4,"startedAt":"2026-05-12T10:24:39Z","status":"completed"},{"completedAt":"2026-05-12T10:24:40Z","conclusion":"success","name":"Post Setup Node.js","number":7,"startedAt":"2026-05-12T10:24:40Z","status":"completed"},{"completedAt":"2026-05-12T10:24:40Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":8,"startedAt":"2026-05-12T10:24:40Z","status":"completed"},{"completedAt":"2026-05-12T10:24:40Z","conclusion":"success","name":"Complete job","number":9,"startedAt":"2026-05-12T10:24:40Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547358861"},{"completedAt":"2026-05-12T10:25:07Z","conclusion":"success","databaseId":75547380066,"name":"Lint and Format Check","startedAt":"2026-05-12T10:24:45Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:47Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:46Z","status":"completed"},{"completedAt":"2026-05-12T10:24:48Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:47Z","status":"completed"},{"completedAt":"2026-05-12T10:24:58Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-12T10:24:48Z","status":"completed"},{"completedAt":"2026-05-12T10:24:59Z","conclusion":"success","name":"Setup Node.js","number":4,"startedAt":"2026-05-12T10:24:58Z","status":"completed"},{"completedAt":"2026-05-12T10:25:02Z","conclusion":"success","name":"Cache cargo registry","number":5,"startedAt":"2026-05-12T10:24:59Z","status":"completed"},{"completedAt":"2026-05-12T10:25:02Z","conclusion":"success","name":"Check formatting","number":6,"startedAt":"2026-05-12T10:25:02Z","status":"completed"},{"completedAt":"2026-05-12T10:25:03Z","conclusion":"success","name":"Run Clippy","number":7,"startedAt":"2026-05-12T10:25:02Z","status":"completed"},{"completedAt":"2026-05-12T10:25:03Z","conclusion":"success","name":"Run release script tests","number":8,"startedAt":"2026-05-12T10:25:03Z","status":"completed"},{"completedAt":"2026-05-12T10:25:03Z","conclusion":"success","name":"Check file size limit","number":9,"startedAt":"2026-05-12T10:25:03Z","status":"completed"},{"completedAt":"2026-05-12T10:25:03Z","conclusion":"success","name":"Post Cache cargo registry","number":16,"startedAt":"2026-05-12T10:25:03Z","status":"completed"},{"completedAt":"2026-05-12T10:25:04Z","conclusion":"success","name":"Post Setup Node.js","number":17,"startedAt":"2026-05-12T10:25:03Z","status":"completed"},{"completedAt":"2026-05-12T10:25:04Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":18,"startedAt":"2026-05-12T10:25:04Z","status":"completed"},{"completedAt":"2026-05-12T10:25:04Z","conclusion":"success","name":"Complete job","number":19,"startedAt":"2026-05-12T10:25:04Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547380066"},{"completedAt":"2026-05-12T10:25:00Z","conclusion":"success","databaseId":75547380370,"name":"Test (macos-latest)","startedAt":"2026-05-12T10:24:45Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:47Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:45Z","status":"completed"},{"completedAt":"2026-05-12T10:24:49Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:47Z","status":"completed"},{"completedAt":"2026-05-12T10:24:50Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-12T10:24:49Z","status":"completed"},{"completedAt":"2026-05-12T10:24:52Z","conclusion":"success","name":"Cache cargo registry","number":4,"startedAt":"2026-05-12T10:24:50Z","status":"completed"},{"completedAt":"2026-05-12T10:24:58Z","conclusion":"success","name":"Run tests","number":5,"startedAt":"2026-05-12T10:24:52Z","status":"completed"},{"completedAt":"2026-05-12T10:24:58Z","conclusion":"success","name":"Run doc tests","number":6,"startedAt":"2026-05-12T10:24:58Z","status":"completed"},{"completedAt":"2026-05-12T10:24:58Z","conclusion":"success","name":"Post Cache cargo registry","number":11,"startedAt":"2026-05-12T10:24:58Z","status":"completed"},{"completedAt":"2026-05-12T10:24:58Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":12,"startedAt":"2026-05-12T10:24:58Z","status":"completed"},{"completedAt":"2026-05-12T10:24:58Z","conclusion":"success","name":"Complete job","number":13,"startedAt":"2026-05-12T10:24:58Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547380370"},{"completedAt":"2026-05-12T10:25:16Z","conclusion":"success","databaseId":75547380374,"name":"Test (ubuntu-latest)","startedAt":"2026-05-12T10:24:52Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:54Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:53Z","status":"completed"},{"completedAt":"2026-05-12T10:24:55Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:54Z","status":"completed"},{"completedAt":"2026-05-12T10:25:04Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-12T10:24:55Z","status":"completed"},{"completedAt":"2026-05-12T10:25:06Z","conclusion":"success","name":"Cache cargo registry","number":4,"startedAt":"2026-05-12T10:25:04Z","status":"completed"},{"completedAt":"2026-05-12T10:25:14Z","conclusion":"success","name":"Run tests","number":5,"startedAt":"2026-05-12T10:25:06Z","status":"completed"},{"completedAt":"2026-05-12T10:25:14Z","conclusion":"success","name":"Run doc tests","number":6,"startedAt":"2026-05-12T10:25:14Z","status":"completed"},{"completedAt":"2026-05-12T10:25:14Z","conclusion":"success","name":"Post Cache cargo registry","number":11,"startedAt":"2026-05-12T10:25:14Z","status":"completed"},{"completedAt":"2026-05-12T10:25:15Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":12,"startedAt":"2026-05-12T10:25:14Z","status":"completed"},{"completedAt":"2026-05-12T10:25:15Z","conclusion":"success","name":"Complete job","number":13,"startedAt":"2026-05-12T10:25:15Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547380374"},{"completedAt":"2026-05-12T10:26:00Z","conclusion":"success","databaseId":75547380392,"name":"Test (windows-latest)","startedAt":"2026-05-12T10:24:46Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:48Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:47Z","status":"completed"},{"completedAt":"2026-05-12T10:24:54Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:48Z","status":"completed"},{"completedAt":"2026-05-12T10:25:02Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-12T10:24:54Z","status":"completed"},{"completedAt":"2026-05-12T10:25:10Z","conclusion":"success","name":"Cache cargo registry","number":4,"startedAt":"2026-05-12T10:25:02Z","status":"completed"},{"completedAt":"2026-05-12T10:25:56Z","conclusion":"success","name":"Run tests","number":5,"startedAt":"2026-05-12T10:25:10Z","status":"completed"},{"completedAt":"2026-05-12T10:25:56Z","conclusion":"success","name":"Run doc tests","number":6,"startedAt":"2026-05-12T10:25:56Z","status":"completed"},{"completedAt":"2026-05-12T10:25:57Z","conclusion":"success","name":"Post Cache cargo registry","number":11,"startedAt":"2026-05-12T10:25:56Z","status":"completed"},{"completedAt":"2026-05-12T10:25:58Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":12,"startedAt":"2026-05-12T10:25:57Z","status":"completed"},{"completedAt":"2026-05-12T10:25:58Z","conclusion":"success","name":"Complete job","number":13,"startedAt":"2026-05-12T10:25:58Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547380392"},{"completedAt":"2026-05-12T10:24:43Z","conclusion":"skipped","databaseId":75547380686,"name":"Changelog Fragment Check","startedAt":"2026-05-12T10:24:43Z","status":"completed","steps":[],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547380686"},{"completedAt":"2026-05-12T10:26:32Z","conclusion":"success","databaseId":75547574921,"name":"Build Package","startedAt":"2026-05-12T10:26:10Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:26:12Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:26:11Z","status":"completed"},{"completedAt":"2026-05-12T10:26:14Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:26:12Z","status":"completed"},{"completedAt":"2026-05-12T10:26:24Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-12T10:26:14Z","status":"completed"},{"completedAt":"2026-05-12T10:26:27Z","conclusion":"success","name":"Cache cargo registry","number":4,"startedAt":"2026-05-12T10:26:24Z","status":"completed"},{"completedAt":"2026-05-12T10:26:29Z","conclusion":"success","name":"Build release","number":5,"startedAt":"2026-05-12T10:26:27Z","status":"completed"},{"completedAt":"2026-05-12T10:26:29Z","conclusion":"success","name":"Check package","number":6,"startedAt":"2026-05-12T10:26:29Z","status":"completed"},{"completedAt":"2026-05-12T10:26:30Z","conclusion":"success","name":"Post Cache cargo registry","number":11,"startedAt":"2026-05-12T10:26:29Z","status":"completed"},{"completedAt":"2026-05-12T10:26:30Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":12,"startedAt":"2026-05-12T10:26:30Z","status":"completed"},{"completedAt":"2026-05-12T10:26:30Z","conclusion":"success","name":"Complete job","number":13,"startedAt":"2026-05-12T10:26:30Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547574921"},{"completedAt":"2026-05-12T10:27:10Z","conclusion":"success","databaseId":75547656373,"name":"Auto Release","startedAt":"2026-05-12T10:26:35Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:26:36Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:26:35Z","status":"completed"},{"completedAt":"2026-05-12T10:26:37Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:26:36Z","status":"completed"},{"completedAt":"2026-05-12T10:26:49Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-12T10:26:37Z","status":"completed"},{"completedAt":"2026-05-12T10:26:49Z","conclusion":"success","name":"Setup Node.js","number":4,"startedAt":"2026-05-12T10:26:49Z","status":"completed"},{"completedAt":"2026-05-12T10:26:49Z","conclusion":"success","name":"Configure git","number":5,"startedAt":"2026-05-12T10:26:49Z","status":"completed"},{"completedAt":"2026-05-12T10:26:49Z","conclusion":"success","name":"Determine bump type from changelog fragments","number":6,"startedAt":"2026-05-12T10:26:49Z","status":"completed"},{"completedAt":"2026-05-12T10:26:49Z","conclusion":"success","name":"Check if version already released or no fragments","number":7,"startedAt":"2026-05-12T10:26:49Z","status":"completed"},{"completedAt":"2026-05-12T10:26:49Z","conclusion":"success","name":"Collect changelog and bump version","number":8,"startedAt":"2026-05-12T10:26:49Z","status":"completed"},{"completedAt":"2026-05-12T10:26:49Z","conclusion":"success","name":"Get current version","number":9,"startedAt":"2026-05-12T10:26:49Z","status":"completed"},{"completedAt":"2026-05-12T10:27:06Z","conclusion":"success","name":"Build release","number":10,"startedAt":"2026-05-12T10:26:49Z","status":"completed"},{"completedAt":"2026-05-12T10:27:08Z","conclusion":"success","name":"Create GitHub Release","number":11,"startedAt":"2026-05-12T10:27:06Z","status":"completed"},{"completedAt":"2026-05-12T10:27:08Z","conclusion":"success","name":"Post Setup Node.js","number":21,"startedAt":"2026-05-12T10:27:08Z","status":"completed"},{"completedAt":"2026-05-12T10:27:08Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":22,"startedAt":"2026-05-12T10:27:08Z","status":"completed"},{"completedAt":"2026-05-12T10:27:08Z","conclusion":"success","name":"Complete job","number":23,"startedAt":"2026-05-12T10:27:08Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547656373"},{"completedAt":"2026-05-12T10:26:32Z","conclusion":"skipped","databaseId":75547657038,"name":"Manual Release","startedAt":"2026-05-12T10:26:33Z","status":"completed","steps":[],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305/job/75547657038"}],"name":"Rust CI/CD Pipeline","status":"completed","updatedAt":"2026-05-12T10:27:11Z","url":"https://github.com/link-foundation/link-cli/actions/runs/25728494305"} diff --git a/docs/case-studies/issue-77/evidence/run-25728494323.json b/docs/case-studies/issue-77/evidence/run-25728494323.json new file mode 100644 index 0000000..e3ae5d1 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/run-25728494323.json @@ -0,0 +1 @@ +{"conclusion":"success","createdAt":"2026-05-12T10:24:34Z","databaseId":25728494323,"event":"push","headSha":"d9309c5d34124229675900119a8da1f30b7fe042","jobs":[{"completedAt":"2026-05-12T10:26:46Z","conclusion":"success","databaseId":75547358890,"name":"Test","startedAt":"2026-05-12T10:24:43Z","status":"completed","steps":[{"completedAt":"2026-05-12T10:24:45Z","conclusion":"success","name":"Set up job","number":1,"startedAt":"2026-05-12T10:24:43Z","status":"completed"},{"completedAt":"2026-05-12T10:24:45Z","conclusion":"success","name":"Run actions/checkout@v4","number":2,"startedAt":"2026-05-12T10:24:45Z","status":"completed"},{"completedAt":"2026-05-12T10:24:56Z","conclusion":"success","name":"Setup Rust","number":3,"startedAt":"2026-05-12T10:24:45Z","status":"completed"},{"completedAt":"2026-05-12T10:26:09Z","conclusion":"success","name":"Install wasm-pack","number":4,"startedAt":"2026-05-12T10:24:56Z","status":"completed"},{"completedAt":"2026-05-12T10:26:14Z","conclusion":"success","name":"Setup Node.js","number":5,"startedAt":"2026-05-12T10:26:09Z","status":"completed"},{"completedAt":"2026-05-12T10:26:22Z","conclusion":"success","name":"Cache cargo registry","number":6,"startedAt":"2026-05-12T10:26:14Z","status":"completed"},{"completedAt":"2026-05-12T10:26:26Z","conclusion":"success","name":"Install npm dependencies","number":7,"startedAt":"2026-05-12T10:26:23Z","status":"completed"},{"completedAt":"2026-05-12T10:26:30Z","conclusion":"success","name":"Test Rust CLI core","number":8,"startedAt":"2026-05-12T10:26:26Z","status":"completed"},{"completedAt":"2026-05-12T10:26:35Z","conclusion":"success","name":"Test WebAssembly wrapper","number":9,"startedAt":"2026-05-12T10:26:30Z","status":"completed"},{"completedAt":"2026-05-12T10:26:44Z","conclusion":"success","name":"Build React WebAssembly app","number":10,"startedAt":"2026-05-12T10:26:35Z","status":"completed"},{"completedAt":"2026-05-12T10:26:44Z","conclusion":"success","name":"Upload built app","number":11,"startedAt":"2026-05-12T10:26:44Z","status":"completed"},{"completedAt":"2026-05-12T10:26:45Z","conclusion":"success","name":"Post Cache cargo registry","number":20,"startedAt":"2026-05-12T10:26:44Z","status":"completed"},{"completedAt":"2026-05-12T10:26:45Z","conclusion":"success","name":"Post Setup Node.js","number":21,"startedAt":"2026-05-12T10:26:45Z","status":"completed"},{"completedAt":"2026-05-12T10:26:45Z","conclusion":"success","name":"Post Run actions/checkout@v4","number":22,"startedAt":"2026-05-12T10:26:45Z","status":"completed"},{"completedAt":"2026-05-12T10:26:45Z","conclusion":"success","name":"Complete job","number":23,"startedAt":"2026-05-12T10:26:45Z","status":"completed"}],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494323/job/75547358890"},{"completedAt":"2026-05-12T10:26:46Z","conclusion":"skipped","databaseId":75547693462,"name":"Deploy GitHub Pages","startedAt":"2026-05-12T10:26:47Z","status":"completed","steps":[],"url":"https://github.com/link-foundation/link-cli/actions/runs/25728494323/job/75547693462"}],"name":"WebAssembly CI","status":"completed","updatedAt":"2026-05-12T10:26:47Z","url":"https://github.com/link-foundation/link-cli/actions/runs/25728494323"} diff --git a/docs/case-studies/issue-77/evidence/template-csharp-file-tree.txt b/docs/case-studies/issue-77/evidence/template-csharp-file-tree.txt new file mode 100644 index 0000000..120402e --- /dev/null +++ b/docs/case-studies/issue-77/evidence/template-csharp-file-tree.txt @@ -0,0 +1,31 @@ +README.md +MyPackage.sln +scripts/create-github-release.test.mjs +scripts/create-github-release.mjs +scripts/detect-code-changes.mjs +scripts/validate-changeset.mjs +scripts/version-and-commit.mjs +scripts/bump-version.mjs +scripts/merge-changesets.mjs +scripts/check-file-size.mjs +src/MyPackage/PackageInfo.cs +src/MyPackage/MyPackage.csproj +src/MyPackage/Calculator.cs +examples/BasicUsage.csproj +examples/BasicUsage.cs +.changeset/README.md +.changeset/fix-ci-workflow-dependencies.md +.changeset/fix-csharp-release-format.md +.changeset/add-changesets-workflow.md +.changeset/config.json +CHANGELOG.md +.github/workflows/release.yml +LICENSE +tests/MyPackage.Tests/CalculatorTests.cs +tests/MyPackage.Tests/MyPackage.Tests.csproj +tests/MyPackage.Tests/PackageInfoTests.cs +.pre-commit-config.yaml +CONTRIBUTING.md +Directory.Build.props +.gitignore +.editorconfig diff --git a/docs/case-studies/issue-77/evidence/template-csharp-release.yml b/docs/case-studies/issue-77/evidence/template-csharp-release.yml new file mode 100644 index 0000000..499b729 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/template-csharp-release.yml @@ -0,0 +1,485 @@ +name: CI/CD Pipeline + +on: + push: + branches: + - main + pull_request: + types: [opened, synchronize, reopened] + workflow_dispatch: + inputs: + release_mode: + description: 'Release mode' + required: true + type: choice + default: 'instant' + options: + - instant + - changeset-pr + bump_type: + description: 'Version bump type' + required: true + type: choice + options: + - patch + - minor + - major + description: + description: 'Release description (optional)' + required: false + type: string + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +env: + DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true + DOTNET_CLI_TELEMETRY_OPTOUT: true + DOTNET_NOLOGO: true + +jobs: + # === DETECT CHANGES - determines which jobs should run === + detect-changes: + name: Detect Changes + runs-on: ubuntu-latest + if: github.event_name != 'workflow_dispatch' + outputs: + cs-changed: ${{ steps.changes.outputs.cs-changed }} + csproj-changed: ${{ steps.changes.outputs.csproj-changed }} + sln-changed: ${{ steps.changes.outputs.sln-changed }} + props-changed: ${{ steps.changes.outputs.props-changed }} + mjs-changed: ${{ steps.changes.outputs.mjs-changed }} + docs-changed: ${{ steps.changes.outputs.docs-changed }} + workflow-changed: ${{ steps.changes.outputs.workflow-changed }} + any-code-changed: ${{ steps.changes.outputs.any-code-changed }} + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Detect changes + id: changes + env: + GITHUB_EVENT_NAME: ${{ github.event_name }} + GITHUB_BASE_SHA: ${{ github.event.pull_request.base.sha }} + GITHUB_HEAD_SHA: ${{ github.event.pull_request.head.sha }} + run: bun run scripts/detect-code-changes.mjs + + # === CHANGESET CHECK - only runs on PRs with code changes === + # Docs-only PRs (./docs folder, markdown files) don't require changesets + changeset-check: + name: Changeset Validation + runs-on: ubuntu-latest + needs: [detect-changes] + if: github.event_name == 'pull_request' && needs.detect-changes.outputs.any-code-changed == 'true' + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Validate changeset + env: + GITHUB_BASE_REF: ${{ github.base_ref }} + GITHUB_BASE_SHA: ${{ github.event.pull_request.base.sha }} + GITHUB_HEAD_SHA: ${{ github.event.pull_request.head.sha }} + run: | + # Skip changeset check for automated release PRs + if [[ "${{ github.head_ref }}" == "changeset-release/"* ]] || [[ "${{ github.head_ref }}" == "changeset-manual-release-"* ]]; then + echo "Skipping changeset check for automated release PR" + exit 0 + fi + + # Run changeset validation script + bun run scripts/validate-changeset.mjs + + # === LINT AND FORMAT CHECK === + # Lint runs independently of changeset-check - it's a fast check that should always run + # See: https://github.com/link-foundation/js-ai-driven-development-pipeline-template/pull/18 for why this dependency was removed + lint: + name: Lint and Format Check + runs-on: ubuntu-latest + needs: [detect-changes] + if: | + github.event_name == 'push' || + github.event_name == 'workflow_dispatch' || + needs.detect-changes.outputs.cs-changed == 'true' || + needs.detect-changes.outputs.csproj-changed == 'true' || + needs.detect-changes.outputs.sln-changed == 'true' || + needs.detect-changes.outputs.props-changed == 'true' || + needs.detect-changes.outputs.mjs-changed == 'true' || + needs.detect-changes.outputs.docs-changed == 'true' || + needs.detect-changes.outputs.workflow-changed == 'true' + steps: + - uses: actions/checkout@v4 + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '8.0.x' + + - name: Setup Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Restore dependencies + run: dotnet restore + + - name: Check formatting + run: dotnet format --verify-no-changes --verbosity diagnostic + + - name: Build with warnings as errors + run: dotnet build --no-restore --configuration Release /warnaserror + + - name: Run script tests + run: bun test scripts/*.test.mjs + + - name: Check file size limit + run: bun run scripts/check-file-size.mjs + + # === TEST ON MULTIPLE OS === + test: + name: Test (${{ matrix.os }}) + runs-on: ${{ matrix.os }} + needs: [detect-changes, changeset-check] + # Run if: push event, workflow_dispatch, OR changeset-check succeeded, OR changeset-check was skipped (docs-only PR) + if: always() && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || needs.changeset-check.result == 'success' || needs.changeset-check.result == 'skipped') + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + steps: + - uses: actions/checkout@v4 + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '8.0.x' + + - name: Restore dependencies + run: dotnet restore + + - name: Build + run: dotnet build --no-restore --configuration Release + + - name: Run tests + run: dotnet test --no-build --configuration Release --verbosity normal --collect:"XPlat Code Coverage" + + - name: Upload coverage to Codecov + if: matrix.os == 'ubuntu-latest' + uses: codecov/codecov-action@v4 + with: + fail_ci_if_error: false + + # === BUILD PACKAGE === + # Only runs if lint and test pass + build: + name: Build Package + runs-on: ubuntu-latest + needs: [lint, test] + if: always() && needs.lint.result == 'success' && needs.test.result == 'success' + steps: + - uses: actions/checkout@v4 + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '8.0.x' + + - name: Restore dependencies + run: dotnet restore + + - name: Build Release + run: dotnet build --no-restore --configuration Release + + - name: Pack NuGet package + run: dotnet pack --no-build --configuration Release --output ./artifacts + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: nuget-package + path: ./artifacts/*.nupkg + + # === AUTOMATIC RELEASE === + # Runs on push to main using changesets + release: + name: Release + needs: [lint, test, build] + if: always() && github.ref == 'refs/heads/main' && github.event_name == 'push' && needs.lint.result == 'success' && needs.test.result == 'success' && needs.build.result == 'success' + runs-on: ubuntu-latest + permissions: + contents: write + packages: write + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '8.0.x' + + - name: Setup Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Check for changesets + id: check_changesets + run: | + # Count changeset files (excluding README.md and config.json) + CHANGESET_COUNT=$(find .changeset -name "*.md" ! -name "README.md" 2>/dev/null | wc -l) + echo "Found $CHANGESET_COUNT changeset file(s)" + echo "has_changesets=$([[ $CHANGESET_COUNT -gt 0 ]] && echo 'true' || echo 'false')" >> $GITHUB_OUTPUT + echo "changeset_count=$CHANGESET_COUNT" >> $GITHUB_OUTPUT + + - name: Merge multiple changesets + if: steps.check_changesets.outputs.has_changesets == 'true' && steps.check_changesets.outputs.changeset_count > 1 + run: | + echo "Multiple changesets detected, merging..." + bun run scripts/merge-changesets.mjs + + - name: Version and commit + if: steps.check_changesets.outputs.has_changesets == 'true' + id: version + run: bun run scripts/version-and-commit.mjs --mode changeset + + - name: Build release package + if: steps.version.outputs.version_committed == 'true' + run: | + dotnet restore + dotnet build --configuration Release + dotnet pack --no-build --configuration Release --output ./artifacts + + - name: Resolve NuGet package id + if: steps.version.outputs.version_committed == 'true' + id: package + run: | + PACKAGE_ID=$(dotnet msbuild src/MyPackage/MyPackage.csproj -getProperty:PackageId | tail -n 1 | tr -d '\r') + if [ -z "$PACKAGE_ID" ]; then + PACKAGE_ID=$(dotnet msbuild src/MyPackage/MyPackage.csproj -getProperty:AssemblyName | tail -n 1 | tr -d '\r') + fi + if [ -z "$PACKAGE_ID" ]; then + PACKAGE_ID="MyPackage" + fi + PACKAGE_ID_LOWER=$(echo "$PACKAGE_ID" | tr '[:upper:]' '[:lower:]') + echo "id=$PACKAGE_ID" >> "$GITHUB_OUTPUT" + echo "flat_container_id=$PACKAGE_ID_LOWER" >> "$GITHUB_OUTPUT" + + - name: Publish to NuGet + id: nuget_publish + if: steps.version.outputs.version_committed == 'true' + env: + NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }} + run: | + if [ -n "$NUGET_API_KEY" ]; then + dotnet nuget push ./artifacts/*.nupkg --api-key $NUGET_API_KEY --source https://api.nuget.org/v3/index.json --skip-duplicate + echo "published=true" >> "$GITHUB_OUTPUT" + else + echo "NUGET_API_KEY not set, skipping NuGet publish" + echo "published=false" >> "$GITHUB_OUTPUT" + fi + + - name: Verify package on NuGet + if: steps.version.outputs.version_committed == 'true' && steps.nuget_publish.outputs.published == 'true' + run: | + PACKAGE_ID="${{ steps.package.outputs.id }}" + PACKAGE_ID_LOWER="${{ steps.package.outputs.flat_container_id }}" + VERSION="${{ steps.version.outputs.new_version }}" + for DELAY in 0 5 10 20 30 60; do + if [ "$DELAY" != "0" ]; then + sleep "$DELAY" + fi + STATUS=$(curl -sS -o /dev/null -w '%{http_code}' "https://api.nuget.org/v3-flatcontainer/${PACKAGE_ID_LOWER}/${VERSION}/${PACKAGE_ID_LOWER}.nuspec" || true) + echo "NuGet status for ${PACKAGE_ID}@${VERSION}: ${STATUS}" + if [ "$STATUS" = "200" ]; then + echo "Verified ${PACKAGE_ID}@${VERSION} is available on NuGet" + exit 0 + fi + done + echo "::error title=NuGet verification failed::${PACKAGE_ID}@${VERSION} was not available from NuGet after publish." + exit 1 + + - name: Create GitHub Release + if: steps.version.outputs.version_committed == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + bun run scripts/create-github-release.mjs \ + --release-version "${{ steps.version.outputs.new_version }}" \ + --repository "${{ github.repository }}" \ + --tag-prefix "csharp_v" \ + --language "C#" \ + --package-id "${{ steps.package.outputs.id }}" + + # === MANUAL INSTANT RELEASE === + # Triggered via workflow_dispatch with instant mode + instant-release: + name: Instant Release + needs: [lint, test, build] + if: github.event_name == 'workflow_dispatch' && github.event.inputs.release_mode == 'instant' && needs.lint.result == 'success' && needs.test.result == 'success' && needs.build.result == 'success' + runs-on: ubuntu-latest + permissions: + contents: write + packages: write + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '8.0.x' + + - name: Setup Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Version and commit + id: version + run: | + bun run scripts/version-and-commit.mjs \ + --mode instant \ + --bump-type "${{ github.event.inputs.bump_type }}" \ + --description "${{ github.event.inputs.description }}" + + - name: Build package + if: steps.version.outputs.version_committed == 'true' + run: | + dotnet restore + dotnet build --configuration Release + dotnet pack --no-build --configuration Release --output ./artifacts + + - name: Resolve NuGet package id + if: steps.version.outputs.version_committed == 'true' + id: package + run: | + PACKAGE_ID=$(dotnet msbuild src/MyPackage/MyPackage.csproj -getProperty:PackageId | tail -n 1 | tr -d '\r') + if [ -z "$PACKAGE_ID" ]; then + PACKAGE_ID=$(dotnet msbuild src/MyPackage/MyPackage.csproj -getProperty:AssemblyName | tail -n 1 | tr -d '\r') + fi + if [ -z "$PACKAGE_ID" ]; then + PACKAGE_ID="MyPackage" + fi + PACKAGE_ID_LOWER=$(echo "$PACKAGE_ID" | tr '[:upper:]' '[:lower:]') + echo "id=$PACKAGE_ID" >> "$GITHUB_OUTPUT" + echo "flat_container_id=$PACKAGE_ID_LOWER" >> "$GITHUB_OUTPUT" + + - name: Publish to NuGet + id: nuget_publish + if: steps.version.outputs.version_committed == 'true' + env: + NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }} + run: | + if [ -n "$NUGET_API_KEY" ]; then + dotnet nuget push ./artifacts/*.nupkg --api-key $NUGET_API_KEY --source https://api.nuget.org/v3/index.json --skip-duplicate + echo "published=true" >> "$GITHUB_OUTPUT" + else + echo "NUGET_API_KEY not set, skipping NuGet publish" + echo "published=false" >> "$GITHUB_OUTPUT" + fi + + - name: Verify package on NuGet + if: steps.version.outputs.version_committed == 'true' && steps.nuget_publish.outputs.published == 'true' + run: | + PACKAGE_ID="${{ steps.package.outputs.id }}" + PACKAGE_ID_LOWER="${{ steps.package.outputs.flat_container_id }}" + VERSION="${{ steps.version.outputs.new_version }}" + for DELAY in 0 5 10 20 30 60; do + if [ "$DELAY" != "0" ]; then + sleep "$DELAY" + fi + STATUS=$(curl -sS -o /dev/null -w '%{http_code}' "https://api.nuget.org/v3-flatcontainer/${PACKAGE_ID_LOWER}/${VERSION}/${PACKAGE_ID_LOWER}.nuspec" || true) + echo "NuGet status for ${PACKAGE_ID}@${VERSION}: ${STATUS}" + if [ "$STATUS" = "200" ]; then + echo "Verified ${PACKAGE_ID}@${VERSION} is available on NuGet" + exit 0 + fi + done + echo "::error title=NuGet verification failed::${PACKAGE_ID}@${VERSION} was not available from NuGet after publish." + exit 1 + + - name: Create GitHub Release + if: steps.version.outputs.version_committed == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + bun run scripts/create-github-release.mjs \ + --release-version "${{ steps.version.outputs.new_version }}" \ + --repository "${{ github.repository }}" \ + --tag-prefix "csharp_v" \ + --language "C#" \ + --package-id "${{ steps.package.outputs.id }}" + + # === MANUAL CHANGESET PR === + # Creates a pull request with the changeset for review + changeset-pr: + name: Create Changeset PR + if: github.event_name == 'workflow_dispatch' && github.event.inputs.release_mode == 'changeset-pr' + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Create changeset file + run: | + CHANGESET_ID=$(date +%s) + CHANGESET_FILE=".changeset/manual-release-${CHANGESET_ID}.md" + + cat > "$CHANGESET_FILE" << 'EOF' + --- + 'MyPackage': ${{ github.event.inputs.bump_type }} + --- + + ${{ github.event.inputs.description || 'Manual release' }} + EOF + + echo "Created changeset: $CHANGESET_FILE" + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v7 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: 'chore: add changeset for manual ${{ github.event.inputs.bump_type }} release' + branch: changeset-manual-release-${{ github.run_id }} + delete-branch: true + title: 'chore: manual ${{ github.event.inputs.bump_type }} release' + body: | + ## Manual Release Request + + This PR was created by a manual workflow trigger to prepare a **${{ github.event.inputs.bump_type }}** release. + + ### Release Details + - **Type:** ${{ github.event.inputs.bump_type }} + - **Description:** ${{ github.event.inputs.description || 'Manual release' }} + - **Triggered by:** @${{ github.actor }} + + ### Next Steps + 1. Review the changeset in this PR + 2. Merge this PR to main + 3. The automated release workflow will version, publish, and create a GitHub release diff --git a/docs/case-studies/issue-77/evidence/template-js-file-tree.txt b/docs/case-studies/issue-77/evidence/template-js-file-tree.txt new file mode 100644 index 0000000..90dc912 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/template-js-file-tree.txt @@ -0,0 +1,184 @@ +package.json +.jscpd.json +README.md +docs/case-studies/issue-31/README.md +docs/case-studies/issue-31/web-capture-pr49-commits.json +docs/case-studies/issue-21/ci-logs/run-20885464993.txt +docs/case-studies/issue-21/ci-logs/run-20803315337.txt +docs/case-studies/issue-21/issue-113-data.txt +docs/case-studies/issue-21/README.md +docs/case-studies/issue-21/issue-111-data.txt +docs/case-studies/issue-21/pr-112-data.json +docs/case-studies/issue-21/pr-114-diff.patch +docs/case-studies/issue-21/pr-112-diff.patch +docs/case-studies/issue-21/pr-114-data.json +docs/case-studies/issue-38/CASE-STUDY.md +docs/case-studies/issue-29/README.md +docs/case-studies/issue-3/README.md +docs/case-studies/issue-3/research-notes.md +docs/case-studies/issue-3/original-format-release-notes.mjs +docs/case-studies/issue-3/created-issues.md +docs/case-studies/issue-3/reference-pr-59-diff.txt +docs/case-studies/issue-3/release-v0.1.0.json +docs/case-studies/issue-3/repositories-with-same-script.json +docs/case-studies/issue-3/reference-pr-59.json +docs/case-studies/issue-3/issue-data.json +docs/case-studies/issue-33/ci-logs/upstream-npm-cli-9151.json +docs/case-studies/issue-33/ci-logs/upstream-nodejs-62430.json +docs/case-studies/issue-33/ci-logs/upstream-runner-images-13883.json +docs/case-studies/issue-33/ci-logs/release-24395209194.txt +docs/case-studies/issue-33/README.md +docs/case-studies/issue-7/current-repository-analysis.json +docs/case-studies/issue-7/FORMATTER-COMPARISON.md +docs/case-studies/issue-7/effect-template-analysis.json +docs/case-studies/issue-7/BEST-PRACTICES-COMPARISON.md +docs/case-studies/issue-40/README.md +docs/case-studies/issue-40/rust-template/release.yml +docs/case-studies/issue-40/rust-template/create-github-release.rs +docs/case-studies/issue-40/CICD-COMPARISON.md +docs/case-studies/issue-40/data/downstream-web-capture-pr-99.diff +docs/case-studies/issue-40/data/related-js-merged-prs.json +docs/case-studies/issue-40/data/ci-run-25212337438.json +docs/case-studies/issue-40/data/rust-template-head.txt +docs/case-studies/issue-40/data/shields-working-prerelease-badge.svg +docs/case-studies/issue-40/data/pr-43.json +docs/case-studies/issue-40/data/shields-broken-prefixed-badge.svg +docs/case-studies/issue-40/data/rust-cicd-files.txt +docs/case-studies/issue-40/data/shields-broken-prefixed-prerelease-badge.svg +docs/case-studies/issue-40/data/issue-40.json +docs/case-studies/issue-40/data/js-cicd-files.txt +docs/case-studies/issue-40/data/downstream-web-capture-issue-98.json +docs/case-studies/issue-40/data/ci-runs-branch.json +docs/case-studies/issue-40/data/downstream-web-capture-pr-99.json +docs/case-studies/issue-40/data/shields-working-normalized-badge.svg +docs/case-studies/issue-40/data/rust-template-file-tree.txt +docs/case-studies/issue-40/data/js-template-file-tree.txt +docs/case-studies/issue-23/README.md +docs/case-studies/issue-23/data/pr-1127-diff.txt +docs/case-studies/issue-23/data/hive-mind-ci.yml +docs/case-studies/issue-23/data/issue-1126-details.txt +docs/case-studies/issue-23/data/pr-1142-conversation-comments.json +docs/case-studies/issue-23/data/hive-mind-check-version.mjs +docs/case-studies/issue-23/data/pr-1127-conversation-comments.json +docs/case-studies/issue-23/data/pr-1142-diff.txt +docs/case-studies/issue-23/data/hive-mind-eslint.config.mjs +docs/case-studies/issue-23/data/hive-mind-release.yml +docs/case-studies/issue-23/data/issue-1141-comments.json +docs/case-studies/issue-23/data/pr-1127-review-comments.json +docs/case-studies/issue-23/data/issue-1141-details.txt +docs/case-studies/issue-23/data/pr-1142-review-comments.json +docs/case-studies/issue-25/DETAILED-COMPARISON.md +docs/case-studies/issue-25/README.md +docs/case-studies/issue-25/data/template-file-tree.txt +docs/case-studies/issue-25/data/issue-1274-case-study.md +docs/case-studies/issue-25/data/issue-1278-case-study.md +docs/case-studies/issue-25/data/hive-mind-file-tree.txt +docs/case-studies/issue-42/README.md +docs/case-studies/issue-42/data/link-foundation-my-package-search.txt +docs/case-studies/issue-42/data/rust-template-head.txt +docs/case-studies/issue-42/data/issue-42.json +docs/case-studies/issue-42/data/pr-45-conversation-comments.json +docs/case-studies/issue-42/data/rust-template-ci-cd-findings.txt +docs/case-studies/issue-42/data/link-foundation-package-name-search.txt +docs/case-studies/issue-42/data/pr-45-review-comments.json +docs/case-studies/issue-42/data/related-merged-prs-check-release-needed.json +docs/case-studies/issue-42/data/pr-45-reviews.json +docs/case-studies/issue-42/data/related-merged-prs-publish-to-npm.json +docs/case-studies/issue-42/data/js-template-pre-fix-head.txt +docs/case-studies/issue-42/data/pr-45.json +docs/case-studies/issue-42/data/ci-runs-branch.json +docs/case-studies/issue-42/data/issue-42-comments.json +docs/case-studies/issue-42/data/rust-template-file-tree.txt +docs/case-studies/issue-42/data/js-template-file-tree.txt +docs/case-studies/issue-36/ci-logs/release-24399965550.txt +docs/case-studies/issue-36/README.md +docs/case-studies/issue-41/README.md +docs/case-studies/issue-41/data/hive-mind-check-file-line-limits.sh +docs/case-studies/issue-41/data/js-template-release.yml +docs/case-studies/issue-41/data/hive-mind-issue-1593-comments.json +docs/case-studies/issue-41/data/js-template-check-file-line-limits-before.sh +docs/case-studies/issue-41/data/hive-mind-issue-1593-case-study.md +docs/case-studies/issue-41/data/hive-mind-issue-1730-comments.json +docs/case-studies/issue-41/data/hive-mind-issue-1730-case-study.md +docs/case-studies/issue-41/data/js-template-eslint.config.js +docs/case-studies/issue-41/data/rust-template-check-file-size.rs +docs/case-studies/issue-41/data/rust-template-max-lines-search.json +docs/case-studies/issue-41/data/rust-template-created-issue-url.txt +docs/case-studies/issue-41/data/js-template-warn-threshold-search-before.json +docs/case-studies/issue-41/data/rust-template-issues.json +docs/case-studies/issue-41/data/rust-template-release.yml +docs/case-studies/issue-41/data/rust-template-issue-40.json +docs/case-studies/issue-41/data/hive-mind-issue-1593.json +docs/case-studies/issue-41/data/hive-mind-issue-1730.json +docs/case-studies/issue-41/data/js-template-issue-41.json +docs/case-studies/issue-41/data/js-template-issue-41-comments.json +docs/case-studies/issue-41/data/rust-template-file-tree.txt +docs/case-studies/issue-41/data/hive-mind-file-tree.txt +docs/case-studies/issue-41/data/js-template-file-tree.txt +docs/case-studies/issue-13/README.md +docs/case-studies/issue-13/hive-mind-issue-960.json +docs/case-studies/issue-13/hive-mind-pr-961-diff.txt +docs/case-studies/issue-13/hive-mind-pr-961.json +docs/CONTRIBUTING.md +docs/BEST-PRACTICES.md +bunfig.toml +scripts/check-mjs-syntax.sh +scripts/changeset-version.mjs +scripts/setup-npm.mjs +scripts/create-github-release.mjs +scripts/check-web-archive.mjs +scripts/check-changesets.mjs +scripts/detect-code-changes.mjs +scripts/check-version.mjs +scripts/format-release-notes.mjs +scripts/check-release-needed.mjs +scripts/format-github-release.mjs +scripts/format-release-notes-helpers.mjs +scripts/js-paths.mjs +scripts/validate-changeset.mjs +scripts/version-and-commit.mjs +scripts/check-docker-publish.mjs +scripts/wait-for-npm.mjs +scripts/merge-changesets.mjs +scripts/package-info.mjs +scripts/publish-to-npm.mjs +scripts/simulate-fresh-merge.sh +scripts/check-file-line-limits.sh +scripts/create-manual-changeset.mjs +scripts/instant-version-bump.mjs +src/index.d.ts +src/index.js +.husky/pre-commit +.secretlintrc.json +examples/basic-usage.js +.changeset/README.md +.changeset/config.json +.lycheeignore +CHANGELOG.md +.github/workflows/links.yml +.github/workflows/release.yml +.github/actions/publish-dockerhub/action.yml +LICENSE +experiments/test-detect-changes.mjs +experiments/test-format-major-changes.mjs +experiments/test-changeset-scripts.mjs +experiments/test-format-minor-changes.mjs +experiments/test-format-patch-changes.mjs +experiments/test-format-no-hash.mjs +experiments/test-check-release-needed.mjs +experiments/test-failure-detection.mjs +eslint.config.js +tests/create-github-release.test.js +tests/index.test.js +tests/release-badge.test.js +tests/ci-timeouts.test.js +tests/docker-publish.test.js +tests/tag-prefix.test.js +tests/setup-npm.test.js +tests/check-file-line-limits.test.js +tests/package-info.test.js +.prettierrc +package-lock.json +deno.json +.prettierignore +.gitignore diff --git a/docs/case-studies/issue-77/evidence/template-js-links.yml b/docs/case-studies/issue-77/evidence/template-js-links.yml new file mode 100644 index 0000000..3e910dc --- /dev/null +++ b/docs/case-studies/issue-77/evidence/template-js-links.yml @@ -0,0 +1,84 @@ +name: Broken Link Checker + +on: + push: + branches: + - main + paths: + - '**.md' + - '**.html' + - '.github/workflows/links.yml' + pull_request: + types: [opened, synchronize, reopened] + paths: + - '**.md' + - '**.html' + - '.github/workflows/links.yml' + workflow_dispatch: + +jobs: + link-checker: + name: Check Links + runs-on: ubuntu-latest + # Typical run: <1min with lychee cache. 10min prevents slow + # external hosts or Wayback Machine probes from hanging the workflow. + timeout-minutes: 10 + permissions: + contents: read + steps: + - uses: actions/checkout@v6 + + - name: Check links with lychee + id: lychee + uses: lycheeverse/lychee-action@v2 + with: + # Check all Markdown and HTML files + # Exclude case-studies directory - these are research documents from + # external repos with references to files and issues that don't exist + # in this repository (similar exclusion pattern as eslint.config.js) + args: >- + --verbose + --no-progress + --cache + --max-cache-age 1d + --max-retries 3 + --timeout 30 + --exclude-path docs/case-studies + './**/*.md' + './**/*.html' + # Don't fail the workflow immediately - we want to check web archive first + fail: false + # Output file for broken links report (used by check-web-archive.mjs) + output: lychee/out.md + # Write a job summary + jobSummary: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Check broken links against Web Archive + if: steps.lychee.outputs.exit_code != 0 + id: webarchive + run: node scripts/check-web-archive.mjs + env: + LYCHEE_OUTPUT: lychee/out.md + + - name: Fail if broken links found and no web archive fallback + if: steps.lychee.outputs.exit_code != 0 && steps.webarchive.outputs.all_archived != 'true' + run: | + echo "::error::Broken links were detected with no Web Archive fallback available." + echo "" + echo "What happened:" + echo " lychee found one or more broken links in the *.md and *.html files of this repository." + echo " The Web Archive (Wayback Machine) check found no archived versions for some of them." + echo "" + echo "How to fix:" + echo " 1. Review the 'Check links with lychee' step above for a full list of broken links." + echo " 2. For links marked with a '::notice::' annotation above, a Web Archive version exists." + echo " Replace those broken links with the suggested archive.org URL." + echo " 3. For links with no archive version, either:" + echo " a. Find an updated URL that points to the same or equivalent content." + echo " b. Remove the link if the content is no longer relevant." + echo " c. Add the URL to .lycheeignore if it is a known false positive." + echo "" + echo "Report location: lychee/out.md (available as a workflow artifact if configured)." + exit 1 diff --git a/docs/case-studies/issue-77/evidence/template-js-release.yml b/docs/case-studies/issue-77/evidence/template-js-release.yml new file mode 100644 index 0000000..0facf84 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/template-js-release.yml @@ -0,0 +1,617 @@ +name: Checks and release + +on: + push: + branches: + - main + pull_request: + types: [opened, synchronize, reopened] + # Manual release support - consolidated here to work with npm trusted publishing + # npm only allows ONE workflow file as trusted publisher, so all publishing + # must go through this workflow (release.yml) + workflow_dispatch: + inputs: + release_mode: + description: 'Manual release mode' + required: true + type: choice + default: 'instant' + options: + - instant + - changeset-pr + bump_type: + description: 'Manual release type' + required: true + type: choice + options: + - patch + - minor + - major + description: + description: 'Manual release description (optional)' + required: false + type: string + +# Concurrency: Only one workflow run per branch at a time +# - For main branch (releases): cancel older runs to prevent blocking newer releases +# When multiple commits are pushed quickly, we want the latest to release, not wait +# - For PR branches: queue runs to avoid cancelling checks on force-pushes +# See: docs/case-studies/issue-25/DETAILED-COMPARISON.md for context +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref == 'refs/heads/main' }} + +jobs: + # === DETECT CHANGES - determines which jobs should run === + detect-changes: + name: Detect Changes + runs-on: ubuntu-latest + # Typical run: ~6s. Cap at 5min so a hung detection step + # surfaces quickly instead of stalling the whole pipeline. + timeout-minutes: 5 + if: github.event_name != 'workflow_dispatch' + outputs: + mjs-changed: ${{ steps.changes.outputs.mjs-changed }} + js-changed: ${{ steps.changes.outputs.js-changed }} + package-changed: ${{ steps.changes.outputs.package-changed }} + docs-changed: ${{ steps.changes.outputs.docs-changed }} + workflow-changed: ${{ steps.changes.outputs.workflow-changed }} + any-code-changed: ${{ steps.changes.outputs.any-code-changed }} + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Detect changes + id: changes + run: node scripts/detect-code-changes.mjs + + # === FAST CHECKS - run before slow tests for fastest feedback === + # See: hive-mind CI/CD best practices principle #5 (fast-fail job ordering) + + # Syntax check all .mjs files with node --check (~7s) + test-compilation: + name: Test Compilation + runs-on: ubuntu-latest + # Typical run: <10s. Tight cap fails fast on syntax-check hangs. + timeout-minutes: 5 + needs: [detect-changes] + if: | + github.event_name == 'push' || + needs.detect-changes.outputs.mjs-changed == 'true' || + needs.detect-changes.outputs.js-changed == 'true' + steps: + - uses: actions/checkout@v6 + + - name: Check .mjs syntax + run: bash scripts/check-mjs-syntax.sh + + # Enforce 1500-line limit on .mjs files and release.yml + check-file-line-limits: + name: Check File Line Limits + runs-on: ubuntu-latest + # Typical run: <10s. This job only walks tracked files and counts lines. + timeout-minutes: 5 + needs: [detect-changes] + if: | + github.event_name == 'push' || + needs.detect-changes.outputs.mjs-changed == 'true' || + needs.detect-changes.outputs.js-changed == 'true' || + needs.detect-changes.outputs.workflow-changed == 'true' + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Simulate fresh merge with base branch (PR only) + if: github.event_name == 'pull_request' + env: + BASE_REF: ${{ github.base_ref }} + run: bash scripts/simulate-fresh-merge.sh + + - name: Check file line limits + run: bash scripts/check-file-line-limits.sh + + # === VERSION CHANGE CHECK === + # Prohibit manual version changes in package.json - versions should only be changed by CI/CD + version-check: + name: Check for Manual Version Changes + runs-on: ubuntu-latest + # Typical run: ~6s. Read-only package.json diff inspection. + timeout-minutes: 5 + if: github.event_name == 'pull_request' + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Check for version changes in package.json + env: + GITHUB_HEAD_REF: ${{ github.head_ref }} + GITHUB_BASE_REF: ${{ github.base_ref }} + run: node scripts/check-version.mjs + + # === CHANGESET CHECK - only runs on PRs with code changes === + # Docs-only PRs (./docs folder, markdown files) don't require changesets + changeset-check: + name: Check for Changesets + runs-on: ubuntu-latest + # Typical run: <30s including npm install. 10min covers cold runners. + timeout-minutes: 10 + needs: [detect-changes] + if: github.event_name == 'pull_request' && needs.detect-changes.outputs.any-code-changed == 'true' + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Node.js + uses: actions/setup-node@v6 + with: + node-version: '24.x' + + - name: Install dependencies + run: npm install + + - name: Check for changesets + env: + # Pass PR context to the validation script + GITHUB_BASE_REF: ${{ github.base_ref }} + GITHUB_BASE_SHA: ${{ github.event.pull_request.base.sha }} + GITHUB_HEAD_SHA: ${{ github.event.pull_request.head.sha }} + run: | + # Skip changeset check for automated version PRs + if [[ "${{ github.head_ref }}" == "changeset-release/"* ]]; then + echo "Skipping changeset check for automated release PR" + exit 0 + fi + + # Run changeset validation script + # This validates that exactly ONE changeset was ADDED by this PR + # Pre-existing changesets from other merged PRs are ignored + node scripts/validate-changeset.mjs + + # === LINT AND FORMAT CHECK === + # Lint runs independently of changeset-check - it's a fast check that should always run + # See: https://github.com/link-assistant/hive-mind/pull/1024 for why this dependency was removed + # IMPORTANT: ESLint includes max-lines rule (1500 lines) to ensure files stay maintainable + # See docs/case-studies/issue-23 for why fresh merge simulation is critical + lint: + name: Lint and Format Check + runs-on: ubuntu-latest + # Typical run: <1min including install, ESLint, Prettier, jscpd, + # and secretlint. 10min protects against a hung lint plugin. + timeout-minutes: 10 + needs: [detect-changes] + if: | + github.event_name == 'push' || + needs.detect-changes.outputs.mjs-changed == 'true' || + needs.detect-changes.outputs.js-changed == 'true' || + needs.detect-changes.outputs.docs-changed == 'true' || + needs.detect-changes.outputs.package-changed == 'true' || + needs.detect-changes.outputs.workflow-changed == 'true' + steps: + - uses: actions/checkout@v6 + with: + # For PRs, fetch enough history to merge with base branch + fetch-depth: 0 + + - name: Simulate fresh merge with base branch (PR only) + if: github.event_name == 'pull_request' + env: + BASE_REF: ${{ github.base_ref }} + run: bash scripts/simulate-fresh-merge.sh + + - name: Setup Node.js + uses: actions/setup-node@v6 + with: + node-version: '24.x' + + - name: Install dependencies + run: npm install + + - name: Run ESLint + run: npm run lint + + - name: Check formatting + run: npm run format:check + + - name: Check code duplication + run: npm run check:duplication + + - name: Check for secrets + run: npx --yes -p secretlint -p @secretlint/secretlint-rule-preset-recommend secretlint "**/*" + + # Test matrix: 3 runtimes (Node.js, Bun, Deno) x 3 OS (Ubuntu, macOS, Windows) + # IMPORTANT: Tests must validate the ACTUAL merge result, not a stale merge preview. + # See docs/case-studies/issue-23 for why this is critical. + # Fast-fail: slow test matrix only runs after fast checks pass (hive-mind principle #5) + test: + name: Test (${{ matrix.runtime }} on ${{ matrix.os }}) + runs-on: ${{ matrix.os }} + # Typical run: <1min per runtime/OS on warm runners, with Windows + # sometimes slower on cold starts. 10min fails hung tests well + # before GitHub Actions' 6h default. + timeout-minutes: 10 + needs: + [ + detect-changes, + changeset-check, + test-compilation, + lint, + check-file-line-limits, + ] + # Use !cancelled() instead of always() so cancellation propagates correctly (hive-mind issue #1278) + # Run if: push event, OR changeset-check succeeded, OR changeset-check was skipped (docs-only PR) + # AND all fast checks passed (or were skipped for irrelevant changes) + if: | + !cancelled() && + (github.event_name == 'push' || needs.changeset-check.result == 'success' || needs.changeset-check.result == 'skipped') && + (needs.test-compilation.result == 'success' || needs.test-compilation.result == 'skipped') && + (needs.lint.result == 'success' || needs.lint.result == 'skipped') && + (needs.check-file-line-limits.result == 'success' || needs.check-file-line-limits.result == 'skipped') + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + runtime: [node, bun, deno] + steps: + - uses: actions/checkout@v6 + with: + # For PRs, fetch enough history to merge with base branch + fetch-depth: 0 + + - name: Simulate fresh merge with base branch (PR only) + if: github.event_name == 'pull_request' + env: + BASE_REF: ${{ github.base_ref }} + shell: bash + run: bash scripts/simulate-fresh-merge.sh + + - name: Setup Node.js + if: matrix.runtime == 'node' + uses: actions/setup-node@v6 + with: + node-version: '24.x' + + - name: Install dependencies (Node.js) + if: matrix.runtime == 'node' + run: npm install + + - name: Run tests (Node.js) + if: matrix.runtime == 'node' + run: npm test + + - name: Setup Bun + if: matrix.runtime == 'bun' + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Install dependencies (Bun) + if: matrix.runtime == 'bun' + run: bun install + + - name: Run tests (Bun) + if: matrix.runtime == 'bun' + # --timeout caps an individual test at 30s, matching Node's + # --test-timeout budget while leaving headroom for cold runners. + run: bun test --timeout 30000 + + - name: Setup Deno + if: matrix.runtime == 'deno' + uses: denoland/setup-deno@v2 + with: + deno-version: v2.x + + - name: Run tests (Deno) + if: matrix.runtime == 'deno' + run: deno test --allow-read + + # === DOCUMENTATION VALIDATION === + # Validate documentation files when docs change (hive-mind principle #12) + validate-docs: + name: Validate Documentation + runs-on: ubuntu-latest + # Typical run: <10s. Pure shell checks over documentation files. + timeout-minutes: 5 + needs: [detect-changes] + if: | + github.event_name == 'push' || + needs.detect-changes.outputs.docs-changed == 'true' + steps: + - uses: actions/checkout@v6 + + - name: Check documentation file sizes + run: | + LIMIT=2500 + FAILURES=() + + echo "Checking that documentation files are under ${LIMIT} lines..." + + while IFS= read -r -d '' file; do + line_count=$(wc -l < "$file") + if [ "$line_count" -gt "$LIMIT" ]; then + echo "ERROR: $file has $line_count lines (limit: ${LIMIT})" + echo "::error file=$file::Documentation file has $line_count lines (limit: ${LIMIT})" + FAILURES+=("$file") + fi + done < <(find docs -name "*.md" -type f -print0 2>/dev/null) + + if [ "${#FAILURES[@]}" -gt 0 ]; then + echo "The following docs exceed the ${LIMIT} line limit:" + printf ' %s\n' "${FAILURES[@]}" + exit 1 + else + echo "All documentation files are within the ${LIMIT} line limit." + fi + + - name: Check required documentation files exist + run: | + REQUIRED_FILES=( + "docs/BEST-PRACTICES.md" + "docs/CONTRIBUTING.md" + "README.md" + "CHANGELOG.md" + ) + + MISSING=() + for file in "${REQUIRED_FILES[@]}"; do + if [ ! -f "$file" ]; then + echo "ERROR: Required documentation file missing: $file" + MISSING+=("$file") + else + echo "Found: $file" + fi + done + + if [ "${#MISSING[@]}" -gt 0 ]; then + echo "" + echo "Missing required documentation files:" + printf ' %s\n' "${MISSING[@]}" + exit 1 + else + echo "All required documentation files present." + fi + + # Release - only runs on main after tests pass (for push events) + release: + name: Release + needs: [lint, test] + # Typical run is well under 10min. 30min gives npm and GitHub + # release APIs room for retries without allowing a 6h hang. + timeout-minutes: 30 + # Use !cancelled() instead of always() so cancellation propagates correctly (hive-mind issue #1278) + # This is needed because lint/test jobs have a transitive dependency on changeset-check + if: | + !cancelled() && + github.ref == 'refs/heads/main' && + github.event_name == 'push' && + needs.lint.result == 'success' && + needs.test.result == 'success' + runs-on: ubuntu-latest + # Permissions required for npm OIDC trusted publishing + permissions: + contents: write + pull-requests: write + id-token: write + outputs: + published: ${{ steps.publish.outputs.published }} + published_version: ${{ steps.publish.outputs.published_version }} + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Node.js + uses: actions/setup-node@v6 + with: + node-version: '24.x' + registry-url: 'https://registry.npmjs.org' + + - name: Install dependencies + run: npm install + + - name: Update npm for OIDC trusted publishing + run: node scripts/setup-npm.mjs + + - name: Check for changesets + id: check_changesets + run: node scripts/check-changesets.mjs + + - name: Check if release is needed + id: check_release + env: + HAS_CHANGESETS: ${{ steps.check_changesets.outputs.has_changesets }} + run: node scripts/check-release-needed.mjs + + - name: Merge multiple changesets + if: steps.check_changesets.outputs.has_changesets == 'true' && steps.check_changesets.outputs.changeset_count > 1 + run: | + echo "Multiple changesets detected, merging..." + node scripts/merge-changesets.mjs + + - name: Version packages and commit to main + if: steps.check_changesets.outputs.has_changesets == 'true' + id: version + run: node scripts/version-and-commit.mjs --mode changeset + + - name: Publish to npm + # Run if version was committed, if a previous attempt already committed (for re-runs), + # or if check-release-needed detected an unpublished version (self-healing, issue #36) + if: >- + steps.version.outputs.version_committed == 'true' || + steps.version.outputs.already_released == 'true' || + (steps.check_release.outputs.should_release == 'true' && steps.check_release.outputs.skip_bump == 'true') + id: publish + run: node scripts/publish-to-npm.mjs --should-pull + + - name: Create GitHub Release + if: steps.publish.outputs.published == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: node scripts/create-github-release.mjs --release-version "${{ steps.publish.outputs.published_version }}" --repository "${{ github.repository }}" + + - name: Format GitHub release notes + if: steps.publish.outputs.published == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: node scripts/format-github-release.mjs --release-version "${{ steps.publish.outputs.published_version }}" --repository "${{ github.repository }}" --commit-sha "${{ github.sha }}" + + # Manual Instant Release - triggered via workflow_dispatch with instant mode + # This job is in release.yml because npm trusted publishing + # only allows one workflow file to be registered as a trusted publisher + instant-release: + name: Instant Release + if: github.event_name == 'workflow_dispatch' && github.event.inputs.release_mode == 'instant' + runs-on: ubuntu-latest + # Same publish envelope as the automated release path. + timeout-minutes: 30 + # Permissions required for npm OIDC trusted publishing + permissions: + contents: write + pull-requests: write + id-token: write + outputs: + published: ${{ steps.publish.outputs.published }} + published_version: ${{ steps.publish.outputs.published_version }} + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Node.js + uses: actions/setup-node@v6 + with: + node-version: '24.x' + registry-url: 'https://registry.npmjs.org' + + - name: Install dependencies + run: npm install + + - name: Update npm for OIDC trusted publishing + run: node scripts/setup-npm.mjs + + - name: Version packages and commit to main + id: version + run: node scripts/version-and-commit.mjs --mode instant --bump-type "${{ github.event.inputs.bump_type }}" --description "${{ github.event.inputs.description }}" + + - name: Publish to npm + # Run if version was committed OR if a previous attempt already committed (for re-runs) + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + id: publish + run: node scripts/publish-to-npm.mjs + + - name: Create GitHub Release + if: steps.publish.outputs.published == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: node scripts/create-github-release.mjs --release-version "${{ steps.publish.outputs.published_version }}" --repository "${{ github.repository }}" + + - name: Format GitHub release notes + if: steps.publish.outputs.published == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: node scripts/format-github-release.mjs --release-version "${{ steps.publish.outputs.published_version }}" --repository "${{ github.repository }}" --commit-sha "${{ github.sha }}" + + # Optional Docker Hub publishing for packages that also ship Docker images. + # Set vars.DOCKERHUB_IMAGE to enable this path, then configure + # vars.DOCKERHUB_USERNAME and secrets.DOCKERHUB_TOKEN. + docker-publish: + name: Optional Docker Hub Publish + needs: [release, instant-release] + timeout-minutes: 30 + if: | + !cancelled() && + ( + (needs.release.result == 'success' && needs.release.outputs.published == 'true') || + (needs.instant-release.result == 'success' && needs.instant-release.outputs.published == 'true') + ) + runs-on: ubuntu-latest + permissions: + contents: read + env: + DOCKER_CONTEXT: ${{ vars.DOCKER_CONTEXT }} + DOCKERFILE: ${{ vars.DOCKERFILE }} + DOCKERHUB_IMAGE: ${{ vars.DOCKERHUB_IMAGE }} + DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} + DOCKERHUB_USERNAME: ${{ vars.DOCKERHUB_USERNAME }} + RELEASE_VERSION: ${{ needs.release.outputs.published_version || needs.instant-release.outputs.published_version }} + steps: + - uses: actions/checkout@v6 + + - name: Check Docker publish configuration + id: docker_config + run: node scripts/check-docker-publish.mjs + + - name: Wait for npm package availability before Docker publish + if: steps.docker_config.outputs.enabled == 'true' + run: node scripts/wait-for-npm.mjs --release-version "${{ env.RELEASE_VERSION }}" + + - name: Publish Docker image to Docker Hub + if: steps.docker_config.outputs.enabled == 'true' + uses: ./.github/actions/publish-dockerhub + with: + context: ${{ steps.docker_config.outputs.context }} + file: ${{ steps.docker_config.outputs.dockerfile }} + image: ${{ steps.docker_config.outputs.image }} + token: ${{ env.DOCKERHUB_TOKEN }} + username: ${{ env.DOCKERHUB_USERNAME }} + version: ${{ env.RELEASE_VERSION }} + + # Manual Changeset PR - creates a pull request with the changeset for review + changeset-pr: + name: Create Changeset PR + if: github.event_name == 'workflow_dispatch' && github.event.inputs.release_mode == 'changeset-pr' + runs-on: ubuntu-latest + # PR creation only: install, create a changeset, format, and open a PR. + timeout-minutes: 10 + permissions: + contents: write + pull-requests: write + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Node.js + uses: actions/setup-node@v6 + with: + node-version: '24.x' + + - name: Install dependencies + run: npm install + + - name: Create changeset file + run: node scripts/create-manual-changeset.mjs --bump-type "${{ github.event.inputs.bump_type }}" --description "${{ github.event.inputs.description }}" + + - name: Format changeset with Prettier + run: | + # Run Prettier on the changeset file to ensure it matches project style + npx prettier --write ".changeset/*.md" || true + + echo "Formatted changeset files" + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v8 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: 'chore: add changeset for manual ${{ github.event.inputs.bump_type }} release' + branch: changeset-manual-release-${{ github.run_id }} + delete-branch: true + title: 'chore: manual ${{ github.event.inputs.bump_type }} release' + body: | + ## Manual Release Request + + This PR was created by a manual workflow trigger to prepare a **${{ github.event.inputs.bump_type }}** release. + + ### Release Details + - **Type:** ${{ github.event.inputs.bump_type }} + - **Description:** ${{ github.event.inputs.description || 'Manual release' }} + - **Triggered by:** @${{ github.actor }} + + ### Next Steps + 1. Review the changeset in this PR + 2. Merge this PR to main + 3. The automated release workflow will create a version PR + 4. Merge the version PR to publish to npm and create a GitHub release diff --git a/docs/case-studies/issue-77/evidence/template-rust-file-tree.txt b/docs/case-studies/issue-77/evidence/template-rust-file-tree.txt new file mode 100644 index 0000000..8b63ee9 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/template-rust-file-tree.txt @@ -0,0 +1,119 @@ +README.md +docs/ci-cd/troubleshooting.md +docs/case-studies/issue-17/README.md +docs/case-studies/issue-21/README.md +docs/case-studies/issue-21/browser-commander-issue-27.md +docs/case-studies/issue-21/browser-commander-issue-33.md +docs/case-studies/issue-21/browser-commander-issue-29.md +docs/case-studies/issue-21/browser-commander-issue-31.md +docs/case-studies/issue-21/browser-commander-rust.yml +docs/case-studies/issue-11/README.md +docs/case-studies/issue-11/analysis-crates-io.md +docs/case-studies/issue-11/online-research.md +docs/case-studies/issue-11/analysis-workflow-dispatch.md +docs/case-studies/issue-11/analysis-set-output.md +docs/case-studies/issue-19/ci-logs/ci-run-20885464993.log.gz +docs/case-studies/issue-19/README.md +docs/case-studies/issue-19/pr-114-data/pr-conversation-comments.json +docs/case-studies/issue-19/pr-114-data/pr-diff.patch +docs/case-studies/issue-19/pr-114-data/pr-details.json +docs/case-studies/issue-19/pr-114-data/solution-draft-log-1.txt.gz +docs/case-studies/issue-19/pr-114-data/pr-reviews.json +docs/case-studies/issue-19/pr-114-data/solution-draft-log-2.txt.gz +docs/case-studies/issue-19/pr-114-data/pr-review-comments.json +docs/case-studies/issue-19/pr-114-data/issue-113-details.txt +docs/case-studies/issue-19/pr-114-data/pr-commits.json +docs/case-studies/issue-38/README.md +docs/case-studies/issue-38/raw-data/downstream-meta-before-run-24983875003.log.gz +docs/case-studies/issue-38/raw-data/main-run-24465255225.json +docs/case-studies/issue-38/raw-data/pr-39.json +docs/case-studies/issue-38/raw-data/pr-39-review-comments.json +docs/case-studies/issue-38/raw-data/downstream-meta-ontology-pr-4.json +docs/case-studies/issue-38/raw-data/pr-run-25212295127.json +docs/case-studies/issue-38/raw-data/issue-38-comments.json +docs/case-studies/issue-38/raw-data/js-template-issue-search.json +docs/case-studies/issue-38/raw-data/main-runs.json +docs/case-studies/issue-38/raw-data/pr-run-25212295127.log.gz +docs/case-studies/issue-38/raw-data/pr-branch-runs.json +docs/case-studies/issue-38/raw-data/pr-39-conversation-comments.json +docs/case-studies/issue-38/raw-data/downstream-meta-before-run-24983875003.json +docs/case-studies/issue-38/raw-data/downstream-meta-ontology-issue-3.json +docs/case-studies/issue-38/raw-data/main-run-24465255225.log.gz +docs/case-studies/issue-38/raw-data/downstream-meta-after-run-24985948212.json +docs/case-studies/issue-38/raw-data/downstream-meta-after-run-24985948212.log.gz +docs/case-studies/issue-38/raw-data/issue-38.json +docs/case-studies/issue-38/raw-data/pr-39-reviews.json +docs/case-studies/issue-38/raw-data/rust-template-issue-search.json +docs/case-studies/issue-38/template-data/js-template-release.yml +docs/case-studies/issue-38/template-data/rust-template-release-before.yml +docs/case-studies/issue-38/template-data/js-template-ci-tree.txt +docs/case-studies/issue-38/template-data/rust-template-ci-tree.txt +docs/case-studies/issue-38/template-data/rust-template-release-after.yml +docs/case-studies/issue-38/template-data/js-template-links.yml +docs/case-studies/issue-32/README.md +docs/case-studies/issue-29/README.md +docs/case-studies/issue-34/README.md +docs/case-studies/issue-25/README.md +Cargo.toml +changelog.d/20260415_fix_workspace_release_scripts.md +changelog.d/README.md +changelog.d/20260119_best_practices_from_browser_commander.md +changelog.d/20260413_fix_lookahead_regex.md +changelog.d/20260413-ci-cd-best-practices.md +changelog.d/20260414_fix_per_commit_diff.md +changelog.d/20260503_111500_ci_timeouts.md +changelog.d/20260509_205000_docker_hub_release_publishing.md +changelog.d/20251231_115800_fix_readme_script_references.md +changelog.d/20260413_fix_cargo_token_fallback.md +changelog.d/20260108_171435_prevent_manual_version_modification.md +changelog.d/20260501_decouple_docs_deploy.md +changelog.d/20251229_143823_fix_ci_workflow_dependencies.md +changelog.d/20260107_apply_best_practices.md +changelog.d/20260509_031015_human_readable_release_titles.md +changelog.d/20260311_translate_scripts_to_rust.md +changelog.d/20260413_fix_crates_io_check.md +changelog.d/20251227_224645_changeset_support.md +changelog.d/20260503_111700_file_size_warning_threshold.md +changelog.d/20260108_apply_lino_objects_codec_fixes.md +changelog.d/20260111_multi_language_support.md +changelog.d/20260108_171124_fix_changelog_check.md +scripts/get-bump-type.rs +scripts/check-release-needed.rs +scripts/check-changelog-fragment.rs +scripts/check-file-size.rs +scripts/git-config.rs +scripts/create-changelog-fragment.rs +scripts/wait-for-crate.rs +scripts/publish-crate.rs +scripts/detect-code-changes.rs +scripts/collect-changelog.rs +scripts/rust-paths.rs +scripts/get-version.rs +scripts/check-version-modification.rs +scripts/bump-version.rs +scripts/create-github-release.rs +scripts/version-and-commit.rs +src/lib.rs +src/sum.rs +src/main.rs +examples/basic_usage.rs +CHANGELOG.md +.github/workflows/release.yml +LICENSE +experiments/test-version-check-dependencies.sh +experiments/test-changelog-parsing.rs +experiments/test-detect-code-changes.sh +experiments/test-version-check.sh +experiments/test-crates-io-check.rs +tests/integration/sum.rs +tests/integration/mod.rs +tests/unit/ci-cd/mod.rs +tests/unit/ci-cd/workspace_manifest_resolution.rs +tests/unit/ci-cd/changelog_parsing.rs +tests/unit/ci-cd/workflow_release.rs +tests/unit/sum.rs +tests/unit/mod.rs +.pre-commit-config.yaml +CONTRIBUTING.md +.gitignore +Cargo.lock diff --git a/docs/case-studies/issue-77/evidence/template-rust-release.yml b/docs/case-studies/issue-77/evidence/template-rust-release.yml new file mode 100644 index 0000000..c3afcd9 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/template-rust-release.yml @@ -0,0 +1,657 @@ +name: CI/CD Pipeline + +on: + push: + branches: + - main + pull_request: + types: [opened, synchronize, reopened] + workflow_dispatch: + inputs: + release_mode: + description: 'Manual release mode' + required: true + type: choice + default: 'instant' + options: + - instant + - changelog-pr + bump_type: + description: 'Version bump type' + required: true + type: choice + options: + - patch + - minor + - major + description: + description: 'Release description (optional)' + required: false + type: string + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref == 'refs/heads/main' }} + +env: + CARGO_TERM_COLOR: always + RUSTFLAGS: -Dwarnings + # Support both CARGO_REGISTRY_TOKEN (cargo's native env var) and CARGO_TOKEN (for backwards compatibility) + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN || secrets.CARGO_TOKEN }} + CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} + # Optional: set repository variable DOCKERHUB_IMAGE to namespace/image to publish Docker Hub releases. + DOCKERHUB_IMAGE: ${{ vars.DOCKERHUB_IMAGE }} + +jobs: + # === DETECT CHANGES - determines which jobs should run === + detect-changes: + name: Detect Changes + runs-on: ubuntu-latest + timeout-minutes: 5 + if: github.event_name != 'workflow_dispatch' + outputs: + rs-changed: ${{ steps.changes.outputs.rs-changed }} + toml-changed: ${{ steps.changes.outputs.toml-changed }} + docs-changed: ${{ steps.changes.outputs.docs-changed }} + workflow-changed: ${{ steps.changes.outputs.workflow-changed }} + any-code-changed: ${{ steps.changes.outputs.any-code-changed }} + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Install rust-script + run: cargo install rust-script + + - name: Detect changes + id: changes + env: + GITHUB_EVENT_NAME: ${{ github.event_name }} + run: rust-script scripts/detect-code-changes.rs + + # === CHANGELOG CHECK - only runs on PRs with code changes === + # Docs-only PRs (./docs folder, markdown files) don't require changelog fragments + changelog: + name: Changelog Fragment Check + runs-on: ubuntu-latest + timeout-minutes: 10 + needs: [detect-changes] + if: github.event_name == 'pull_request' && needs.detect-changes.outputs.any-code-changed == 'true' + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Install rust-script + run: cargo install rust-script + + - name: Check for changelog fragments + env: + GITHUB_BASE_REF: ${{ github.base_ref }} + run: rust-script scripts/check-changelog-fragment.rs + + # === VERSION CHECK - prevents manual version modification in PRs === + # This ensures versions are only modified by the automated release pipeline + version-check: + name: Version Modification Check + runs-on: ubuntu-latest + timeout-minutes: 5 + if: github.event_name == 'pull_request' + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Install rust-script + run: cargo install rust-script + + - name: Check for manual version changes + env: + GITHUB_EVENT_NAME: ${{ github.event_name }} + GITHUB_HEAD_REF: ${{ github.head_ref }} + GITHUB_BASE_REF: ${{ github.base_ref }} + run: rust-script scripts/check-version-modification.rs + + # === LINT AND FORMAT CHECK === + # Lint runs independently of changelog check - it's a fast check that should always run + # See: https://github.com/link-assistant/hive-mind/pull/1024 for why this dependency was removed + lint: + name: Lint and Format Check + runs-on: ubuntu-latest + timeout-minutes: 10 + needs: [detect-changes] + # Note: always() is required because detect-changes is skipped on workflow_dispatch, + # and without always(), this job would also be skipped even though its condition includes workflow_dispatch. + # See: https://github.com/actions/runner/issues/491 + if: | + always() && !cancelled() && ( + github.event_name == 'push' || + github.event_name == 'workflow_dispatch' || + needs.detect-changes.outputs.rs-changed == 'true' || + needs.detect-changes.outputs.toml-changed == 'true' || + needs.detect-changes.outputs.docs-changed == 'true' || + needs.detect-changes.outputs.workflow-changed == 'true' + ) + steps: + - uses: actions/checkout@v6 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + with: + components: rustfmt, clippy + + - name: Install rust-script + run: cargo install rust-script + + - name: Cache cargo registry + uses: actions/cache@v5 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} + restore-keys: | + ${{ runner.os }}-cargo- + + - name: Check formatting + run: cargo fmt --all -- --check + + - name: Run Clippy + run: cargo clippy --all-targets --all-features + + - name: Check file size limit + run: rust-script scripts/check-file-size.rs + + # === TEST === + # Test runs independently of changelog check + test: + name: Test (${{ matrix.os }}) + runs-on: ${{ matrix.os }} + timeout-minutes: 10 + needs: [detect-changes, changelog] + # Run if: push event, OR changelog succeeded, OR changelog was skipped (docs-only PR) + if: always() && !cancelled() && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || needs.changelog.result == 'success' || needs.changelog.result == 'skipped') + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + steps: + - uses: actions/checkout@v6 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Cache cargo registry + uses: actions/cache@v5 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} + restore-keys: | + ${{ runner.os }}-cargo- + + - name: Run tests + run: cargo test --all-features --verbose + + - name: Run doc tests + run: cargo test --doc --verbose + + # === CODE COVERAGE === + # Generate and upload code coverage using cargo-llvm-cov + coverage: + name: Code Coverage + runs-on: ubuntu-latest + timeout-minutes: 15 + needs: [detect-changes] + if: | + always() && !cancelled() && ( + github.event_name == 'push' || + github.event_name == 'workflow_dispatch' || + needs.detect-changes.outputs.rs-changed == 'true' || + needs.detect-changes.outputs.toml-changed == 'true' + ) + steps: + - uses: actions/checkout@v6 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + with: + components: llvm-tools-preview + + - name: Cache cargo registry + uses: actions/cache@v5 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ runner.os }}-cargo-coverage-${{ hashFiles('**/Cargo.lock') }} + restore-keys: | + ${{ runner.os }}-cargo-coverage- + + - name: Install cargo-llvm-cov + uses: taiki-e/install-action@cargo-llvm-cov + + - name: Generate code coverage + run: cargo llvm-cov --all-features --lcov --output-path lcov.info + + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v5 + with: + files: lcov.info + fail_ci_if_error: false + + # === BUILD === + # Build package - only runs if lint and test pass + build: + name: Build Package + runs-on: ubuntu-latest + timeout-minutes: 10 + needs: [lint, test] + if: always() && !cancelled() && needs.lint.result == 'success' && needs.test.result == 'success' + steps: + - uses: actions/checkout@v6 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Cache cargo registry + uses: actions/cache@v5 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ runner.os }}-cargo-build-${{ hashFiles('**/Cargo.lock') }} + restore-keys: | + ${{ runner.os }}-cargo-build- + + - name: Build release + run: cargo build --release --verbose + + - name: Check package + run: cargo package --list --allow-dirty + + # === AUTO RELEASE === + # Automatic release on push to main using changelog fragments + # This job automatically bumps version based on fragments in changelog.d/ + auto-release: + name: Auto Release + needs: [lint, test, build] + # Note: always() ensures consistent behavior with other jobs that depend on jobs using always(). + if: | + always() && !cancelled() && + github.event_name == 'push' && + github.ref == 'refs/heads/main' && + needs.build.result == 'success' + runs-on: ubuntu-latest + timeout-minutes: 30 + env: + DOCKERHUB_USERNAME: ${{ vars.DOCKERHUB_USERNAME || secrets.DOCKERHUB_USERNAME }} + DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} + permissions: + contents: write + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Install rust-script + run: cargo install rust-script + + - name: Configure git + run: rust-script scripts/git-config.rs + + - name: Determine bump type from changelog fragments + id: bump_type + run: rust-script scripts/get-bump-type.rs + + - name: Check if version already released or no fragments + id: check + env: + HAS_FRAGMENTS: ${{ steps.bump_type.outputs.has_fragments }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: rust-script scripts/check-release-needed.rs + + - name: Collect changelog and bump version + id: version + if: steps.check.outputs.should_release == 'true' && steps.check.outputs.skip_bump != 'true' + run: | + rust-script scripts/version-and-commit.rs \ + --bump-type "${{ steps.bump_type.outputs.bump_type }}" + + - name: Get current version + id: current_version + if: steps.check.outputs.should_release == 'true' + run: rust-script scripts/get-version.rs + + - name: Build release + if: steps.check.outputs.should_release == 'true' + run: cargo build --release + + - name: Publish to Crates.io + if: steps.check.outputs.should_release == 'true' && steps.check.outputs.crate_published != 'true' + id: publish-crate + env: + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN || secrets.CARGO_TOKEN }} + CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} + run: rust-script scripts/publish-crate.rs + + - name: Wait for Crate availability on Crates.io + if: steps.check.outputs.should_release == 'true' + run: rust-script scripts/wait-for-crate.rs --release-version "${{ steps.current_version.outputs.version }}" + + - name: Configure Docker Hub publishing + if: steps.check.outputs.should_release == 'true' + id: dockerhub + run: | + disable_dockerhub() { + echo "enabled=false" >> "$GITHUB_OUTPUT" + echo "$1" + } + + if [ -z "$DOCKERHUB_IMAGE" ]; then + disable_dockerhub "Docker Hub publishing disabled: DOCKERHUB_IMAGE repository variable is not set" + exit 0 + fi + + if [ ! -f Dockerfile ]; then + disable_dockerhub "Docker Hub publishing disabled: Dockerfile was not found at repository root" + exit 0 + fi + + if [ -z "$DOCKERHUB_USERNAME" ] || [ -z "$DOCKERHUB_TOKEN" ]; then + echo "::error::Docker Hub publishing requires DOCKERHUB_USERNAME and DOCKERHUB_TOKEN" + echo "Set DOCKERHUB_USERNAME as a repository variable or secret, and DOCKERHUB_TOKEN as a secret." + exit 1 + fi + + echo "enabled=true" >> "$GITHUB_OUTPUT" + echo "docker_hub_url=https://hub.docker.com/r/${DOCKERHUB_IMAGE}" >> "$GITHUB_OUTPUT" + + - name: Log in to Docker Hub + if: steps.dockerhub.outputs.enabled == 'true' + uses: docker/login-action@v4 + with: + username: ${{ env.DOCKERHUB_USERNAME }} + password: ${{ env.DOCKERHUB_TOKEN }} + + - name: Set up Docker Buildx + if: steps.dockerhub.outputs.enabled == 'true' + uses: docker/setup-buildx-action@v4 + + - name: Extract Docker metadata + if: steps.dockerhub.outputs.enabled == 'true' + id: docker-meta + uses: docker/metadata-action@v6 + with: + images: ${{ env.DOCKERHUB_IMAGE }} + tags: | + type=raw,value=latest + type=raw,value=${{ steps.current_version.outputs.version }} + labels: | + org.opencontainers.image.version=${{ steps.current_version.outputs.version }} + + - name: Publish Docker image to Docker Hub + if: steps.dockerhub.outputs.enabled == 'true' + uses: docker/build-push-action@v7 + with: + context: . + push: true + tags: ${{ steps.docker-meta.outputs.tags }} + labels: ${{ steps.docker-meta.outputs.labels }} + + - name: Create GitHub Release + if: steps.check.outputs.should_release == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + DOCKER_HUB_URL: ${{ steps.dockerhub.outputs.docker_hub_url }} + run: | + # Use new_version from version-and-commit when available (tag-checked), else fall back to Cargo.toml version + RELEASE_VERSION="${{ steps.version.outputs.new_version }}" + if [ -z "$RELEASE_VERSION" ]; then + RELEASE_VERSION="${{ steps.current_version.outputs.version }}" + fi + + release_args=( + --release-version "$RELEASE_VERSION" + --repository "${{ github.repository }}" + ) + if [ -n "$DOCKER_HUB_URL" ]; then + release_args+=(--docker-hub-url "$DOCKER_HUB_URL") + fi + rust-script scripts/create-github-release.rs "${release_args[@]}" + + # === MANUAL INSTANT RELEASE === + # Manual release via workflow_dispatch - only after CI passes + manual-release: + name: Instant Release + needs: [lint, test, build] + # Note: always() is required to evaluate the condition when dependencies use always(). + # The build job ensures lint and test passed before this job runs. + if: | + always() && !cancelled() && + github.event_name == 'workflow_dispatch' && + github.event.inputs.release_mode == 'instant' && + needs.build.result == 'success' + runs-on: ubuntu-latest + timeout-minutes: 30 + env: + DOCKERHUB_USERNAME: ${{ vars.DOCKERHUB_USERNAME || secrets.DOCKERHUB_USERNAME }} + DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} + permissions: + contents: write + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Install rust-script + run: cargo install rust-script + + - name: Configure git + run: rust-script scripts/git-config.rs + + - name: Collect changelog fragments + run: rust-script scripts/collect-changelog.rs + + - name: Version and commit + id: version + env: + BUMP_TYPE: ${{ github.event.inputs.bump_type }} + DESCRIPTION: ${{ github.event.inputs.description }} + run: rust-script scripts/version-and-commit.rs --bump-type "${{ github.event.inputs.bump_type }}" --description "${{ github.event.inputs.description }}" + + - name: Build release + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + run: cargo build --release + + - name: Publish to Crates.io + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + id: publish-crate + env: + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN || secrets.CARGO_TOKEN }} + CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} + run: rust-script scripts/publish-crate.rs + + - name: Wait for Crate availability on Crates.io + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + run: rust-script scripts/wait-for-crate.rs --release-version "${{ steps.version.outputs.new_version }}" + + - name: Configure Docker Hub publishing + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + id: dockerhub + run: | + disable_dockerhub() { + echo "enabled=false" >> "$GITHUB_OUTPUT" + echo "$1" + } + + if [ -z "$DOCKERHUB_IMAGE" ]; then + disable_dockerhub "Docker Hub publishing disabled: DOCKERHUB_IMAGE repository variable is not set" + exit 0 + fi + + if [ ! -f Dockerfile ]; then + disable_dockerhub "Docker Hub publishing disabled: Dockerfile was not found at repository root" + exit 0 + fi + + if [ -z "$DOCKERHUB_USERNAME" ] || [ -z "$DOCKERHUB_TOKEN" ]; then + echo "::error::Docker Hub publishing requires DOCKERHUB_USERNAME and DOCKERHUB_TOKEN" + echo "Set DOCKERHUB_USERNAME as a repository variable or secret, and DOCKERHUB_TOKEN as a secret." + exit 1 + fi + + echo "enabled=true" >> "$GITHUB_OUTPUT" + echo "docker_hub_url=https://hub.docker.com/r/${DOCKERHUB_IMAGE}" >> "$GITHUB_OUTPUT" + + - name: Log in to Docker Hub + if: steps.dockerhub.outputs.enabled == 'true' + uses: docker/login-action@v4 + with: + username: ${{ env.DOCKERHUB_USERNAME }} + password: ${{ env.DOCKERHUB_TOKEN }} + + - name: Set up Docker Buildx + if: steps.dockerhub.outputs.enabled == 'true' + uses: docker/setup-buildx-action@v4 + + - name: Extract Docker metadata + if: steps.dockerhub.outputs.enabled == 'true' + id: docker-meta + uses: docker/metadata-action@v6 + with: + images: ${{ env.DOCKERHUB_IMAGE }} + tags: | + type=raw,value=latest + type=raw,value=${{ steps.version.outputs.new_version }} + labels: | + org.opencontainers.image.version=${{ steps.version.outputs.new_version }} + + - name: Publish Docker image to Docker Hub + if: steps.dockerhub.outputs.enabled == 'true' + uses: docker/build-push-action@v7 + with: + context: . + push: true + tags: ${{ steps.docker-meta.outputs.tags }} + labels: ${{ steps.docker-meta.outputs.labels }} + + - name: Create GitHub Release + if: steps.version.outputs.version_committed == 'true' || steps.version.outputs.already_released == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + DOCKER_HUB_URL: ${{ steps.dockerhub.outputs.docker_hub_url }} + run: | + release_args=( + --release-version "${{ steps.version.outputs.new_version }}" + --repository "${{ github.repository }}" + ) + if [ -n "$DOCKER_HUB_URL" ]; then + release_args+=(--docker-hub-url "$DOCKER_HUB_URL") + fi + rust-script scripts/create-github-release.rs "${release_args[@]}" + + # === MANUAL CHANGELOG PR === + changelog-pr: + name: Create Changelog PR + if: github.event_name == 'workflow_dispatch' && github.event.inputs.release_mode == 'changelog-pr' + runs-on: ubuntu-latest + timeout-minutes: 10 + permissions: + contents: write + pull-requests: write + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Install rust-script + run: cargo install rust-script + + - name: Create changelog fragment + env: + BUMP_TYPE: ${{ github.event.inputs.bump_type }} + DESCRIPTION: ${{ github.event.inputs.description }} + run: rust-script scripts/create-changelog-fragment.rs --bump-type "${{ github.event.inputs.bump_type }}" --description "${{ github.event.inputs.description }}" + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v8 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: 'chore: add changelog for manual ${{ github.event.inputs.bump_type }} release' + branch: changelog-manual-release-${{ github.run_id }} + delete-branch: true + title: 'chore: manual ${{ github.event.inputs.bump_type }} release' + body: | + ## Manual Release Request + + This PR was created by a manual workflow trigger to prepare a **${{ github.event.inputs.bump_type }}** release. + + ### Release Details + - **Type:** ${{ github.event.inputs.bump_type }} + - **Description:** ${{ github.event.inputs.description || 'Manual release' }} + - **Triggered by:** @${{ github.actor }} + + ### Next Steps + 1. Review the changelog fragment in this PR + 2. Merge this PR to main + 3. The automated release workflow will publish to crates.io and create a GitHub release + + # === DEPLOY DOCUMENTATION === + # Deploy Rust API documentation to GitHub Pages after a successful package build. + # Keep this independent from package/GitHub release publication so the website + # still updates when the release path fails. + deploy-docs: + name: Deploy Rust Documentation + needs: [build] + if: | + !cancelled() && + needs.build.result == 'success' && ( + (github.event_name == 'push' && github.ref == 'refs/heads/main') || + (github.event_name == 'workflow_dispatch' && github.event.inputs.release_mode == 'instant') + ) + runs-on: ubuntu-latest + timeout-minutes: 15 + permissions: + contents: write + steps: + - uses: actions/checkout@v6 + with: + ref: main + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + + - name: Build documentation + run: cargo doc --no-deps --all-features + + - name: Deploy to GitHub Pages + uses: peaceiris/actions-gh-pages@v4 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: target/doc diff --git a/docs/case-studies/issue-77/evidence/webassembly-25245349330-log.txt b/docs/case-studies/issue-77/evidence/webassembly-25245349330-log.txt new file mode 100644 index 0000000..b117100 --- /dev/null +++ b/docs/case-studies/issue-77/evidence/webassembly-25245349330-log.txt @@ -0,0 +1,1992 @@ +Test UNKNOWN STEP 2026-05-02T06:01:33.5866948Z Current runner version: '2.334.0' +Test UNKNOWN STEP 2026-05-02T06:01:33.5891709Z ##[group]Runner Image Provisioner +Test UNKNOWN STEP 2026-05-02T06:01:33.5892525Z Hosted Compute Agent +Test UNKNOWN STEP 2026-05-02T06:01:33.5893024Z Version: 20260213.493 +Test UNKNOWN STEP 2026-05-02T06:01:33.5893693Z Commit: 5c115507f6dd24b8de37d8bbe0bb4509d0cc0fa3 +Test UNKNOWN STEP 2026-05-02T06:01:33.5894568Z Build Date: 2026-02-13T00:28:41Z +Test UNKNOWN STEP 2026-05-02T06:01:33.5895253Z Worker ID: {ac8dc53f-7dd1-4813-91ed-34220c6f6367} +Test UNKNOWN STEP 2026-05-02T06:01:33.5895966Z Azure Region: westus +Test UNKNOWN STEP 2026-05-02T06:01:33.5896501Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:33.5897926Z ##[group]Operating System +Test UNKNOWN STEP 2026-05-02T06:01:33.5898968Z Ubuntu +Test UNKNOWN STEP 2026-05-02T06:01:33.5899456Z 24.04.4 +Test UNKNOWN STEP 2026-05-02T06:01:33.5899915Z LTS +Test UNKNOWN STEP 2026-05-02T06:01:33.5900412Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:33.5900865Z ##[group]Runner Image +Test UNKNOWN STEP 2026-05-02T06:01:33.5901411Z Image: ubuntu-24.04 +Test UNKNOWN STEP 2026-05-02T06:01:33.5901910Z Version: 20260413.86.1 +Test UNKNOWN STEP 2026-05-02T06:01:33.5903140Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260413.86/images/ubuntu/Ubuntu2404-Readme.md +Test UNKNOWN STEP 2026-05-02T06:01:33.5904844Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260413.86 +Test UNKNOWN STEP 2026-05-02T06:01:33.5905739Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:33.5906738Z ##[group]GITHUB_TOKEN Permissions +Test UNKNOWN STEP 2026-05-02T06:01:33.5908741Z Contents: read +Test UNKNOWN STEP 2026-05-02T06:01:33.5909347Z Metadata: read +Test UNKNOWN STEP 2026-05-02T06:01:33.5909914Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:33.5912463Z Secret source: Actions +Test UNKNOWN STEP 2026-05-02T06:01:33.5913256Z Prepare workflow directory +Test UNKNOWN STEP 2026-05-02T06:01:33.6258350Z Prepare all required actions +Test UNKNOWN STEP 2026-05-02T06:01:33.6298484Z Getting action download info +Test UNKNOWN STEP 2026-05-02T06:01:34.2193210Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Test UNKNOWN STEP 2026-05-02T06:01:34.3476190Z Download action repository 'dtolnay/rust-toolchain@stable' (SHA:29eef336d9b2848a0b548edc03f92a220660cdb8) +Test UNKNOWN STEP 2026-05-02T06:01:34.5597010Z Download action repository 'actions/setup-node@v4' (SHA:49933ea5288caeca8642d1e84afbd3f7d6820020) +Test UNKNOWN STEP 2026-05-02T06:01:34.6451804Z Download action repository 'actions/cache@v4' (SHA:0057852bfaa89a56745cba8c7296529d2fc39830) +Test UNKNOWN STEP 2026-05-02T06:01:34.7380946Z Download action repository 'actions/upload-artifact@v4' (SHA:ea165f8d65b6e75b540449e92b4886f43607fa02) +Test UNKNOWN STEP 2026-05-02T06:01:34.9893586Z Complete job name: Test +Test UNKNOWN STEP 2026-05-02T06:01:35.0695184Z ##[group]Run actions/checkout@v4 +Test UNKNOWN STEP 2026-05-02T06:01:35.0696166Z with: +Test UNKNOWN STEP 2026-05-02T06:01:35.0696612Z repository: link-foundation/link-cli +Test UNKNOWN STEP 2026-05-02T06:01:35.0697390Z token: *** +Test UNKNOWN STEP 2026-05-02T06:01:35.0697807Z ssh-strict: true +Test UNKNOWN STEP 2026-05-02T06:01:35.0698218Z ssh-user: git +Test UNKNOWN STEP 2026-05-02T06:01:35.0698648Z persist-credentials: true +Test UNKNOWN STEP 2026-05-02T06:01:35.0699123Z clean: true +Test UNKNOWN STEP 2026-05-02T06:01:35.0699547Z sparse-checkout-cone-mode: true +Test UNKNOWN STEP 2026-05-02T06:01:35.0700062Z fetch-depth: 1 +Test UNKNOWN STEP 2026-05-02T06:01:35.0700463Z fetch-tags: false +Test UNKNOWN STEP 2026-05-02T06:01:35.0700880Z show-progress: true +Test UNKNOWN STEP 2026-05-02T06:01:35.0701292Z lfs: false +Test UNKNOWN STEP 2026-05-02T06:01:35.0701705Z submodules: false +Test UNKNOWN STEP 2026-05-02T06:01:35.0702156Z set-safe-directory: true +Test UNKNOWN STEP 2026-05-02T06:01:35.0702913Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.1852133Z Syncing repository: link-foundation/link-cli +Test UNKNOWN STEP 2026-05-02T06:01:35.1854042Z ##[group]Getting Git version info +Test UNKNOWN STEP 2026-05-02T06:01:35.1855098Z Working directory is '/home/runner/work/link-cli/link-cli' +Test UNKNOWN STEP 2026-05-02T06:01:35.1856189Z [command]/usr/bin/git version +Test UNKNOWN STEP 2026-05-02T06:01:35.1889726Z git version 2.53.0 +Test UNKNOWN STEP 2026-05-02T06:01:35.1926431Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.1942472Z Temporarily overriding HOME='/home/runner/work/_temp/42ea9fbc-0436-4eb0-8703-125c12e040d6' before making global git config changes +Test UNKNOWN STEP 2026-05-02T06:01:35.1944021Z Adding repository directory to the temporary git global config as a safe directory +Test UNKNOWN STEP 2026-05-02T06:01:35.1948676Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Test UNKNOWN STEP 2026-05-02T06:01:35.1985268Z Deleting the contents of '/home/runner/work/link-cli/link-cli' +Test UNKNOWN STEP 2026-05-02T06:01:35.1989322Z ##[group]Initializing the repository +Test UNKNOWN STEP 2026-05-02T06:01:35.1993492Z [command]/usr/bin/git init /home/runner/work/link-cli/link-cli +Test UNKNOWN STEP 2026-05-02T06:01:35.2079214Z hint: Using 'master' as the name for the initial branch. This default branch name +Test UNKNOWN STEP 2026-05-02T06:01:35.2081168Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Test UNKNOWN STEP 2026-05-02T06:01:35.2082472Z hint: to use in all of your new repositories, which will suppress this warning, +Test UNKNOWN STEP 2026-05-02T06:01:35.2083771Z hint: call: +Test UNKNOWN STEP 2026-05-02T06:01:35.2084774Z hint: +Test UNKNOWN STEP 2026-05-02T06:01:35.2085648Z hint: git config --global init.defaultBranch +Test UNKNOWN STEP 2026-05-02T06:01:35.2086718Z hint: +Test UNKNOWN STEP 2026-05-02T06:01:35.2087717Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Test UNKNOWN STEP 2026-05-02T06:01:35.2089463Z hint: 'development'. The just-created branch can be renamed via this command: +Test UNKNOWN STEP 2026-05-02T06:01:35.2090497Z hint: +Test UNKNOWN STEP 2026-05-02T06:01:35.2090913Z hint: git branch -m +Test UNKNOWN STEP 2026-05-02T06:01:35.2091366Z hint: +Test UNKNOWN STEP 2026-05-02T06:01:35.2091978Z hint: Disable this message with "git config set advice.defaultBranchName false" +Test UNKNOWN STEP 2026-05-02T06:01:35.2093270Z Initialized empty Git repository in /home/runner/work/link-cli/link-cli/.git/ +Test UNKNOWN STEP 2026-05-02T06:01:35.2127820Z [command]/usr/bin/git remote add origin https://github.com/link-foundation/link-cli +Test UNKNOWN STEP 2026-05-02T06:01:35.2129865Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.2130655Z ##[group]Disabling automatic garbage collection +Test UNKNOWN STEP 2026-05-02T06:01:35.2133237Z [command]/usr/bin/git config --local gc.auto 0 +Test UNKNOWN STEP 2026-05-02T06:01:35.2164966Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.2165685Z ##[group]Setting up auth +Test UNKNOWN STEP 2026-05-02T06:01:35.2173099Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Test UNKNOWN STEP 2026-05-02T06:01:35.2207955Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Test UNKNOWN STEP 2026-05-02T06:01:35.2495506Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test UNKNOWN STEP 2026-05-02T06:01:35.2526499Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Test UNKNOWN STEP 2026-05-02T06:01:35.2752429Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Test UNKNOWN STEP 2026-05-02T06:01:35.2795271Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Test UNKNOWN STEP 2026-05-02T06:01:35.3025540Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Test UNKNOWN STEP 2026-05-02T06:01:35.3062083Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.3063900Z ##[group]Fetching the repository +Test UNKNOWN STEP 2026-05-02T06:01:35.3073914Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +26050750382b801a4d9f33d1445627e2db2b7867:refs/remotes/origin/main +Test UNKNOWN STEP 2026-05-02T06:01:35.8546166Z From https://github.com/link-foundation/link-cli +Test UNKNOWN STEP 2026-05-02T06:01:35.8547847Z * [new ref] 26050750382b801a4d9f33d1445627e2db2b7867 -> origin/main +Test UNKNOWN STEP 2026-05-02T06:01:35.8574928Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.8575752Z ##[group]Determining the checkout info +Test UNKNOWN STEP 2026-05-02T06:01:35.8577206Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.8582131Z [command]/usr/bin/git sparse-checkout disable +Test UNKNOWN STEP 2026-05-02T06:01:35.8619387Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig +Test UNKNOWN STEP 2026-05-02T06:01:35.8643775Z ##[group]Checking out the ref +Test UNKNOWN STEP 2026-05-02T06:01:35.8647877Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main +Test UNKNOWN STEP 2026-05-02T06:01:35.8777217Z Switched to a new branch 'main' +Test UNKNOWN STEP 2026-05-02T06:01:35.8779157Z branch 'main' set up to track 'origin/main'. +Test UNKNOWN STEP 2026-05-02T06:01:35.8786536Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.8820345Z [command]/usr/bin/git log -1 --format=%H +Test UNKNOWN STEP 2026-05-02T06:01:35.8841731Z 26050750382b801a4d9f33d1445627e2db2b7867 +Test UNKNOWN STEP 2026-05-02T06:01:35.9284919Z ##[group]Run dtolnay/rust-toolchain@stable +Test UNKNOWN STEP 2026-05-02T06:01:35.9285589Z with: +Test UNKNOWN STEP 2026-05-02T06:01:35.9285998Z targets: wasm32-unknown-unknown +Test UNKNOWN STEP 2026-05-02T06:01:35.9286769Z toolchain: stable +Test UNKNOWN STEP 2026-05-02T06:01:35.9287177Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.9422876Z ##[group]Run : parse toolchain version +Test UNKNOWN STEP 2026-05-02T06:01:35.9423564Z ^[[36;1m: parse toolchain version^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9424123Z ^[[36;1mif [[ -z $toolchain ]]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9425314Z ^[[36;1m # GitHub does not enforce `required: true` inputs itself. https://github.com/actions/runner/issues/1070^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9426348Z ^[[36;1m echo "'toolchain' is a required input" >&2^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9426932Z ^[[36;1m exit 1^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9427566Z ^[[36;1melif [[ $toolchain =~ ^stable' '[0-9]+' '(year|month|week|day)s?' 'ago$ ]]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9428333Z ^[[36;1m if [[ Linux == macOS ]]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9429341Z ^[[36;1m echo "toolchain=1.$((($(date -v-$(sed 's/stable \([0-9]*\) \(.\).*/\1\2/' <<< $toolchain) +%s)/60/60/24-16569)/7/6))" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9430263Z ^[[36;1m else^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9431057Z ^[[36;1m echo "toolchain=1.$((($(date --date "${toolchain#stable }" +%s)/60/60/24-16569)/7/6))" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9431916Z ^[[36;1m fi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9432483Z ^[[36;1melif [[ $toolchain =~ ^stable' 'minus' '[0-9]+' 'releases?$ ]]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9433460Z ^[[36;1m echo "toolchain=1.$((($(date +%s)/60/60/24-16569)/7/6-${toolchain//[^0-9]/}))" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9434455Z ^[[36;1melif [[ $toolchain =~ ^1\.[0-9]+$ ]]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9435433Z ^[[36;1m echo "toolchain=1.$((i=${toolchain#1.}, c=($(date +%s)/60/60/24-16569)/7/6, i+9*i*(10*i<=c)+90*i*(100*i<=c)))" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9436336Z ^[[36;1melse^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9436818Z ^[[36;1m echo "toolchain=$toolchain" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9437404Z ^[[36;1mfi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9463938Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:35.9465037Z env: +Test UNKNOWN STEP 2026-05-02T06:01:35.9465433Z toolchain: stable +Test UNKNOWN STEP 2026-05-02T06:01:35.9465853Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.9615504Z ##[group]Run : construct rustup command line +Test UNKNOWN STEP 2026-05-02T06:01:35.9616140Z ^[[36;1m: construct rustup command line^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9616962Z ^[[36;1mecho "targets=$(for t in ${targets//,/ }; do echo -n ' --target' $t; done)" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9618108Z ^[[36;1mecho "components=$(for c in ${components//,/ }; do echo -n ' --component' $c; done)" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9619021Z ^[[36;1mecho "downgrade=" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9641213Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:35.9641852Z env: +Test UNKNOWN STEP 2026-05-02T06:01:35.9642255Z targets: wasm32-unknown-unknown +Test UNKNOWN STEP 2026-05-02T06:01:35.9642741Z components: +Test UNKNOWN STEP 2026-05-02T06:01:35.9643155Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.9734074Z ##[group]Run : set $CARGO_HOME +Test UNKNOWN STEP 2026-05-02T06:01:35.9734935Z ^[[36;1m: set $CARGO_HOME^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9735565Z ^[[36;1mecho CARGO_HOME=${CARGO_HOME:-"$HOME/.cargo"} >> $GITHUB_ENV^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9757102Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:35.9757775Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.9847407Z ##[group]Run : install rustup if needed +Test UNKNOWN STEP 2026-05-02T06:01:35.9848000Z ^[[36;1m: install rustup if needed^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9848575Z ^[[36;1mif ! command -v rustup &>/dev/null; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9849912Z ^[[36;1m curl --proto '=https' --tlsv1.2 --retry 10 --retry-connrefused --location --silent --show-error --fail https://sh.rustup.rs | sh -s -- --default-toolchain none -y^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9851235Z ^[[36;1m echo "$CARGO_HOME/bin" >> $GITHUB_PATH^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9851817Z ^[[36;1mfi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:35.9872731Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:35.9873358Z env: +Test UNKNOWN STEP 2026-05-02T06:01:35.9873965Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:35.9874672Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:35.9996864Z ##[group]Run rustup toolchain install stable --target wasm32-unknown-unknown --profile minimal --no-self-update +Test UNKNOWN STEP 2026-05-02T06:01:35.9999934Z ^[[36;1mrustup toolchain install stable --target wasm32-unknown-unknown --profile minimal --no-self-update^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:36.0032725Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:36.0033775Z env: +Test UNKNOWN STEP 2026-05-02T06:01:36.0034681Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:36.0035530Z RUSTUP_PERMIT_COPY_RENAME: 1 +Test UNKNOWN STEP 2026-05-02T06:01:36.0036333Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:36.1510082Z info: syncing channel updates for stable-x86_64-unknown-linux-gnu +Test UNKNOWN STEP 2026-05-02T06:01:36.2292128Z info: latest update on 2026-04-16 for version 1.95.0 (59807616e 2026-04-14) +Test UNKNOWN STEP 2026-05-02T06:01:36.2420296Z info: removing previous version of component clippy +Test UNKNOWN STEP 2026-05-02T06:01:36.2435025Z info: removing previous version of component rustfmt +Test UNKNOWN STEP 2026-05-02T06:01:36.2446356Z info: removing previous version of component cargo +Test UNKNOWN STEP 2026-05-02T06:01:36.2491516Z info: removing previous version of component rust-std +Test UNKNOWN STEP 2026-05-02T06:01:36.2538280Z info: removing previous version of component rustc +Test UNKNOWN STEP 2026-05-02T06:01:36.2589948Z info: downloading 6 components +Test UNKNOWN STEP 2026-05-02T06:01:46.5023827Z +Test UNKNOWN STEP 2026-05-02T06:01:46.5104098Z stable-x86_64-unknown-linux-gnu updated - rustc 1.95.0 (59807616e 2026-04-14) (from rustc 1.94.1 (e408947bf 2026-03-25)) +Test UNKNOWN STEP 2026-05-02T06:01:46.5105402Z +Test UNKNOWN STEP 2026-05-02T06:01:46.5208065Z ##[group]Run rustup default stable +Test UNKNOWN STEP 2026-05-02T06:01:46.5208397Z ^[[36;1mrustup default stable^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5231155Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.5231515Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.5231743Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.5232021Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.5331130Z info: using existing install for stable-x86_64-unknown-linux-gnu +Test UNKNOWN STEP 2026-05-02T06:01:46.5337488Z info: default toolchain set to stable-x86_64-unknown-linux-gnu +Test UNKNOWN STEP 2026-05-02T06:01:46.5338076Z +Test UNKNOWN STEP 2026-05-02T06:01:46.5408335Z stable-x86_64-unknown-linux-gnu unchanged - rustc 1.95.0 (59807616e 2026-04-14) +Test UNKNOWN STEP 2026-05-02T06:01:46.5409066Z +Test UNKNOWN STEP 2026-05-02T06:01:46.5452021Z ##[group]Run : create cachekey +Test UNKNOWN STEP 2026-05-02T06:01:46.5452370Z ^[[36;1m: create cachekey^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5452899Z ^[[36;1mDATE=$(rustc +stable --version --verbose | sed -ne 's/^commit-date: \(20[0-9][0-9]\)-\([01][0-9]\)-\([0-3][0-9]\)$/\1\2\3/p')^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5453571Z ^[[36;1mHASH=$(rustc +stable --version --verbose | sed -ne 's/^commit-hash: //p')^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5454084Z ^[[36;1mecho "cachekey=$(echo $DATE$HASH | head -c12)" >> $GITHUB_OUTPUT^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5477528Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.5477894Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.5478107Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.5478373Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.5837280Z ##[group]Run : disable incremental compilation +Test UNKNOWN STEP 2026-05-02T06:01:46.5837681Z ^[[36;1m: disable incremental compilation^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5838051Z ^[[36;1mif [ -z "${CARGO_INCREMENTAL+set}" ]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5838414Z ^[[36;1m echo CARGO_INCREMENTAL=0 >> $GITHUB_ENV^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5838723Z ^[[36;1mfi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5860880Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.5861267Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.5861504Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.5861764Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.5931005Z ##[group]Run : enable colors in Cargo output +Test UNKNOWN STEP 2026-05-02T06:01:46.5931348Z ^[[36;1m: enable colors in Cargo output^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5931719Z ^[[36;1mif [ -z "${CARGO_TERM_COLOR+set}" ]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5932071Z ^[[36;1m echo CARGO_TERM_COLOR=always >> $GITHUB_ENV^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5932374Z ^[[36;1mfi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.5953070Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.5953418Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.5953632Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.5954436Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:01:46.5954725Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.6051605Z ##[group]Run : enable Cargo sparse registry +Test UNKNOWN STEP 2026-05-02T06:01:46.6051960Z ^[[36;1m: enable Cargo sparse registry^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6052509Z ^[[36;1m# implemented in 1.66, stabilized in 1.68, made default in 1.70^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6053223Z ^[[36;1mif [ -z "${CARGO_REGISTRIES_CRATES_IO_PROTOCOL+set}" -o -f "/home/runner/work/_temp"/.implicit_cargo_registries_crates_io_protocol ]; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6053962Z ^[[36;1m if rustc +stable --version --verbose | grep -q '^release: 1\.6[89]\.'; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6054838Z ^[[36;1m touch "/home/runner/work/_temp"/.implicit_cargo_registries_crates_io_protocol || true^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6055386Z ^[[36;1m echo CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse >> $GITHUB_ENV^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6055893Z ^[[36;1m elif rustc +stable --version --verbose | grep -q '^release: 1\.6[67]\.'; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6056490Z ^[[36;1m touch "/home/runner/work/_temp"/.implicit_cargo_registries_crates_io_protocol || true^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6057023Z ^[[36;1m echo CARGO_REGISTRIES_CRATES_IO_PROTOCOL=git >> $GITHUB_ENV^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6057384Z ^[[36;1m fi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6057584Z ^[[36;1mfi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6079105Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.6079459Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.6079665Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.6079936Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:01:46.6080167Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:01:46.6080410Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.6413692Z ##[group]Run : work around spurious network errors in curl 8.0 +Test UNKNOWN STEP 2026-05-02T06:01:46.6414434Z ^[[36;1m: work around spurious network errors in curl 8.0^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6415292Z ^[[36;1m# https://rust-lang.zulipchat.com/#narrow/stream/246057-t-cargo/topic/timeout.20investigation^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6415937Z ^[[36;1mif rustc +stable --version --verbose | grep -q '^release: 1\.7[01]\.'; then^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6416429Z ^[[36;1m echo CARGO_HTTP_MULTIPLEXING=false >> $GITHUB_ENV^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6416757Z ^[[36;1mfi^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6439404Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.6439775Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.6439997Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.6440300Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:01:46.6440612Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:01:46.6440847Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.6643213Z ##[group]Run rustc +stable --version --verbose +Test UNKNOWN STEP 2026-05-02T06:01:46.6643597Z ^[[36;1mrustc +stable --version --verbose^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6666875Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.6667238Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.6667448Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.6667717Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:01:46.6667945Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:01:46.6668184Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.6827694Z rustc 1.95.0 (59807616e 2026-04-14) +Test UNKNOWN STEP 2026-05-02T06:01:46.6828497Z binary: rustc +Test UNKNOWN STEP 2026-05-02T06:01:46.6829023Z commit-hash: 59807616e1fa2540724bfbac14d7976d7e4a3860 +Test UNKNOWN STEP 2026-05-02T06:01:46.6829637Z commit-date: 2026-04-14 +Test UNKNOWN STEP 2026-05-02T06:01:46.6830147Z host: x86_64-unknown-linux-gnu +Test UNKNOWN STEP 2026-05-02T06:01:46.6830597Z release: 1.95.0 +Test UNKNOWN STEP 2026-05-02T06:01:46.6830975Z LLVM version: 22.1.2 +Test UNKNOWN STEP 2026-05-02T06:01:46.6910776Z ##[group]Run cargo install wasm-pack --version 0.14.0 --locked +Test UNKNOWN STEP 2026-05-02T06:01:46.6911278Z ^[[36;1mcargo install wasm-pack --version 0.14.0 --locked^[[0m +Test UNKNOWN STEP 2026-05-02T06:01:46.6935279Z shell: /usr/bin/bash -e {0} +Test UNKNOWN STEP 2026-05-02T06:01:46.6935553Z env: +Test UNKNOWN STEP 2026-05-02T06:01:46.6935774Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:01:46.6936055Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:01:46.6936305Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:01:46.6936539Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:01:46.7230912Z ^[[1m^[[92m Updating^[[0m crates.io index +Test UNKNOWN STEP 2026-05-02T06:01:46.7582666Z ^[[1m^[[92m Downloading^[[0m crates ... +Test UNKNOWN STEP 2026-05-02T06:01:46.7947252Z ^[[1m^[[92m Downloaded^[[0m wasm-pack v0.14.0 +Test UNKNOWN STEP 2026-05-02T06:01:46.8364773Z ^[[1m^[[92m Installing^[[0m wasm-pack v0.14.0 +Test UNKNOWN STEP 2026-05-02T06:01:46.8432327Z ^[[1m^[[92m Updating^[[0m crates.io index +Test UNKNOWN STEP 2026-05-02T06:01:47.3670774Z ^[[1m^[[92m Updating^[[0m crates.io index +Test UNKNOWN STEP 2026-05-02T06:01:47.6279773Z ^[[1m^[[92m Downloading^[[0m crates ... +Test UNKNOWN STEP 2026-05-02T06:01:47.6690792Z ^[[1m^[[92m Downloaded^[[0m itoa v1.0.17 +Test UNKNOWN STEP 2026-05-02T06:01:47.6712193Z ^[[1m^[[92m Downloaded^[[0m is_executable v0.1.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.6728961Z ^[[1m^[[92m Downloaded^[[0m cargo-platform v0.3.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.6745502Z ^[[1m^[[92m Downloaded^[[0m camino v1.2.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.6768640Z ^[[1m^[[92m Downloaded^[[0m block-buffer v0.10.4 +Test UNKNOWN STEP 2026-05-02T06:01:47.6783516Z ^[[1m^[[92m Downloaded^[[0m socks v0.3.4 +Test UNKNOWN STEP 2026-05-02T06:01:47.6802215Z ^[[1m^[[92m Downloaded^[[0m serde v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:01:47.6842902Z ^[[1m^[[92m Downloaded^[[0m zmij v1.0.16 +Test UNKNOWN STEP 2026-05-02T06:01:47.6865992Z ^[[1m^[[92m Downloaded^[[0m cc v1.2.53 +Test UNKNOWN STEP 2026-05-02T06:01:47.6900539Z ^[[1m^[[92m Downloaded^[[0m bzip2 v0.5.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.6922270Z ^[[1m^[[92m Downloaded^[[0m sysinfo v0.37.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7040674Z ^[[1m^[[92m Downloaded^[[0m serde_derive v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:01:47.7078997Z ^[[1m^[[92m Downloaded^[[0m powerfmt v0.2.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7096451Z ^[[1m^[[92m Downloaded^[[0m serde_ignored v0.1.14 +Test UNKNOWN STEP 2026-05-02T06:01:47.7118095Z ^[[1m^[[92m Downloaded^[[0m same-file v1.0.6 +Test UNKNOWN STEP 2026-05-02T06:01:47.7136150Z ^[[1m^[[92m Downloaded^[[0m bzip2-sys v0.1.13+1.0.8 +Test UNKNOWN STEP 2026-05-02T06:01:47.7255856Z ^[[1m^[[92m Downloaded^[[0m scopeguard v1.2.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7277568Z ^[[1m^[[92m Downloaded^[[0m potential_utf v0.1.4 +Test UNKNOWN STEP 2026-05-02T06:01:47.7301145Z ^[[1m^[[92m Downloaded^[[0m num-conv v0.1.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7319709Z ^[[1m^[[92m Downloaded^[[0m version_check v0.9.5 +Test UNKNOWN STEP 2026-05-02T06:01:47.7342978Z ^[[1m^[[92m Downloaded^[[0m webpki-roots v0.26.11 +Test UNKNOWN STEP 2026-05-02T06:01:47.7363725Z ^[[1m^[[92m Downloaded^[[0m untrusted v0.9.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7392393Z ^[[1m^[[92m Downloaded^[[0m sha1 v0.10.6 +Test UNKNOWN STEP 2026-05-02T06:01:47.7419796Z ^[[1m^[[92m Downloaded^[[0m percent-encoding v2.3.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7437779Z ^[[1m^[[92m Downloaded^[[0m subtle v2.6.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.7455557Z ^[[1m^[[92m Downloaded^[[0m time-core v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:01:47.7474045Z ^[[1m^[[92m Downloaded^[[0m strsim v0.11.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.7493227Z ^[[1m^[[92m Downloaded^[[0m zerofrom v0.1.6 +Test UNKNOWN STEP 2026-05-02T06:01:47.7509792Z ^[[1m^[[92m Downloaded^[[0m siphasher v1.0.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.7526235Z ^[[1m^[[92m Downloaded^[[0m yoke-derive v0.8.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.7540742Z ^[[1m^[[92m Downloaded^[[0m writeable v0.6.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7564053Z ^[[1m^[[92m Downloaded^[[0m unicode-width v0.2.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7622838Z ^[[1m^[[92m Downloaded^[[0m zeroize_derive v1.4.3 +Test UNKNOWN STEP 2026-05-02T06:01:47.7636584Z ^[[1m^[[92m Downloaded^[[0m utf8parse v0.2.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7649476Z ^[[1m^[[92m Downloaded^[[0m icu_properties v2.1.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7674843Z ^[[1m^[[92m Downloaded^[[0m zerofrom-derive v0.1.6 +Test UNKNOWN STEP 2026-05-02T06:01:47.7687568Z ^[[1m^[[92m Downloaded^[[0m yoke v0.8.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.7707361Z ^[[1m^[[92m Downloaded^[[0m utf8_iter v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:01:47.7719957Z ^[[1m^[[92m Downloaded^[[0m zeroize v1.8.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7735085Z ^[[1m^[[92m Downloaded^[[0m which v8.0.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7754582Z ^[[1m^[[92m Downloaded^[[0m zstd-safe v7.2.4 +Test UNKNOWN STEP 2026-05-02T06:01:47.7772025Z ^[[1m^[[92m Downloaded^[[0m xattr v1.6.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.7795138Z ^[[1m^[[92m Downloaded^[[0m zstd v0.13.3 +Test UNKNOWN STEP 2026-05-02T06:01:47.7827090Z ^[[1m^[[92m Downloaded^[[0m tempfile v3.24.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7855006Z ^[[1m^[[92m Downloaded^[[0m zerovec-derive v0.11.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7871615Z ^[[1m^[[92m Downloaded^[[0m toml_parser v1.0.6+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7898693Z ^[[1m^[[92m Downloaded^[[0m toml_datetime v0.7.5+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7914004Z ^[[1m^[[92m Downloaded^[[0m toml v0.9.11+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.7957407Z ^[[1m^[[92m Downloaded^[[0m tinystr v0.8.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.7979537Z ^[[1m^[[92m Downloaded^[[0m rustls-pki-types v1.14.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.8006984Z ^[[1m^[[92m Downloaded^[[0m zopfli v0.8.3 +Test UNKNOWN STEP 2026-05-02T06:01:47.8031999Z ^[[1m^[[92m Downloaded^[[0m zerotrie v0.2.3 +Test UNKNOWN STEP 2026-05-02T06:01:47.8072172Z ^[[1m^[[92m Downloaded^[[0m tar v0.4.44 +Test UNKNOWN STEP 2026-05-02T06:01:47.8100132Z ^[[1m^[[92m Downloaded^[[0m typenum v1.19.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.8129623Z ^[[1m^[[92m Downloaded^[[0m uuid v1.19.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.8160779Z ^[[1m^[[92m Downloaded^[[0m smallvec v1.15.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.8184551Z ^[[1m^[[92m Downloaded^[[0m unicode-ident v1.0.22 +Test UNKNOWN STEP 2026-05-02T06:01:47.8216632Z ^[[1m^[[92m Downloaded^[[0m thiserror-impl v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:01:47.8233659Z ^[[1m^[[92m Downloaded^[[0m thiserror v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:01:47.8300033Z ^[[1m^[[92m Downloaded^[[0m rustls-webpki v0.103.9 +Test UNKNOWN STEP 2026-05-02T06:01:47.8335000Z ^[[1m^[[92m Downloaded^[[0m url v2.5.8 +Test UNKNOWN STEP 2026-05-02T06:01:47.8362300Z ^[[1m^[[92m Downloaded^[[0m hashbrown v0.16.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.8413780Z ^[[1m^[[92m Downloaded^[[0m zip v2.4.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.8456969Z ^[[1m^[[92m Downloaded^[[0m ureq v2.12.1 +Test UNKNOWN STEP 2026-05-02T06:01:47.8510933Z ^[[1m^[[92m Downloaded^[[0m object v0.37.3 +Test UNKNOWN STEP 2026-05-02T06:01:47.8620708Z ^[[1m^[[92m Downloaded^[[0m lzma-sys v0.1.20 +Test UNKNOWN STEP 2026-05-02T06:01:47.8942786Z ^[[1m^[[92m Downloaded^[[0m zerovec v0.11.5 +Test UNKNOWN STEP 2026-05-02T06:01:47.8997851Z ^[[1m^[[92m Downloaded^[[0m serde_json v1.0.149 +Test UNKNOWN STEP 2026-05-02T06:01:47.9072956Z ^[[1m^[[92m Downloaded^[[0m icu_properties_data v2.1.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.9176496Z ^[[1m^[[92m Downloaded^[[0m gimli v0.32.3 +Test UNKNOWN STEP 2026-05-02T06:01:47.9246221Z ^[[1m^[[92m Downloaded^[[0m chrono v0.4.43 +Test UNKNOWN STEP 2026-05-02T06:01:47.9313450Z ^[[1m^[[92m Downloaded^[[0m xz2 v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:01:47.9332428Z ^[[1m^[[92m Downloaded^[[0m toml_writer v1.0.6+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:01:47.9348157Z ^[[1m^[[92m Downloaded^[[0m synstructure v0.13.2 +Test UNKNOWN STEP 2026-05-02T06:01:47.9360298Z ^[[1m^[[92m Downloaded^[[0m serde_spanned v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:01:47.9373626Z ^[[1m^[[92m Downloaded^[[0m winnow v0.7.14 +Test UNKNOWN STEP 2026-05-02T06:01:47.9470752Z ^[[1m^[[92m Downloaded^[[0m time v0.3.45 +Test UNKNOWN STEP 2026-05-02T06:01:47.9600977Z ^[[1m^[[92m Downloaded^[[0m libc v0.2.180 +Test UNKNOWN STEP 2026-05-02T06:01:47.9988541Z ^[[1m^[[92m Downloaded^[[0m indexmap v2.13.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.0032407Z ^[[1m^[[92m Downloaded^[[0m idna v1.1.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.0068748Z ^[[1m^[[92m Downloaded^[[0m webpki-roots v1.0.5 +Test UNKNOWN STEP 2026-05-02T06:01:48.0103213Z ^[[1m^[[92m Downloaded^[[0m getrandom v0.2.17 +Test UNKNOWN STEP 2026-05-02T06:01:48.0134527Z ^[[1m^[[92m Downloaded^[[0m rustc-demangle v0.1.27 +Test UNKNOWN STEP 2026-05-02T06:01:48.0153114Z ^[[1m^[[92m Downloaded^[[0m num-traits v0.2.19 +Test UNKNOWN STEP 2026-05-02T06:01:48.0181123Z ^[[1m^[[92m Downloaded^[[0m icu_normalizer_data v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.0203229Z ^[[1m^[[92m Downloaded^[[0m iana-time-zone v0.1.64 +Test UNKNOWN STEP 2026-05-02T06:01:48.0235679Z ^[[1m^[[92m Downloaded^[[0m syn v2.0.114 +Test UNKNOWN STEP 2026-05-02T06:01:48.0340382Z ^[[1m^[[92m Downloaded^[[0m simd-adler32 v0.3.8 +Test UNKNOWN STEP 2026-05-02T06:01:48.0360629Z ^[[1m^[[92m Downloaded^[[0m shlex v1.3.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.0374544Z ^[[1m^[[92m Downloaded^[[0m icu_normalizer v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.0410901Z ^[[1m^[[92m Downloaded^[[0m walkdir v2.5.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.0430083Z ^[[1m^[[92m Downloaded^[[0m rustix v0.38.44 +Test UNKNOWN STEP 2026-05-02T06:01:48.0694137Z ^[[1m^[[92m Downloaded^[[0m memchr v2.7.6 +Test UNKNOWN STEP 2026-05-02T06:01:48.0748577Z ^[[1m^[[92m Downloaded^[[0m rustls v0.23.36 +Test UNKNOWN STEP 2026-05-02T06:01:48.0866535Z ^[[1m^[[92m Downloaded^[[0m icu_provider v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.0892981Z ^[[1m^[[92m Downloaded^[[0m rustix v1.1.3 +Test UNKNOWN STEP 2026-05-02T06:01:48.1162726Z ^[[1m^[[92m Downloaded^[[0m errno v0.3.14 +Test UNKNOWN STEP 2026-05-02T06:01:48.1178684Z ^[[1m^[[92m Downloaded^[[0m bitflags v2.10.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.1220975Z ^[[1m^[[92m Downloaded^[[0m anstream v0.6.21 +Test UNKNOWN STEP 2026-05-02T06:01:48.1241564Z ^[[1m^[[92m Downloaded^[[0m parking_lot_core v0.9.12 +Test UNKNOWN STEP 2026-05-02T06:01:48.1262606Z ^[[1m^[[92m Downloaded^[[0m deranged v0.5.5 +Test UNKNOWN STEP 2026-05-02T06:01:48.1277283Z ^[[1m^[[92m Downloaded^[[0m clap_derive v4.5.49 +Test UNKNOWN STEP 2026-05-02T06:01:48.1298673Z ^[[1m^[[92m Downloaded^[[0m lock_api v0.4.14 +Test UNKNOWN STEP 2026-05-02T06:01:48.1312292Z ^[[1m^[[92m Downloaded^[[0m hmac v0.12.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.1331841Z ^[[1m^[[92m Downloaded^[[0m anstyle-parse v0.2.7 +Test UNKNOWN STEP 2026-05-02T06:01:48.1348812Z ^[[1m^[[92m Downloaded^[[0m idna_adapter v1.2.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.1358953Z ^[[1m^[[92m Downloaded^[[0m equivalent v1.0.2 +Test UNKNOWN STEP 2026-05-02T06:01:48.1369866Z ^[[1m^[[92m Downloaded^[[0m dialoguer v0.12.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.1404367Z ^[[1m^[[92m Downloaded^[[0m path-clean v1.0.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.1416345Z ^[[1m^[[92m Downloaded^[[0m icu_collections v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.1476937Z ^[[1m^[[92m Downloaded^[[0m hex v0.4.3 +Test UNKNOWN STEP 2026-05-02T06:01:48.1494034Z ^[[1m^[[92m Downloaded^[[0m getrandom v0.3.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.1529587Z ^[[1m^[[92m Downloaded^[[0m form_urlencoded v1.2.2 +Test UNKNOWN STEP 2026-05-02T06:01:48.1538719Z ^[[1m^[[92m Downloaded^[[0m flate2 v1.1.8 +Test UNKNOWN STEP 2026-05-02T06:01:48.1588397Z ^[[1m^[[92m Downloaded^[[0m zstd-sys v2.0.16+zstd.1.5.7 +Test UNKNOWN STEP 2026-05-02T06:01:48.1748902Z ^[[1m^[[92m Downloaded^[[0m crc-catalog v2.4.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.1761186Z ^[[1m^[[92m Downloaded^[[0m backtrace v0.3.76 +Test UNKNOWN STEP 2026-05-02T06:01:48.1812031Z ^[[1m^[[92m Downloaded^[[0m parking_lot v0.12.5 +Test UNKNOWN STEP 2026-05-02T06:01:48.1838489Z ^[[1m^[[92m Downloaded^[[0m deflate64 v0.1.10 +Test UNKNOWN STEP 2026-05-02T06:01:48.1852579Z ^[[1m^[[92m Downloaded^[[0m siphasher v0.3.11 +Test UNKNOWN STEP 2026-05-02T06:01:48.1865712Z ^[[1m^[[92m Downloaded^[[0m quote v1.0.43 +Test UNKNOWN STEP 2026-05-02T06:01:48.1892698Z ^[[1m^[[92m Downloaded^[[0m inout v0.1.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.1905119Z ^[[1m^[[92m Downloaded^[[0m icu_locale_core v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.1972302Z ^[[1m^[[92m Downloaded^[[0m fastrand v2.3.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.1985565Z ^[[1m^[[92m Downloaded^[[0m env_filter v0.1.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.1999898Z ^[[1m^[[92m Downloaded^[[0m jobserver v0.1.34 +Test UNKNOWN STEP 2026-05-02T06:01:48.2022639Z ^[[1m^[[92m Downloaded^[[0m glob v0.3.3 +Test UNKNOWN STEP 2026-05-02T06:01:48.2040742Z ^[[1m^[[92m Downloaded^[[0m env_home v0.1.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.2054049Z ^[[1m^[[92m Downloaded^[[0m constant_time_eq v0.3.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.2068326Z ^[[1m^[[92m Downloaded^[[0m once_cell v1.21.3 +Test UNKNOWN STEP 2026-05-02T06:01:48.2103375Z ^[[1m^[[92m Downloaded^[[0m lzma-rs v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.2131147Z ^[[1m^[[92m Downloaded^[[0m generic-array v0.14.7 +Test UNKNOWN STEP 2026-05-02T06:01:48.2146449Z ^[[1m^[[92m Downloaded^[[0m filetime v0.2.27 +Test UNKNOWN STEP 2026-05-02T06:01:48.2165898Z ^[[1m^[[92m Downloaded^[[0m dirs-sys-next v0.1.2 +Test UNKNOWN STEP 2026-05-02T06:01:48.2179437Z ^[[1m^[[92m Downloaded^[[0m clap v4.5.54 +Test UNKNOWN STEP 2026-05-02T06:01:48.2276977Z ^[[1m^[[92m Downloaded^[[0m clap_builder v4.5.54 +Test UNKNOWN STEP 2026-05-02T06:01:48.2339951Z ^[[1m^[[92m Downloaded^[[0m aes v0.8.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.2376510Z ^[[1m^[[92m Downloaded^[[0m pbkdf2 v0.12.2 +Test UNKNOWN STEP 2026-05-02T06:01:48.2390926Z ^[[1m^[[92m Downloaded^[[0m human-panic v2.0.6 +Test UNKNOWN STEP 2026-05-02T06:01:48.2404598Z ^[[1m^[[92m Downloaded^[[0m clap_lex v0.7.7 +Test UNKNOWN STEP 2026-05-02T06:01:48.2417485Z ^[[1m^[[92m Downloaded^[[0m anstyle-query v1.1.5 +Test UNKNOWN STEP 2026-05-02T06:01:48.2433257Z ^[[1m^[[92m Downloaded^[[0m linux-raw-sys v0.4.15 +Test UNKNOWN STEP 2026-05-02T06:01:48.2880020Z ^[[1m^[[92m Downloaded^[[0m adler2 v2.0.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.2893223Z ^[[1m^[[92m Downloaded^[[0m stable_deref_trait v1.2.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.2902786Z ^[[1m^[[92m Downloaded^[[0m shell-words v1.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.2913183Z ^[[1m^[[92m Downloaded^[[0m proc-macro2 v1.0.105 +Test UNKNOWN STEP 2026-05-02T06:01:48.2943713Z ^[[1m^[[92m Downloaded^[[0m miniz_oxide v0.8.9 +Test UNKNOWN STEP 2026-05-02T06:01:48.2968947Z ^[[1m^[[92m Downloaded^[[0m fs4 v0.6.6 +Test UNKNOWN STEP 2026-05-02T06:01:48.2993634Z ^[[1m^[[92m Downloaded^[[0m dirs-next v2.0.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.3008207Z ^[[1m^[[92m Downloaded^[[0m digest v0.10.7 +Test UNKNOWN STEP 2026-05-02T06:01:48.3027617Z ^[[1m^[[92m Downloaded^[[0m autocfg v1.5.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.3047033Z ^[[1m^[[92m Downloaded^[[0m log v0.4.29 +Test UNKNOWN STEP 2026-05-02T06:01:48.3071472Z ^[[1m^[[92m Downloaded^[[0m console v0.16.2 +Test UNKNOWN STEP 2026-05-02T06:01:48.3088803Z ^[[1m^[[92m Downloaded^[[0m colorchoice v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.3099283Z ^[[1m^[[92m Downloaded^[[0m anyhow v1.0.100 +Test UNKNOWN STEP 2026-05-02T06:01:48.3139973Z ^[[1m^[[92m Downloaded^[[0m litemap v0.8.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.3161723Z ^[[1m^[[92m Downloaded^[[0m ring v0.17.14 +Test UNKNOWN STEP 2026-05-02T06:01:48.3572879Z ^[[1m^[[92m Downloaded^[[0m find-msvc-tools v0.1.8 +Test UNKNOWN STEP 2026-05-02T06:01:48.3588932Z ^[[1m^[[92m Downloaded^[[0m env_logger v0.11.8 +Test UNKNOWN STEP 2026-05-02T06:01:48.3613714Z ^[[1m^[[92m Downloaded^[[0m crc32fast v1.5.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.3633033Z ^[[1m^[[92m Downloaded^[[0m anstyle v1.0.13 +Test UNKNOWN STEP 2026-05-02T06:01:48.3648584Z ^[[1m^[[92m Downloaded^[[0m is_terminal_polyfill v1.70.2 +Test UNKNOWN STEP 2026-05-02T06:01:48.3658020Z ^[[1m^[[92m Downloaded^[[0m heck v0.5.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.3671296Z ^[[1m^[[92m Downloaded^[[0m displaydoc v0.2.5 +Test UNKNOWN STEP 2026-05-02T06:01:48.3700969Z ^[[1m^[[92m Downloaded^[[0m crc v3.4.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.3717654Z ^[[1m^[[92m Downloaded^[[0m cpufeatures v0.2.17 +Test UNKNOWN STEP 2026-05-02T06:01:48.3731216Z ^[[1m^[[92m Downloaded^[[0m cfg-if v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.3743936Z ^[[1m^[[92m Downloaded^[[0m pkg-config v0.3.32 +Test UNKNOWN STEP 2026-05-02T06:01:48.3759562Z ^[[1m^[[92m Downloaded^[[0m serde_core v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:01:48.3785818Z ^[[1m^[[92m Downloaded^[[0m semver v1.0.27 +Test UNKNOWN STEP 2026-05-02T06:01:48.3807937Z ^[[1m^[[92m Downloaded^[[0m crypto-common v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:01:48.3817038Z ^[[1m^[[92m Downloaded^[[0m cipher v0.4.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.3831184Z ^[[1m^[[92m Downloaded^[[0m binary-install v0.4.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.3849722Z ^[[1m^[[92m Downloaded^[[0m bumpalo v3.19.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.3874609Z ^[[1m^[[92m Downloaded^[[0m base64 v0.22.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.3911818Z ^[[1m^[[92m Downloaded^[[0m linux-raw-sys v0.11.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.4440372Z ^[[1m^[[92m Downloaded^[[0m byteorder v1.5.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.4455936Z ^[[1m^[[92m Downloaded^[[0m cargo_metadata v0.23.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.4473904Z ^[[1m^[[92m Downloaded^[[0m addr2line v0.25.1 +Test UNKNOWN STEP 2026-05-02T06:01:48.5025785Z ^[[1m^[[92m Compiling^[[0m libc v0.2.180 +Test UNKNOWN STEP 2026-05-02T06:01:48.5026696Z ^[[1m^[[92m Compiling^[[0m proc-macro2 v1.0.105 +Test UNKNOWN STEP 2026-05-02T06:01:48.5027483Z ^[[1m^[[92m Compiling^[[0m unicode-ident v1.0.22 +Test UNKNOWN STEP 2026-05-02T06:01:48.5028133Z ^[[1m^[[92m Compiling^[[0m quote v1.0.43 +Test UNKNOWN STEP 2026-05-02T06:01:48.5572578Z ^[[1m^[[92m Compiling^[[0m shlex v1.3.0 +Test UNKNOWN STEP 2026-05-02T06:01:48.6562349Z ^[[1m^[[92m Compiling^[[0m find-msvc-tools v0.1.8 +Test UNKNOWN STEP 2026-05-02T06:01:48.6723645Z ^[[1m^[[92m Compiling^[[0m cfg-if v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:01:48.6999844Z ^[[1m^[[92m Compiling^[[0m pkg-config v0.3.32 +Test UNKNOWN STEP 2026-05-02T06:01:49.3253128Z ^[[1m^[[92m Compiling^[[0m syn v2.0.114 +Test UNKNOWN STEP 2026-05-02T06:01:49.3696135Z ^[[1m^[[92m Compiling^[[0m serde_core v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:01:49.5166021Z ^[[1m^[[92m Compiling^[[0m stable_deref_trait v1.2.1 +Test UNKNOWN STEP 2026-05-02T06:01:49.5636154Z ^[[1m^[[92m Compiling^[[0m typenum v1.19.0 +Test UNKNOWN STEP 2026-05-02T06:01:49.6608244Z ^[[1m^[[92m Compiling^[[0m jobserver v0.1.34 +Test UNKNOWN STEP 2026-05-02T06:01:49.7455786Z ^[[1m^[[92m Compiling^[[0m version_check v0.9.5 +Test UNKNOWN STEP 2026-05-02T06:01:49.9455978Z ^[[1m^[[92m Compiling^[[0m cc v1.2.53 +Test UNKNOWN STEP 2026-05-02T06:01:49.9711592Z ^[[1m^[[92m Compiling^[[0m generic-array v0.14.7 +Test UNKNOWN STEP 2026-05-02T06:01:51.3215614Z ^[[1m^[[92m Compiling^[[0m memchr v2.7.6 +Test UNKNOWN STEP 2026-05-02T06:01:51.5746564Z ^[[1m^[[92m Compiling^[[0m writeable v0.6.2 +Test UNKNOWN STEP 2026-05-02T06:01:51.7369678Z ^[[1m^[[92m Compiling^[[0m bitflags v2.10.0 +Test UNKNOWN STEP 2026-05-02T06:01:52.0715746Z ^[[1m^[[92m Compiling^[[0m litemap v0.8.1 +Test UNKNOWN STEP 2026-05-02T06:01:52.2145774Z ^[[1m^[[92m Compiling^[[0m crypto-common v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:01:52.2727688Z ^[[1m^[[92m Compiling^[[0m smallvec v1.15.1 +Test UNKNOWN STEP 2026-05-02T06:01:52.4372390Z ^[[1m^[[92m Compiling^[[0m icu_properties_data v2.1.2 +Test UNKNOWN STEP 2026-05-02T06:01:52.4586051Z ^[[1m^[[92m Compiling^[[0m icu_normalizer_data v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:52.5132636Z ^[[1m^[[92m Compiling^[[0m rustix v1.1.3 +Test UNKNOWN STEP 2026-05-02T06:01:52.5316183Z ^[[1m^[[92m Compiling^[[0m getrandom v0.3.4 +Test UNKNOWN STEP 2026-05-02T06:01:52.6062675Z ^[[1m^[[92m Compiling^[[0m subtle v2.6.1 +Test UNKNOWN STEP 2026-05-02T06:01:52.6887132Z ^[[1m^[[92m Compiling^[[0m simd-adler32 v0.3.8 +Test UNKNOWN STEP 2026-05-02T06:01:52.7085696Z ^[[1m^[[92m Compiling^[[0m synstructure v0.13.2 +Test UNKNOWN STEP 2026-05-02T06:01:52.7895793Z ^[[1m^[[92m Compiling^[[0m zstd-sys v2.0.16+zstd.1.5.7 +Test UNKNOWN STEP 2026-05-02T06:01:52.9935513Z ^[[1m^[[92m Compiling^[[0m ring v0.17.14 +Test UNKNOWN STEP 2026-05-02T06:01:53.2256656Z ^[[1m^[[92m Compiling^[[0m log v0.4.29 +Test UNKNOWN STEP 2026-05-02T06:01:53.2302889Z ^[[1m^[[92m Compiling^[[0m linux-raw-sys v0.11.0 +Test UNKNOWN STEP 2026-05-02T06:01:53.3345631Z ^[[1m^[[92m Compiling^[[0m crc32fast v1.5.0 +Test UNKNOWN STEP 2026-05-02T06:01:53.4075630Z ^[[1m^[[92m Compiling^[[0m adler2 v2.0.1 +Test UNKNOWN STEP 2026-05-02T06:01:53.4732419Z ^[[1m^[[92m Compiling^[[0m miniz_oxide v0.8.9 +Test UNKNOWN STEP 2026-05-02T06:01:54.5572178Z ^[[1m^[[92m Compiling^[[0m zerofrom-derive v0.1.6 +Test UNKNOWN STEP 2026-05-02T06:01:55.5358329Z ^[[1m^[[92m Compiling^[[0m yoke-derive v0.8.1 +Test UNKNOWN STEP 2026-05-02T06:01:55.6626914Z ^[[1m^[[92m Compiling^[[0m zerofrom v0.1.6 +Test UNKNOWN STEP 2026-05-02T06:01:55.7415420Z ^[[1m^[[92m Compiling^[[0m zerovec-derive v0.11.2 +Test UNKNOWN STEP 2026-05-02T06:01:56.4095868Z ^[[1m^[[92m Compiling^[[0m yoke v0.8.1 +Test UNKNOWN STEP 2026-05-02T06:01:56.5544033Z ^[[1m^[[92m Compiling^[[0m displaydoc v0.2.5 +Test UNKNOWN STEP 2026-05-02T06:01:56.6138678Z ^[[1m^[[92m Compiling^[[0m zeroize_derive v1.4.3 +Test UNKNOWN STEP 2026-05-02T06:01:56.7156149Z ^[[1m^[[92m Compiling^[[0m zerovec v0.11.5 +Test UNKNOWN STEP 2026-05-02T06:01:57.0275582Z ^[[1m^[[92m Compiling^[[0m zeroize v1.8.2 +Test UNKNOWN STEP 2026-05-02T06:01:57.0355632Z ^[[1m^[[92m Compiling^[[0m zerotrie v0.2.3 +Test UNKNOWN STEP 2026-05-02T06:01:57.1445832Z ^[[1m^[[92m Compiling^[[0m rustls-pki-types v1.14.0 +Test UNKNOWN STEP 2026-05-02T06:01:57.3095789Z ^[[1m^[[92m Compiling^[[0m tinystr v0.8.2 +Test UNKNOWN STEP 2026-05-02T06:01:57.4176109Z ^[[1m^[[92m Compiling^[[0m potential_utf v0.1.4 +Test UNKNOWN STEP 2026-05-02T06:01:57.4459428Z ^[[1m^[[92m Compiling^[[0m icu_locale_core v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:57.5098258Z ^[[1m^[[92m Compiling^[[0m icu_collections v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:58.2943900Z ^[[1m^[[92m Compiling^[[0m icu_provider v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:58.7372995Z ^[[1m^[[92m Compiling^[[0m block-buffer v0.10.4 +Test UNKNOWN STEP 2026-05-02T06:01:58.8150044Z ^[[1m^[[92m Compiling^[[0m serde v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:01:58.9556902Z ^[[1m^[[92m Compiling^[[0m zmij v1.0.16 +Test UNKNOWN STEP 2026-05-02T06:01:59.0735534Z ^[[1m^[[92m Compiling^[[0m once_cell v1.21.3 +Test UNKNOWN STEP 2026-05-02T06:01:59.2728505Z ^[[1m^[[92m Compiling^[[0m digest v0.10.7 +Test UNKNOWN STEP 2026-05-02T06:01:59.4464815Z ^[[1m^[[92m Compiling^[[0m icu_normalizer v2.1.1 +Test UNKNOWN STEP 2026-05-02T06:01:59.8879848Z ^[[1m^[[92m Compiling^[[0m icu_properties v2.1.2 +Test UNKNOWN STEP 2026-05-02T06:02:00.6475672Z ^[[1m^[[92m Compiling^[[0m serde_derive v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:02:01.7281501Z ^[[1m^[[92m Compiling^[[0m lzma-sys v0.1.20 +Test UNKNOWN STEP 2026-05-02T06:02:01.8526704Z ^[[1m^[[92m Compiling^[[0m bzip2-sys v0.1.13+1.0.8 +Test UNKNOWN STEP 2026-05-02T06:02:01.9360004Z ^[[1m^[[92m Compiling^[[0m getrandom v0.2.17 +Test UNKNOWN STEP 2026-05-02T06:02:02.0525751Z ^[[1m^[[92m Compiling^[[0m byteorder v1.5.0 +Test UNKNOWN STEP 2026-05-02T06:02:02.2715590Z ^[[1m^[[92m Compiling^[[0m zstd-safe v7.2.4 +Test UNKNOWN STEP 2026-05-02T06:02:02.3495749Z ^[[1m^[[92m Compiling^[[0m untrusted v0.9.0 +Test UNKNOWN STEP 2026-05-02T06:02:02.4106100Z ^[[1m^[[92m Compiling^[[0m serde_json v1.0.149 +Test UNKNOWN STEP 2026-05-02T06:02:02.4896117Z ^[[1m^[[92m Compiling^[[0m thiserror v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:02:02.6625704Z ^[[1m^[[92m Compiling^[[0m utf8parse v0.2.2 +Test UNKNOWN STEP 2026-05-02T06:02:02.7085872Z ^[[1m^[[92m Compiling^[[0m anstyle-parse v0.2.7 +Test UNKNOWN STEP 2026-05-02T06:02:07.6789717Z ^[[1m^[[92m Compiling^[[0m idna_adapter v1.2.1 +Test UNKNOWN STEP 2026-05-02T06:02:07.9972665Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:02:09.0165455Z ^[[1m^[[92m Compiling^[[0m inout v0.1.4 +Test UNKNOWN STEP 2026-05-02T06:02:09.0671023Z ^[[1m^[[92m Compiling^[[0m crc-catalog v2.4.0 +Test UNKNOWN STEP 2026-05-02T06:02:09.0938458Z ^[[1m^[[92m Compiling^[[0m cpufeatures v0.2.17 +Test UNKNOWN STEP 2026-05-02T06:02:09.1164606Z ^[[1m^[[92m Compiling^[[0m utf8_iter v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:02:09.1767988Z ^[[1m^[[92m Compiling^[[0m rustix v0.38.44 +Test UNKNOWN STEP 2026-05-02T06:02:09.3022924Z ^[[1m^[[92m Compiling^[[0m autocfg v1.5.0 +Test UNKNOWN STEP 2026-05-02T06:02:09.5336219Z ^[[1m^[[92m Compiling^[[0m object v0.37.3 +Test UNKNOWN STEP 2026-05-02T06:02:09.6174872Z ^[[1m^[[92m Compiling^[[0m rustls v0.23.36 +Test UNKNOWN STEP 2026-05-02T06:02:09.6823411Z ^[[1m^[[92m Compiling^[[0m powerfmt v0.2.0 +Test UNKNOWN STEP 2026-05-02T06:02:09.8542621Z ^[[1m^[[92m Compiling^[[0m anstyle-query v1.1.5 +Test UNKNOWN STEP 2026-05-02T06:02:09.8830222Z ^[[1m^[[92m Compiling^[[0m colorchoice v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:02:09.9132486Z ^[[1m^[[92m Compiling^[[0m anstyle v1.0.13 +Test UNKNOWN STEP 2026-05-02T06:02:10.0701721Z ^[[1m^[[92m Compiling^[[0m itoa v1.0.17 +Test UNKNOWN STEP 2026-05-02T06:02:10.2133678Z ^[[1m^[[92m Compiling^[[0m is_terminal_polyfill v1.70.2 +Test UNKNOWN STEP 2026-05-02T06:02:10.2392423Z ^[[1m^[[92m Compiling^[[0m percent-encoding v2.3.2 +Test UNKNOWN STEP 2026-05-02T06:02:10.4385591Z ^[[1m^[[92m Compiling^[[0m form_urlencoded v1.2.2 +Test UNKNOWN STEP 2026-05-02T06:02:10.6330812Z ^[[1m^[[92m Compiling^[[0m anstream v0.6.21 +Test UNKNOWN STEP 2026-05-02T06:02:11.0283439Z ^[[1m^[[92m Compiling^[[0m deranged v0.5.5 +Test UNKNOWN STEP 2026-05-02T06:02:12.3280135Z ^[[1m^[[92m Compiling^[[0m num-traits v0.2.19 +Test UNKNOWN STEP 2026-05-02T06:02:12.4196733Z ^[[1m^[[92m Compiling^[[0m idna v1.1.0 +Test UNKNOWN STEP 2026-05-02T06:02:13.6288042Z ^[[1m^[[92m Compiling^[[0m crc v3.4.0 +Test UNKNOWN STEP 2026-05-02T06:02:13.7765627Z ^[[1m^[[92m Compiling^[[0m cipher v0.4.4 +Test UNKNOWN STEP 2026-05-02T06:02:14.0105634Z ^[[1m^[[92m Compiling^[[0m rustls-webpki v0.103.9 +Test UNKNOWN STEP 2026-05-02T06:02:14.7135589Z ^[[1m^[[92m Compiling^[[0m flate2 v1.1.8 +Test UNKNOWN STEP 2026-05-02T06:02:15.2096441Z ^[[1m^[[92m Compiling^[[0m hmac v0.12.1 +Test UNKNOWN STEP 2026-05-02T06:02:15.2959084Z ^[[1m^[[92m Compiling^[[0m webpki-roots v1.0.5 +Test UNKNOWN STEP 2026-05-02T06:02:15.3675534Z ^[[1m^[[92m Compiling^[[0m hashbrown v0.16.1 +Test UNKNOWN STEP 2026-05-02T06:02:15.9632276Z ^[[1m^[[92m Compiling^[[0m camino v1.2.2 +Test UNKNOWN STEP 2026-05-02T06:02:16.0924579Z ^[[1m^[[92m Compiling^[[0m anyhow v1.0.100 +Test UNKNOWN STEP 2026-05-02T06:02:16.2396284Z ^[[1m^[[92m Compiling^[[0m zip v2.4.2 +Test UNKNOWN STEP 2026-05-02T06:02:16.2937164Z ^[[1m^[[92m Compiling^[[0m equivalent v1.0.2 +Test UNKNOWN STEP 2026-05-02T06:02:16.3147068Z ^[[1m^[[92m Compiling^[[0m time-core v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:02:16.3992181Z ^[[1m^[[92m Compiling^[[0m parking_lot_core v0.9.12 +Test UNKNOWN STEP 2026-05-02T06:02:16.4906589Z ^[[1m^[[92m Compiling^[[0m gimli v0.32.3 +Test UNKNOWN STEP 2026-05-02T06:02:16.9625831Z ^[[1m^[[92m Compiling^[[0m winnow v0.7.14 +Test UNKNOWN STEP 2026-05-02T06:02:17.8185909Z ^[[1m^[[92m Compiling^[[0m linux-raw-sys v0.4.15 +Test UNKNOWN STEP 2026-05-02T06:02:18.1095513Z ^[[1m^[[92m Compiling^[[0m bumpalo v3.19.1 +Test UNKNOWN STEP 2026-05-02T06:02:18.3285799Z ^[[1m^[[92m Compiling^[[0m num-conv v0.1.0 +Test UNKNOWN STEP 2026-05-02T06:02:18.4047690Z ^[[1m^[[92m Compiling^[[0m time v0.3.45 +Test UNKNOWN STEP 2026-05-02T06:02:19.0383016Z ^[[1m^[[92m Compiling^[[0m addr2line v0.25.1 +Test UNKNOWN STEP 2026-05-02T06:02:19.0389417Z ^[[1m^[[92m Compiling^[[0m toml_parser v1.0.6+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:02:19.4495731Z ^[[1m^[[92m Compiling^[[0m zopfli v0.8.3 +Test UNKNOWN STEP 2026-05-02T06:02:20.6036587Z ^[[1m^[[92m Compiling^[[0m xz2 v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:02:20.8359255Z ^[[1m^[[92m Compiling^[[0m indexmap v2.13.0 +Test UNKNOWN STEP 2026-05-02T06:02:21.6535590Z ^[[1m^[[92m Compiling^[[0m webpki-roots v0.26.11 +Test UNKNOWN STEP 2026-05-02T06:02:21.6981585Z ^[[1m^[[92m Compiling^[[0m pbkdf2 v0.12.2 +Test UNKNOWN STEP 2026-05-02T06:02:21.7165816Z ^[[1m^[[92m Compiling^[[0m bzip2 v0.5.2 +Test UNKNOWN STEP 2026-05-02T06:02:21.9575495Z ^[[1m^[[92m Compiling^[[0m aes v0.8.4 +Test UNKNOWN STEP 2026-05-02T06:02:23.4505978Z ^[[1m^[[92m Compiling^[[0m lzma-rs v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:02:23.5586063Z ^[[1m^[[92m Compiling^[[0m url v2.5.8 +Test UNKNOWN STEP 2026-05-02T06:02:26.3313785Z ^[[1m^[[92m Compiling^[[0m sha1 v0.10.6 +Test UNKNOWN STEP 2026-05-02T06:02:26.7345594Z ^[[1m^[[92m Compiling^[[0m socks v0.3.4 +Test UNKNOWN STEP 2026-05-02T06:02:27.1705355Z ^[[1m^[[92m Compiling^[[0m xattr v1.6.1 +Test UNKNOWN STEP 2026-05-02T06:02:27.7788291Z ^[[1m^[[92m Compiling^[[0m toml_datetime v0.7.5+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:02:28.1555873Z ^[[1m^[[92m Compiling^[[0m serde_spanned v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:02:28.2339344Z ^[[1m^[[92m Compiling^[[0m filetime v0.2.27 +Test UNKNOWN STEP 2026-05-02T06:02:28.3375926Z ^[[1m^[[92m Compiling^[[0m dirs-sys-next v0.1.2 +Test UNKNOWN STEP 2026-05-02T06:02:28.3976447Z ^[[1m^[[92m Compiling^[[0m fastrand v2.3.0 +Test UNKNOWN STEP 2026-05-02T06:02:28.6035584Z ^[[1m^[[92m Compiling^[[0m scopeguard v1.2.0 +Test UNKNOWN STEP 2026-05-02T06:02:28.6475625Z ^[[1m^[[92m Compiling^[[0m toml_writer v1.0.6+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:02:28.8141247Z ^[[1m^[[92m Compiling^[[0m heck v0.5.0 +Test UNKNOWN STEP 2026-05-02T06:02:28.8438240Z ^[[1m^[[92m Compiling^[[0m clap_lex v0.7.7 +Test UNKNOWN STEP 2026-05-02T06:02:28.9745611Z ^[[1m^[[92m Compiling^[[0m deflate64 v0.1.10 +Test UNKNOWN STEP 2026-05-02T06:02:29.1286340Z ^[[1m^[[92m Compiling^[[0m rustc-demangle v0.1.27 +Test UNKNOWN STEP 2026-05-02T06:02:29.4480334Z ^[[1m^[[92m Compiling^[[0m constant_time_eq v0.3.1 +Test UNKNOWN STEP 2026-05-02T06:02:29.4819251Z ^[[1m^[[92m Compiling^[[0m strsim v0.11.1 +Test UNKNOWN STEP 2026-05-02T06:02:30.1920627Z ^[[1m^[[92m Compiling^[[0m base64 v0.22.1 +Test UNKNOWN STEP 2026-05-02T06:02:30.2052656Z ^[[1m^[[92m Compiling^[[0m unicode-width v0.2.2 +Test UNKNOWN STEP 2026-05-02T06:02:30.3745696Z ^[[1m^[[92m Compiling^[[0m console v0.16.2 +Test UNKNOWN STEP 2026-05-02T06:02:30.6655510Z ^[[1m^[[92m Compiling^[[0m ureq v2.12.1 +Test UNKNOWN STEP 2026-05-02T06:02:31.7395496Z ^[[1m^[[92m Compiling^[[0m clap_builder v4.5.54 +Test UNKNOWN STEP 2026-05-02T06:02:38.8385549Z ^[[1m^[[92m Compiling^[[0m backtrace v0.3.76 +Test UNKNOWN STEP 2026-05-02T06:02:40.0536681Z ^[[1m^[[92m Compiling^[[0m zstd v0.13.3 +Test UNKNOWN STEP 2026-05-02T06:02:44.3005781Z ^[[1m^[[92m Compiling^[[0m clap_derive v4.5.49 +Test UNKNOWN STEP 2026-05-02T06:02:44.3245934Z ^[[1m^[[92m Compiling^[[0m toml v0.9.11+spec-1.1.0 +Test UNKNOWN STEP 2026-05-02T06:02:44.6525941Z ^[[1m^[[92m Compiling^[[0m lock_api v0.4.14 +Test UNKNOWN STEP 2026-05-02T06:02:44.8516339Z ^[[1m^[[92m Compiling^[[0m tempfile v3.24.0 +Test UNKNOWN STEP 2026-05-02T06:02:44.9706136Z ^[[1m^[[92m Compiling^[[0m dirs-next v2.0.0 +Test UNKNOWN STEP 2026-05-02T06:02:45.0523315Z ^[[1m^[[92m Compiling^[[0m tar v0.4.44 +Test UNKNOWN STEP 2026-05-02T06:02:46.6325647Z ^[[1m^[[92m Compiling^[[0m fs4 v0.6.6 +Test UNKNOWN STEP 2026-05-02T06:02:46.9595671Z ^[[1m^[[92m Compiling^[[0m uuid v1.19.0 +Test UNKNOWN STEP 2026-05-02T06:02:47.2915986Z ^[[1m^[[92m Compiling^[[0m env_filter v0.1.4 +Test UNKNOWN STEP 2026-05-02T06:02:47.4172587Z ^[[1m^[[92m Compiling^[[0m cargo-platform v0.3.2 +Test UNKNOWN STEP 2026-05-02T06:02:47.9695684Z ^[[1m^[[92m Compiling^[[0m semver v1.0.27 +Test UNKNOWN STEP 2026-05-02T06:02:48.0146157Z ^[[1m^[[92m Compiling^[[0m sysinfo v0.37.2 +Test UNKNOWN STEP 2026-05-02T06:02:48.0795627Z ^[[1m^[[92m Compiling^[[0m is_executable v0.1.2 +Test UNKNOWN STEP 2026-05-02T06:02:48.1335671Z ^[[1m^[[92m Compiling^[[0m shell-words v1.1.1 +Test UNKNOWN STEP 2026-05-02T06:02:48.3196007Z ^[[1m^[[92m Compiling^[[0m hex v0.4.3 +Test UNKNOWN STEP 2026-05-02T06:02:48.5755971Z ^[[1m^[[92m Compiling^[[0m iana-time-zone v0.1.64 +Test UNKNOWN STEP 2026-05-02T06:02:48.6389613Z ^[[1m^[[92m Compiling^[[0m same-file v1.0.6 +Test UNKNOWN STEP 2026-05-02T06:02:48.7335789Z ^[[1m^[[92m Compiling^[[0m siphasher v0.3.11 +Test UNKNOWN STEP 2026-05-02T06:02:48.8816038Z ^[[1m^[[92m Compiling^[[0m env_home v0.1.0 +Test UNKNOWN STEP 2026-05-02T06:02:48.9305668Z ^[[1m^[[92m Compiling^[[0m which v8.0.0 +Test UNKNOWN STEP 2026-05-02T06:02:49.0185691Z ^[[1m^[[92m Compiling^[[0m binary-install v0.4.1 +Test UNKNOWN STEP 2026-05-02T06:02:49.3246443Z ^[[1m^[[92m Compiling^[[0m walkdir v2.5.0 +Test UNKNOWN STEP 2026-05-02T06:02:49.5935634Z ^[[1m^[[92m Compiling^[[0m chrono v0.4.43 +Test UNKNOWN STEP 2026-05-02T06:02:50.1435929Z ^[[1m^[[92m Compiling^[[0m human-panic v2.0.6 +Test UNKNOWN STEP 2026-05-02T06:02:50.8198677Z ^[[1m^[[92m Compiling^[[0m cargo_metadata v0.23.1 +Test UNKNOWN STEP 2026-05-02T06:02:51.2915609Z ^[[1m^[[92m Compiling^[[0m dialoguer v0.12.0 +Test UNKNOWN STEP 2026-05-02T06:02:52.5956218Z ^[[1m^[[92m Compiling^[[0m env_logger v0.11.8 +Test UNKNOWN STEP 2026-05-02T06:02:53.2126213Z ^[[1m^[[92m Compiling^[[0m parking_lot v0.12.5 +Test UNKNOWN STEP 2026-05-02T06:02:53.2933847Z ^[[1m^[[92m Compiling^[[0m clap v4.5.54 +Test UNKNOWN STEP 2026-05-02T06:02:53.3326399Z ^[[1m^[[92m Compiling^[[0m serde_ignored v0.1.14 +Test UNKNOWN STEP 2026-05-02T06:02:53.5085768Z ^[[1m^[[92m Compiling^[[0m siphasher v1.0.1 +Test UNKNOWN STEP 2026-05-02T06:02:53.6525789Z ^[[1m^[[92m Compiling^[[0m path-clean v1.0.1 +Test UNKNOWN STEP 2026-05-02T06:02:53.7316669Z ^[[1m^[[92m Compiling^[[0m glob v0.3.3 +Test UNKNOWN STEP 2026-05-02T06:02:53.9890553Z ^[[1m^[[92m Compiling^[[0m wasm-pack v0.14.0 +Test UNKNOWN STEP 2026-05-02T06:03:01.0877522Z ^[[1m^[[92m Finished^[[0m `release` profile [optimized] target(s) in 1m 14s +Test UNKNOWN STEP 2026-05-02T06:03:01.1056854Z ^[[1m^[[92m Installing^[[0m /home/runner/.cargo/bin/wasm-pack +Test UNKNOWN STEP 2026-05-02T06:03:01.1069704Z ^[[1m^[[92m Installed^[[0m package `wasm-pack v0.14.0` (executable `wasm-pack`) +Test UNKNOWN STEP 2026-05-02T06:03:01.2055756Z ##[group]Run actions/setup-node@v4 +Test UNKNOWN STEP 2026-05-02T06:03:01.2056017Z with: +Test UNKNOWN STEP 2026-05-02T06:03:01.2056191Z node-version: 20.x +Test UNKNOWN STEP 2026-05-02T06:03:01.2056391Z cache: npm +Test UNKNOWN STEP 2026-05-02T06:03:01.2056567Z always-auth: false +Test UNKNOWN STEP 2026-05-02T06:03:01.2056751Z check-latest: false +Test UNKNOWN STEP 2026-05-02T06:03:01.2057055Z token: *** +Test UNKNOWN STEP 2026-05-02T06:03:01.2057228Z env: +Test UNKNOWN STEP 2026-05-02T06:03:01.2057396Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:03:01.2057626Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:03:01.2057818Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:03:01.2058019Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:03:01.3911058Z Found in cache @ /opt/hostedtoolcache/node/20.20.2/x64 +Test UNKNOWN STEP 2026-05-02T06:03:01.3918239Z ##[group]Environment details +Test UNKNOWN STEP 2026-05-02T06:03:01.6794540Z node: v20.20.2 +Test UNKNOWN STEP 2026-05-02T06:03:01.6794930Z npm: 10.8.2 +Test UNKNOWN STEP 2026-05-02T06:03:01.6795266Z yarn: 1.22.22 +Test UNKNOWN STEP 2026-05-02T06:03:01.6796058Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:03:01.6821669Z [command]/opt/hostedtoolcache/node/20.20.2/x64/bin/npm config get cache +Test UNKNOWN STEP 2026-05-02T06:03:01.8633086Z /home/runner/.npm +Test UNKNOWN STEP 2026-05-02T06:03:02.1374573Z npm cache is not found +Test UNKNOWN STEP 2026-05-02T06:03:02.2148442Z ##[group]Run actions/cache@v4 +Test UNKNOWN STEP 2026-05-02T06:03:02.2148692Z with: +Test UNKNOWN STEP 2026-05-02T06:03:02.2148957Z path: ~/.cargo/registry +Test UNKNOWN STEP ~/.cargo/git +Test UNKNOWN STEP target +Test UNKNOWN STEP rust/target +Test UNKNOWN STEP +Test UNKNOWN STEP 2026-05-02T06:03:02.2149437Z key: Linux-wasm-cargo-a5bca161b00440911150f1345a216ce9214fc239f208774f3e6a9f2212452d80 +Test UNKNOWN STEP 2026-05-02T06:03:02.2149876Z restore-keys: Linux-wasm-cargo- +Test UNKNOWN STEP +Test UNKNOWN STEP 2026-05-02T06:03:02.2150125Z enableCrossOsArchive: false +Test UNKNOWN STEP 2026-05-02T06:03:02.2150348Z fail-on-cache-miss: false +Test UNKNOWN STEP 2026-05-02T06:03:02.2150556Z lookup-only: false +Test UNKNOWN STEP 2026-05-02T06:03:02.2150736Z save-always: false +Test UNKNOWN STEP 2026-05-02T06:03:02.2150908Z env: +Test UNKNOWN STEP 2026-05-02T06:03:02.2151066Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:03:02.2151291Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:03:02.2151485Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:03:02.2151676Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:03:02.6272146Z Cache hit for restore-key: Linux-wasm-cargo-215a3f4c382bd4d7ca34ac40d7e4a4bea743e6142feece078e28238cceeceb8a +Test UNKNOWN STEP 2026-05-02T06:03:03.9264049Z Received 0 of 341387361 (0.0%), 0.0 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:03:04.9279428Z Received 113246208 of 341387361 (33.2%), 53.9 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:03:05.9288590Z Received 230686720 of 341387361 (67.6%), 73.3 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:03:06.7326104Z Received 341387361 of 341387361 (100.0%), 85.5 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:03:06.7328867Z Cache Size: ~326 MB (341387361 B) +Test UNKNOWN STEP 2026-05-02T06:03:06.7439298Z [command]/usr/bin/tar -xf /home/runner/work/_temp/fbb8d08a-6a82-489e-bcda-1d0ec8f79c0d/cache.tzst -P -C /home/runner/work/link-cli/link-cli --use-compress-program unzstd +Test UNKNOWN STEP 2026-05-02T06:03:09.5146672Z Cache restored successfully +Test UNKNOWN STEP 2026-05-02T06:03:09.5376657Z Cache restored from key: Linux-wasm-cargo-215a3f4c382bd4d7ca34ac40d7e4a4bea743e6142feece078e28238cceeceb8a +Test UNKNOWN STEP 2026-05-02T06:03:09.5486487Z ##[group]Run npm ci +Test UNKNOWN STEP 2026-05-02T06:03:09.5486759Z ^[[36;1mnpm ci^[[0m +Test UNKNOWN STEP 2026-05-02T06:03:09.5621071Z shell: /usr/bin/bash -e {0} +Test UNKNOWN STEP 2026-05-02T06:03:09.5621329Z env: +Test UNKNOWN STEP 2026-05-02T06:03:09.5621510Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:03:09.5621757Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:03:09.5621964Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:03:09.5622165Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:03:12.9193290Z +Test UNKNOWN STEP 2026-05-02T06:03:12.9194077Z added 23 packages, and audited 24 packages in 3s +Test UNKNOWN STEP 2026-05-02T06:03:12.9194791Z +Test UNKNOWN STEP 2026-05-02T06:03:12.9195135Z 8 packages are looking for funding +Test UNKNOWN STEP 2026-05-02T06:03:12.9195644Z run `npm fund` for details +Test UNKNOWN STEP 2026-05-02T06:03:12.9207566Z +Test UNKNOWN STEP 2026-05-02T06:03:12.9207928Z found 0 vulnerabilities +Test UNKNOWN STEP 2026-05-02T06:03:12.9378309Z ##[group]Run cargo test --manifest-path rust/Cargo.toml --all-features +Test UNKNOWN STEP 2026-05-02T06:03:12.9378818Z ^[[36;1mcargo test --manifest-path rust/Cargo.toml --all-features^[[0m +Test UNKNOWN STEP 2026-05-02T06:03:12.9402369Z shell: /usr/bin/bash -e {0} +Test UNKNOWN STEP 2026-05-02T06:03:12.9402605Z env: +Test UNKNOWN STEP 2026-05-02T06:03:12.9402780Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:03:12.9403034Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:03:12.9403242Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:03:12.9403447Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:03:12.9853939Z ^[[1m^[[92m Updating^[[0m crates.io index +Test UNKNOWN STEP 2026-05-02T06:03:13.0375153Z ^[[1m^[[92m Downloading^[[0m crates ... +Test UNKNOWN STEP 2026-05-02T06:03:13.0897986Z ^[[1m^[[92m Downloaded^[[0m anstream v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:13.0929785Z ^[[1m^[[92m Downloaded^[[0m clap_derive v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:13.0955294Z ^[[1m^[[92m Downloaded^[[0m clap v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:13.1067904Z ^[[1m^[[92m Downloaded^[[0m tempfile v3.27.0 +Test UNKNOWN STEP 2026-05-02T06:03:13.1098577Z ^[[1m^[[92m Downloaded^[[0m quote v1.0.45 +Test UNKNOWN STEP 2026-05-02T06:03:13.1129477Z ^[[1m^[[92m Downloaded^[[0m unicode-ident v1.0.24 +Test UNKNOWN STEP 2026-05-02T06:03:13.1159928Z ^[[1m^[[92m Downloaded^[[0m getrandom v0.4.2 +Test UNKNOWN STEP 2026-05-02T06:03:13.1200576Z ^[[1m^[[92m Downloaded^[[0m proc-macro2 v1.0.106 +Test UNKNOWN STEP 2026-05-02T06:03:13.1231722Z ^[[1m^[[92m Downloaded^[[0m anstyle-parse v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:13.1249871Z ^[[1m^[[92m Downloaded^[[0m once_cell v1.21.4 +Test UNKNOWN STEP 2026-05-02T06:03:13.1288237Z ^[[1m^[[92m Downloaded^[[0m clap_builder v4.6.0 +Test UNKNOWN STEP 2026-05-02T06:03:13.1355119Z ^[[1m^[[92m Downloaded^[[0m syn v2.0.117 +Test UNKNOWN STEP 2026-05-02T06:03:13.1463438Z ^[[1m^[[92m Downloaded^[[0m rustix v1.1.4 +Test UNKNOWN STEP 2026-05-02T06:03:13.1749483Z ^[[1m^[[92m Downloaded^[[0m libc v0.2.186 +Test UNKNOWN STEP 2026-05-02T06:03:13.2185805Z ^[[1m^[[92m Downloaded^[[0m linux-raw-sys v0.12.1 +Test UNKNOWN STEP 2026-05-02T06:03:13.3136073Z ^[[1m^[[92m Compiling^[[0m proc-macro2 v1.0.106 +Test UNKNOWN STEP 2026-05-02T06:03:13.3137042Z ^[[1m^[[92m Compiling^[[0m unicode-ident v1.0.24 +Test UNKNOWN STEP 2026-05-02T06:03:13.3137717Z ^[[1m^[[92m Compiling^[[0m quote v1.0.45 +Test UNKNOWN STEP 2026-05-02T06:03:13.3138350Z ^[[1m^[[92m Compiling^[[0m libc v0.2.186 +Test UNKNOWN STEP 2026-05-02T06:03:13.3727424Z ^[[1m^[[92m Compiling^[[0m getrandom v0.4.2 +Test UNKNOWN STEP 2026-05-02T06:03:13.4709304Z ^[[1m^[[92m Compiling^[[0m rustix v1.1.4 +Test UNKNOWN STEP 2026-05-02T06:03:13.4951933Z ^[[1m^[[92m Compiling^[[0m anstyle-parse v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:13.6015866Z ^[[1m^[[92m Compiling^[[0m anstyle v1.0.14 +Test UNKNOWN STEP 2026-05-02T06:03:13.7433017Z ^[[1m^[[92m Compiling^[[0m linux-raw-sys v0.12.1 +Test UNKNOWN STEP 2026-05-02T06:03:13.7675998Z ^[[1m^[[92m Compiling^[[0m colorchoice v1.0.5 +Test UNKNOWN STEP 2026-05-02T06:03:13.8105768Z ^[[1m^[[92m Compiling^[[0m bitflags v2.11.1 +Test UNKNOWN STEP 2026-05-02T06:03:14.0896222Z ^[[1m^[[92m Compiling^[[0m anstream v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:14.1777233Z ^[[1m^[[92m Compiling^[[0m syn v2.0.117 +Test UNKNOWN STEP 2026-05-02T06:03:14.3628506Z ^[[1m^[[92m Compiling^[[0m fastrand v2.4.1 +Test UNKNOWN STEP 2026-05-02T06:03:14.5237420Z ^[[1m^[[92m Compiling^[[0m once_cell v1.21.4 +Test UNKNOWN STEP 2026-05-02T06:03:14.6385885Z ^[[1m^[[92m Compiling^[[0m clap_lex v1.1.0 +Test UNKNOWN STEP 2026-05-02T06:03:14.6718152Z ^[[1m^[[92m Compiling^[[0m memmap2 v0.9.10 +Test UNKNOWN STEP 2026-05-02T06:03:14.8056535Z ^[[1m^[[92m Compiling^[[0m clap_builder v4.6.0 +Test UNKNOWN STEP 2026-05-02T06:03:14.8406542Z ^[[1m^[[92m Compiling^[[0m anyhow v1.0.102 +Test UNKNOWN STEP 2026-05-02T06:03:15.7094544Z ^[[1m^[[92m Compiling^[[0m tempfile v3.27.0 +Test UNKNOWN STEP 2026-05-02T06:03:17.0255935Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:17.0548526Z ^[[1m^[[92m Compiling^[[0m clap_derive v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:17.3485044Z ^[[1m^[[92m Compiling^[[0m serde_derive v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:18.1763174Z ^[[1m^[[92m Compiling^[[0m thiserror v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:18.2156280Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v1.0.69 +Test UNKNOWN STEP 2026-05-02T06:03:18.4286026Z ^[[1m^[[92m Compiling^[[0m platform-data v2.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:18.5626090Z ^[[1m^[[92m Compiling^[[0m platform-mem v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:18.7265918Z ^[[1m^[[92m Compiling^[[0m doublets v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:18.8495703Z ^[[1m^[[92m Compiling^[[0m clap v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:19.0875929Z ^[[1m^[[92m Compiling^[[0m thiserror v1.0.69 +Test UNKNOWN STEP 2026-05-02T06:03:19.5448393Z ^[[1m^[[92m Compiling^[[0m serde v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:19.8531687Z ^[[1m^[[92m Compiling^[[0m lino-arguments v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:19.9462753Z ^[[1m^[[92m Compiling^[[0m link-cli v0.1.0 (/home/runner/work/link-cli/link-cli/rust) +Test UNKNOWN STEP 2026-05-02T06:03:22.3213197Z ^[[1m^[[92m Finished^[[0m `test` profile [unoptimized + debuginfo] target(s) in 9.36s +Test UNKNOWN STEP 2026-05-02T06:03:22.3317129Z ^[[1m^[[92m Running^[[0m unittests src/lib.rs (rust/target/debug/deps/link_cli-d340ce7e6e4e80f5) +Test UNKNOWN STEP 2026-05-02T06:03:22.3328401Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3328593Z running 0 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3328887Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3329523Z test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3330097Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3331554Z ^[[1m^[[92m Running^[[0m unittests src/main.rs (rust/target/debug/deps/clink-8b57485f3e6bc6de) +Test UNKNOWN STEP 2026-05-02T06:03:22.3339948Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3340119Z running 0 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3340401Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3341025Z test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3341516Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3343860Z ^[[1m^[[92m Running^[[0m tests/changes_simplifier_tests.rs (rust/target/debug/deps/changes_simplifier_tests-f35e7109178f8287) +Test UNKNOWN STEP 2026-05-02T06:03:22.3352078Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3352220Z running 9 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3356803Z test test_simplify_chain ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3357366Z test test_simplify_empty ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3357961Z test test_simplify_issue26_update_operation ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3358662Z test test_simplify_issue26_alternative_scenario ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3359342Z test test_simplify_keeps_unchanged_states ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3360075Z test test_simplify_multiple_branches_from_same_initial ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3360704Z test test_simplify_no_op ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3361488Z test test_simplify_specific_example_removes_intermediate_states ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3362263Z test test_simplify_with_unchanged ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3362571Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3363569Z ^[[1m^[[92m Running^[[0m tests/cli_arguments_tests.rs (rust/target/debug/deps/cli_arguments_tests-5690f63b1f5ebd41) +Test UNKNOWN STEP 2026-05-02T06:03:22.3365122Z test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3365711Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3371661Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3371833Z running 5 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3375918Z test parses_csharp_option_aliases_without_direct_clap_dependency ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3376785Z test parses_inline_alias_values_and_boolean_values ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3377577Z test query_option_takes_precedence_over_positional_query ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3378335Z test rejects_extra_positional_queries ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3378938Z test returns_help_and_version_commands ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3379592Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3380190Z test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3380787Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3388865Z ^[[1m^[[92m Running^[[0m tests/cli_named_types_tests.rs (rust/target/debug/deps/cli_named_types_tests-f8e3161a20dbda82) +Test UNKNOWN STEP 2026-05-02T06:03:22.3389618Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3389761Z running 1 test +Test UNKNOWN STEP 2026-05-02T06:03:22.3453849Z test cli_stores_string_aliases_in_separate_names_database ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3454526Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3455099Z test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s +Test UNKNOWN STEP 2026-05-02T06:03:22.3455452Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3456894Z ^[[1m^[[92m Running^[[0m tests/dependency_basis_tests.rs (rust/target/debug/deps/dependency_basis_tests-1921d0e4c0044681) +Test UNKNOWN STEP 2026-05-02T06:03:22.3464954Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3465160Z running 2 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3467740Z test rust_manifest_declares_required_basis_crates ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3468404Z test rust_manifest_uses_lino_arguments_without_direct_clap_dependency ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3468738Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3469215Z test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3469821Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3471064Z ^[[1m^[[92m Running^[[0m tests/link_storage_tests.rs (rust/target/debug/deps/link_storage_tests-4a62457bb635dc13) +Test UNKNOWN STEP 2026-05-02T06:03:22.3479314Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3479440Z running 12 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3484574Z test test_lino_lines_escape_names_that_need_quoting ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3485499Z test test_lino_lines_select_quote_style_for_names_containing_quotes ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3486490Z test test_lino_lines_use_numbered_references_without_names ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3487352Z test test_lino_lines_use_names_for_indexes_sources_and_targets ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3488027Z test test_storage_create ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3494035Z test test_storage_delete ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3495018Z test test_storage_get_or_create ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3495581Z test test_storage_named_links ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3496085Z test test_storage_search ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3496545Z test test_storage_update ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3497012Z test test_storage_persistence ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3497714Z test test_write_lino_output_writes_complete_database ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3498126Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3498733Z test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3499319Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3500159Z ^[[1m^[[92m Running^[[0m tests/link_tests.rs (rust/target/debug/deps/link_tests-cf6e058bd79f1c62) +Test UNKNOWN STEP 2026-05-02T06:03:22.3507781Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3507977Z running 5 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3511632Z test test_link_creation ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3512164Z test test_link_is_full_point ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3512629Z test test_link_format ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3513048Z test test_link_is_null ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3513692Z test test_link_round_trips_through_doublets_link ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3514101Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3514967Z test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3515556Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3516506Z ^[[1m^[[92m Running^[[0m tests/lino_link_tests.rs (rust/target/debug/deps/lino_link_tests-e5cad6c0a3a54635) +Test UNKNOWN STEP 2026-05-02T06:03:22.3523578Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3523746Z running 5 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3527851Z test test_lino_link_is_wildcard ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3528439Z test test_lino_link_is_numeric ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3528956Z test test_lino_link_is_variable ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3529429Z test test_lino_link_new ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3529772Z test test_lino_link_with_values ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3529967Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3530322Z test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3530715Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3531844Z ^[[1m^[[92m Running^[[0m tests/named_types_decorator_tests.rs (rust/target/debug/deps/named_types_decorator_tests-6ec4446ce107270b) +Test UNKNOWN STEP 2026-05-02T06:03:22.3540422Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3540601Z running 7 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3557986Z test default_names_database_path_matches_csharp_convention ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3560824Z test decorator_includes_pinned_types_decorator ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3561705Z test decorator_exposes_link_storage_operations_and_named_types ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3568036Z test decorator_can_be_built_from_existing_link_storages ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3569190Z test delete_removes_associated_name_from_names_database ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3579857Z test setting_second_name_replaces_first_name ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3584777Z test reassigning_existing_name_moves_name_to_new_link ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3585035Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3585407Z test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3585740Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3588024Z ^[[1m^[[92m Running^[[0m tests/parser_tests.rs (rust/target/debug/deps/parser_tests-77b3e71c374cfc5a) +Test UNKNOWN STEP 2026-05-02T06:03:22.3597231Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3597525Z running 8 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3601626Z test test_parse_empty ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3602227Z test test_parse_nested_link ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3603456Z test test_parse_link_with_id ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3604987Z test test_parse_links_notation_backtick_unicode_identifier ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3606019Z test test_parse_query_format ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3606529Z test test_parse_simple_link ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3607027Z test test_parse_wildcard ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3607493Z test test_parse_variable ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3607801Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3609223Z ^[[1m^[[92m Running^[[0m tests/pinned_types_decorator_tests.rs (rust/target/debug/deps/pinned_types_decorator_tests-2be8a182e5134711) +Test UNKNOWN STEP 2026-05-02T06:03:22.3610065Z test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3610619Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3617666Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3617804Z running 3 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3622205Z test decorator_rejects_unexpected_link_shape_at_reserved_address ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3623083Z test decorator_exposes_link_storage_operations_and_pinned_types ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3623626Z test decorator_supports_triplet_deconstruction_parity ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3623879Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3625369Z ^[[1m^[[92m Running^[[0m tests/query_processor_csharp_parity_tests.rs (rust/target/debug/deps/query_processor_csharp_parity_tests-e891656cc1b18e2a) +Test UNKNOWN STEP 2026-05-02T06:03:22.3626280Z test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3626621Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3633614Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3633756Z running 13 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3642056Z test test_create_deep_nested_numeric_links_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3651502Z test test_create_explicit_index_after_gap_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3660267Z test test_delete_by_source_target_pattern_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3665472Z test test_delete_by_wildcard_target_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3695296Z test test_delete_all_by_index_wildcard_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3735513Z test test_no_op_variable_query_returns_matched_changes ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3736657Z test test_string_composite_left_child_does_not_create_extra_leaf ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3737806Z test test_swap_all_links_using_variables_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3745868Z test test_delete_by_names_keeps_leaf_names_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3750804Z test test_unwrapped_create_query_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3783496Z test test_unknown_named_restriction_fails_without_auto_create ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3854388Z test test_named_link_rename_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3861909Z test test_string_aliases_in_variable_restriction_constrain_matches_to_named_links_matches_csharp ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3862940Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3863571Z test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s +Test UNKNOWN STEP 2026-05-02T06:03:22.3864153Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3865656Z ^[[1m^[[92m Running^[[0m tests/query_processor_tests.rs (rust/target/debug/deps/query_processor_tests-fcc4222298464831) +Test UNKNOWN STEP 2026-05-02T06:03:22.3876566Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3876753Z running 15 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3892501Z test test_auto_create_missing_numeric_reference_creates_point_link ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3893654Z test test_auto_create_missing_named_references_creates_point_links ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3896193Z test test_deduplicate_duplicate_pair_with_named_links ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3897495Z test test_auto_create_missing_numeric_reference_fills_existing_gap ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3898364Z test test_deduplicate_duplicate_pair_with_numeric_links ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3898968Z test test_deduplicate_triple_duplicate_pair ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3899788Z test test_deduplicate_named_links_multiple_queries ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3900466Z test test_deduplicate_mixed_named_and_numeric ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3902557Z test test_deduplicate_nested_duplicates ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3903373Z test test_deduplicate_with_different_pairs ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3905416Z test test_missing_named_reference_fails_without_auto_create ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3907749Z test test_future_numeric_references_succeed_without_auto_create ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3908199Z test test_query_processor_empty ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3908826Z test test_missing_numeric_reference_fails_without_auto_create ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3909465Z test test_query_processor_create ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3909802Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3910511Z test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3911044Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3912682Z ^[[1m^[[92m Running^[[0m tests/unicode_sequence_converter_tests.rs (rust/target/debug/deps/unicode_sequence_converter_tests-dbca84dd88aaca3a) +Test UNKNOWN STEP 2026-05-02T06:03:22.3922267Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3922405Z running 5 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3927302Z test caching_converter_decorator_reuses_cached_values ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3928494Z test raw_number_converters_match_hybrid_external_reference_encoding ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3929279Z test balanced_variant_and_right_sequence_walker_preserve_symbol_order ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3929908Z test target_and_char_symbol_converters_create_and_decode_symbols ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3930600Z test string_and_unicode_sequence_converters_round_trip_utf16_text ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3932380Z ^[[1m^[[92m Running^[[0m tests/unicode_string_storage_tests.rs (rust/target/debug/deps/unicode_string_storage_tests-3c8ce74330d9f074) +Test UNKNOWN STEP 2026-05-02T06:03:22.3932882Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3933334Z test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3933964Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3941348Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3941533Z running 11 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.3949486Z test create_and_retrieve_empty_string ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3962220Z test create_and_retrieve_simple_string ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3962640Z test create_and_retrieve_multiple_strings ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3963090Z test create_and_retrieve_unicode_string_as_utf16_sequence ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3963538Z test create_and_retrieve_user_defined_type ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3963972Z test deleting_non_named_link_does_not_affect_other_names ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3964848Z test name_is_removed_when_external_reference_is_deleted ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3965790Z test name_external_reference_matches_csharp_hybrid_encoding ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3966467Z test name_is_removed_when_link_is_deleted ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3967169Z test named_links_facade_matches_csharp_named_links_role ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3967678Z test pinned_types_are_created_and_named ... ok +Test UNKNOWN STEP 2026-05-02T06:03:22.3967882Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3968236Z test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.3968825Z +Test UNKNOWN STEP 2026-05-02T06:03:22.3969966Z ^[[1m^[[92m Doc-tests^[[0m link_cli +Test UNKNOWN STEP 2026-05-02T06:03:22.4426311Z +Test UNKNOWN STEP 2026-05-02T06:03:22.4426758Z running 0 tests +Test UNKNOWN STEP 2026-05-02T06:03:22.4428701Z +Test UNKNOWN STEP 2026-05-02T06:03:22.4429432Z test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:22.4430047Z +Test UNKNOWN STEP 2026-05-02T06:03:22.4513883Z ##[group]Run npm run test:wasm +Test UNKNOWN STEP 2026-05-02T06:03:22.4514431Z ^[[36;1mnpm run test:wasm^[[0m +Test UNKNOWN STEP 2026-05-02T06:03:22.4535004Z shell: /usr/bin/bash -e {0} +Test UNKNOWN STEP 2026-05-02T06:03:22.4535230Z env: +Test UNKNOWN STEP 2026-05-02T06:03:22.4535409Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:03:22.4535650Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:03:22.4535846Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:03:22.4536046Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:03:22.5790841Z +Test UNKNOWN STEP 2026-05-02T06:03:22.5791417Z > link-cli-web@2.3.0 test:wasm +Test UNKNOWN STEP 2026-05-02T06:03:22.5792010Z > wasm-pack test --node +Test UNKNOWN STEP 2026-05-02T06:03:22.5792325Z +Test UNKNOWN STEP 2026-05-02T06:03:22.8986090Z [INFO]: 🎯 Checking for the Wasm target... +Test UNKNOWN STEP 2026-05-02T06:03:23.0095194Z ^[[1m^[[92m Compiling^[[0m proc-macro2 v1.0.106 +Test UNKNOWN STEP 2026-05-02T06:03:23.0096195Z ^[[1m^[[92m Compiling^[[0m unicode-ident v1.0.24 +Test UNKNOWN STEP 2026-05-02T06:03:23.0103489Z ^[[1m^[[92m Compiling^[[0m quote v1.0.45 +Test UNKNOWN STEP 2026-05-02T06:03:23.0114072Z ^[[1m^[[92m Compiling^[[0m once_cell v1.21.4 +Test UNKNOWN STEP 2026-05-02T06:03:23.0755026Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-shared v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:23.1725574Z ^[[1m^[[92m Compiling^[[0m cfg-if v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:03:23.1967585Z ^[[1m^[[92m Compiling^[[0m bumpalo v3.20.2 +Test UNKNOWN STEP 2026-05-02T06:03:23.2635640Z ^[[1m^[[92m Compiling^[[0m serde_core v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:23.3922399Z ^[[1m^[[92m Compiling^[[0m anstyle-parse v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:23.5036318Z ^[[1m^[[92m Compiling^[[0m serde v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:23.5705653Z ^[[1m^[[92m Compiling^[[0m memchr v2.8.0 +Test UNKNOWN STEP 2026-05-02T06:03:23.7215812Z ^[[1m^[[92m Compiling^[[0m anstream v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:24.0278959Z ^[[1m^[[92m Compiling^[[0m zmij v1.0.21 +Test UNKNOWN STEP 2026-05-02T06:03:24.1715794Z ^[[1m^[[92m Compiling^[[0m syn v2.0.117 +Test UNKNOWN STEP 2026-05-02T06:03:24.2056669Z ^[[1m^[[92m Compiling^[[0m tempfile v3.27.0 +Test UNKNOWN STEP 2026-05-02T06:03:24.2249322Z ^[[1m^[[92m Compiling^[[0m clap_builder v4.6.0 +Test UNKNOWN STEP 2026-05-02T06:03:24.5675993Z ^[[1m^[[92m Compiling^[[0m serde_json v1.0.149 +Test UNKNOWN STEP 2026-05-02T06:03:24.9096859Z ^[[1m^[[92m Compiling^[[0m nom v8.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:25.8263130Z ^[[1m^[[92m Compiling^[[0m itoa v1.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:27.5956187Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-macro-support v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:27.9496078Z ^[[1m^[[92m Compiling^[[0m links-notation v0.13.0 +Test UNKNOWN STEP 2026-05-02T06:03:29.1774805Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:29.1775775Z ^[[1m^[[92m Compiling^[[0m serde_derive v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:29.1776709Z ^[[1m^[[92m Compiling^[[0m clap_derive v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:30.9811627Z ^[[1m^[[92m Compiling^[[0m thiserror v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:31.0197381Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v1.0.69 +Test UNKNOWN STEP 2026-05-02T06:03:31.5216211Z ^[[1m^[[92m Compiling^[[0m clap v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:31.5517150Z ^[[1m^[[92m Compiling^[[0m platform-mem v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:31.6953702Z ^[[1m^[[92m Compiling^[[0m platform-data v2.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:31.8196263Z ^[[1m^[[92m Compiling^[[0m doublets v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:32.4372245Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-test-macro v0.3.70 +Test UNKNOWN STEP 2026-05-02T06:03:32.6038568Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-macro v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:32.7296277Z ^[[1m^[[92m Compiling^[[0m thiserror v1.0.69 +Test UNKNOWN STEP 2026-05-02T06:03:32.7677043Z ^[[1m^[[92m Compiling^[[0m async-trait v0.1.89 +Test UNKNOWN STEP 2026-05-02T06:03:32.9206255Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:33.6491722Z ^[[1m^[[92m Compiling^[[0m lino-arguments v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:33.7456393Z ^[[1m^[[92m Compiling^[[0m link-cli v0.1.0 (/home/runner/work/link-cli/link-cli/rust) +Test UNKNOWN STEP 2026-05-02T06:03:34.0717768Z ^[[1m^[[92m Compiling^[[0m js-sys v0.3.97 +Test UNKNOWN STEP 2026-05-02T06:03:34.0719978Z ^[[1m^[[92m Compiling^[[0m console_error_panic_hook v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:03:41.1111923Z ^[[1m^[[92m Compiling^[[0m web-sys v0.3.97 +Test UNKNOWN STEP 2026-05-02T06:03:41.1113959Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-futures v0.4.70 +Test UNKNOWN STEP 2026-05-02T06:03:41.1286309Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-test v0.3.70 +Test UNKNOWN STEP 2026-05-02T06:03:41.9629218Z ^[[1m^[[92m Compiling^[[0m clink-wasm v2.3.0 (/home/runner/work/link-cli/link-cli) +Test UNKNOWN STEP 2026-05-02T06:03:43.2137836Z ^[[1m^[[92m Finished^[[0m `dev` profile [unoptimized + debuginfo] target(s) in 20.27s +Test UNKNOWN STEP 2026-05-02T06:03:43.2226792Z [INFO]: ⬇️ Installing wasm-bindgen... +Test UNKNOWN STEP 2026-05-02T06:03:43.6481919Z ^[[1m^[[92m Finished^[[0m `test` profile [unoptimized + debuginfo] target(s) in 0.06s +Test UNKNOWN STEP 2026-05-02T06:03:43.6517368Z ^[[1m^[[92m Running^[[0m unittests src/lib.rs (target/wasm32-unknown-unknown/debug/deps/clink_wasm-d036c04135117785.wasm) +Test UNKNOWN STEP 2026-05-02T06:03:43.8355353Z no tests to run! +Test UNKNOWN STEP 2026-05-02T06:03:43.8646092Z ^[[1m^[[92m Running^[[0m tests/web.rs (target/wasm32-unknown-unknown/debug/deps/web-ec97598a412b82e6.wasm) +Test UNKNOWN STEP 2026-05-02T06:03:46.3755397Z running 4 tests +Test UNKNOWN STEP 2026-05-02T06:03:46.3843597Z test reports_invalid_options ... ok +Test UNKNOWN STEP 2026-05-02T06:03:46.3849114Z test exposes_versions ... ok +Test UNKNOWN STEP 2026-05-02T06:03:46.3976348Z test executes_lino_queries_with_the_rust_core ... ok +Test UNKNOWN STEP 2026-05-02T06:03:46.3978708Z test creates_a_clink_instance ... ok +Test UNKNOWN STEP 2026-05-02T06:03:46.3982256Z +Test UNKNOWN STEP 2026-05-02T06:03:46.3983635Z test result: ok. 4 passed; 0 failed; 0 ignored; 0 filtered out; finished in 0.03s +Test UNKNOWN STEP 2026-05-02T06:03:46.3984523Z +Test UNKNOWN STEP 2026-05-02T06:03:46.4051292Z ^[[1m^[[92m Doc-tests^[[0m clink_wasm +Test UNKNOWN STEP 2026-05-02T06:03:46.4418135Z +Test UNKNOWN STEP 2026-05-02T06:03:46.4418922Z running 0 tests +Test UNKNOWN STEP 2026-05-02T06:03:46.4419299Z +Test UNKNOWN STEP 2026-05-02T06:03:46.4420243Z test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s +Test UNKNOWN STEP 2026-05-02T06:03:46.4421154Z +Test UNKNOWN STEP 2026-05-02T06:03:46.4565088Z ##[group]Run npm run build +Test UNKNOWN STEP 2026-05-02T06:03:46.4565375Z ^[[36;1mnpm run build^[[0m +Test UNKNOWN STEP 2026-05-02T06:03:46.4586275Z shell: /usr/bin/bash -e {0} +Test UNKNOWN STEP 2026-05-02T06:03:46.4586504Z env: +Test UNKNOWN STEP 2026-05-02T06:03:46.4586685Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:03:46.4586931Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:03:46.4587149Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:03:46.4587358Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:03:46.5764659Z +Test UNKNOWN STEP 2026-05-02T06:03:46.5765568Z > link-cli-web@2.3.0 build +Test UNKNOWN STEP 2026-05-02T06:03:46.5766105Z > npm run build:wasm && npm run build:web +Test UNKNOWN STEP 2026-05-02T06:03:46.5766373Z +Test UNKNOWN STEP 2026-05-02T06:03:46.6971972Z +Test UNKNOWN STEP 2026-05-02T06:03:46.6972606Z > link-cli-web@2.3.0 build:wasm +Test UNKNOWN STEP 2026-05-02T06:03:46.6973178Z > wasm-pack build --target web --out-dir web/pkg +Test UNKNOWN STEP 2026-05-02T06:03:46.6973504Z +Test UNKNOWN STEP 2026-05-02T06:03:46.7941532Z [INFO]: 🎯 Checking for the Wasm target... +Test UNKNOWN STEP 2026-05-02T06:03:46.8218981Z [INFO]: 🌀 Compiling to Wasm... +Test UNKNOWN STEP 2026-05-02T06:03:46.8943878Z ^[[1m^[[92m Compiling^[[0m proc-macro2 v1.0.106 +Test UNKNOWN STEP 2026-05-02T06:03:46.8945650Z ^[[1m^[[92m Compiling^[[0m unicode-ident v1.0.24 +Test UNKNOWN STEP 2026-05-02T06:03:46.8946658Z ^[[1m^[[92m Compiling^[[0m quote v1.0.45 +Test UNKNOWN STEP 2026-05-02T06:03:46.8947561Z ^[[1m^[[92m Compiling^[[0m once_cell v1.21.4 +Test UNKNOWN STEP 2026-05-02T06:03:46.9555959Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-shared v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:47.0283782Z ^[[1m^[[92m Compiling^[[0m serde_core v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:47.0516106Z ^[[1m^[[92m Compiling^[[0m cfg-if v1.0.4 +Test UNKNOWN STEP 2026-05-02T06:03:47.0765904Z ^[[1m^[[92m Compiling^[[0m bumpalo v3.20.2 +Test UNKNOWN STEP 2026-05-02T06:03:47.1096371Z ^[[1m^[[92m Compiling^[[0m anstyle-parse v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:47.2357143Z ^[[1m^[[92m Compiling^[[0m anstream v1.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:47.6566801Z ^[[1m^[[92m Compiling^[[0m serde v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:47.7283035Z ^[[1m^[[92m Compiling^[[0m memchr v2.8.0 +Test UNKNOWN STEP 2026-05-02T06:03:47.8075730Z ^[[1m^[[92m Compiling^[[0m syn v2.0.117 +Test UNKNOWN STEP 2026-05-02T06:03:47.8105525Z ^[[1m^[[92m Compiling^[[0m clap_builder v4.6.0 +Test UNKNOWN STEP 2026-05-02T06:03:48.3045637Z ^[[1m^[[92m Compiling^[[0m tempfile v3.27.0 +Test UNKNOWN STEP 2026-05-02T06:03:48.8521859Z ^[[1m^[[92m Compiling^[[0m zmij v1.0.21 +Test UNKNOWN STEP 2026-05-02T06:03:48.9848709Z ^[[1m^[[92m Compiling^[[0m nom v8.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:49.7267519Z ^[[1m^[[92m Compiling^[[0m serde_json v1.0.149 +Test UNKNOWN STEP 2026-05-02T06:03:50.1084883Z ^[[1m^[[92m Compiling^[[0m itoa v1.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:52.2277840Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-macro-support v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:52.6769111Z ^[[1m^[[92m Compiling^[[0m links-notation v0.13.0 +Test UNKNOWN STEP 2026-05-02T06:03:52.8305799Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:54.0987620Z ^[[1m^[[92m Compiling^[[0m thiserror v2.0.18 +Test UNKNOWN STEP 2026-05-02T06:03:54.1395159Z ^[[1m^[[92m Compiling^[[0m clap_derive v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:54.2545988Z ^[[1m^[[92m Compiling^[[0m serde_derive v1.0.228 +Test UNKNOWN STEP 2026-05-02T06:03:55.7636016Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-macro v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:55.9235996Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v1.0.69 +Test UNKNOWN STEP 2026-05-02T06:03:55.9538883Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen v0.2.120 +Test UNKNOWN STEP 2026-05-02T06:03:56.8532732Z ^[[1m^[[92m Compiling^[[0m clap v4.6.1 +Test UNKNOWN STEP 2026-05-02T06:03:56.8812776Z ^[[1m^[[92m Compiling^[[0m platform-mem v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:56.9657773Z ^[[1m^[[92m Compiling^[[0m thiserror v1.0.69 +Test UNKNOWN STEP 2026-05-02T06:03:57.0005726Z ^[[1m^[[92m Compiling^[[0m platform-data v2.0.0 +Test UNKNOWN STEP 2026-05-02T06:03:57.1247145Z ^[[1m^[[92m Compiling^[[0m doublets v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:57.2903663Z ^[[1m^[[92m Compiling^[[0m js-sys v0.3.97 +Test UNKNOWN STEP 2026-05-02T06:03:57.5696803Z ^[[1m^[[92m Compiling^[[0m console_error_panic_hook v0.1.7 +Test UNKNOWN STEP 2026-05-02T06:03:57.7494070Z ^[[1m^[[92m Compiling^[[0m lino-arguments v0.3.0 +Test UNKNOWN STEP 2026-05-02T06:03:57.8657946Z ^[[1m^[[92m Compiling^[[0m link-cli v0.1.0 (/home/runner/work/link-cli/link-cli/rust) +Test UNKNOWN STEP 2026-05-02T06:04:04.5057624Z ^[[1m^[[92m Compiling^[[0m web-sys v0.3.97 +Test UNKNOWN STEP 2026-05-02T06:04:05.4160599Z ^[[1m^[[92m Compiling^[[0m clink-wasm v2.3.0 (/home/runner/work/link-cli/link-cli) +Test UNKNOWN STEP 2026-05-02T06:04:06.2027820Z ^[[1m^[[92m Finished^[[0m `release` profile [optimized] target(s) in 19.37s +Test UNKNOWN STEP 2026-05-02T06:04:06.2106823Z [INFO]: ⬇️ Installing wasm-bindgen... +Test UNKNOWN STEP 2026-05-02T06:04:07.4747401Z [INFO]: Optimizing wasm binaries with `wasm-opt`... +Test UNKNOWN STEP 2026-05-02T06:04:10.7729266Z [INFO]: ✨ Done in 23.99s +Test UNKNOWN STEP 2026-05-02T06:04:10.7730287Z [INFO]: 📦 Your wasm pkg is ready to publish at /home/runner/work/link-cli/link-cli/web/pkg. +Test UNKNOWN STEP 2026-05-02T06:04:10.8883628Z +Test UNKNOWN STEP 2026-05-02T06:04:10.8884619Z > link-cli-web@2.3.0 build:web +Test UNKNOWN STEP 2026-05-02T06:04:10.8885314Z > vite build --config web/vite.config.js +Test UNKNOWN STEP 2026-05-02T06:04:10.8885689Z +Test UNKNOWN STEP 2026-05-02T06:04:11.0958025Z ^[[36mvite v8.0.10 ^[[32mbuilding client environment for production...^[[36m^[[39m +Test UNKNOWN STEP 2026-05-02T06:04:11.1077728Z ^[[2K +Test UNKNOWN STEP 2026-05-02T06:04:11.3584976Z transforming...✓ 1736 modules transformed. +Test UNKNOWN STEP 2026-05-02T06:04:11.3859879Z rendering chunks... +Test UNKNOWN STEP 2026-05-02T06:04:11.4241124Z computing gzip size... +Test UNKNOWN STEP 2026-05-02T06:04:11.4318399Z dist/assets/favicon-CIVoLc1m.svg 0.37 kB │ gzip: 0.24 kB +Test UNKNOWN STEP 2026-05-02T06:04:11.4319505Z dist/index.html 0.63 kB │ gzip: 0.38 kB +Test UNKNOWN STEP 2026-05-02T06:04:11.4320544Z dist/assets/doublets_web_bg-cVQpTmMF.wasm 51.41 kB │ gzip: 20.96 kB +Test UNKNOWN STEP 2026-05-02T06:04:11.4321685Z dist/assets/clink_wasm_bg-CdOWT-Uc.wasm 283.33 kB │ gzip: 123.51 kB +Test UNKNOWN STEP 2026-05-02T06:04:11.4322769Z dist/assets/index-D8XZ-J-o.css 5.91 kB │ gzip: 2.07 kB +Test UNKNOWN STEP 2026-05-02T06:04:11.4323868Z dist/assets/index-BBASYPg3.js 220.94 kB │ gzip: 68.67 kB +Test UNKNOWN STEP 2026-05-02T06:04:11.4324647Z +Test UNKNOWN STEP 2026-05-02T06:04:11.4324974Z ^[[32m✓ built in 335ms^[[39m +Test UNKNOWN STEP 2026-05-02T06:04:11.4666590Z ##[group]Run actions/upload-artifact@v4 +Test UNKNOWN STEP 2026-05-02T06:04:11.4666869Z with: +Test UNKNOWN STEP 2026-05-02T06:04:11.4667045Z name: link-cli-web +Test UNKNOWN STEP 2026-05-02T06:04:11.4667237Z path: dist/ +Test UNKNOWN STEP 2026-05-02T06:04:11.4667418Z if-no-files-found: warn +Test UNKNOWN STEP 2026-05-02T06:04:11.4667632Z compression-level: 6 +Test UNKNOWN STEP 2026-05-02T06:04:11.4667822Z overwrite: false +Test UNKNOWN STEP 2026-05-02T06:04:11.4668014Z include-hidden-files: false +Test UNKNOWN STEP 2026-05-02T06:04:11.4668222Z env: +Test UNKNOWN STEP 2026-05-02T06:04:11.4668384Z CARGO_HOME: /home/runner/.cargo +Test UNKNOWN STEP 2026-05-02T06:04:11.4668612Z CARGO_INCREMENTAL: 0 +Test UNKNOWN STEP 2026-05-02T06:04:11.4668806Z CARGO_TERM_COLOR: always +Test UNKNOWN STEP 2026-05-02T06:04:11.4669001Z ##[endgroup] +Test UNKNOWN STEP 2026-05-02T06:04:11.6946139Z With the provided path, there will be 6 files uploaded +Test UNKNOWN STEP 2026-05-02T06:04:11.6946980Z Artifact name is valid! +Test UNKNOWN STEP 2026-05-02T06:04:11.6947423Z Root directory input is valid! +Test UNKNOWN STEP 2026-05-02T06:04:12.0007031Z Beginning upload of artifact content to blob storage +Test UNKNOWN STEP 2026-05-02T06:04:12.6762174Z Uploaded bytes 214646 +Test UNKNOWN STEP 2026-05-02T06:04:12.7635175Z Finished uploading artifact content to blob storage! +Test UNKNOWN STEP 2026-05-02T06:04:12.7638148Z SHA256 digest of uploaded artifact zip is 11ff9086b502a5e769855cd16651f03b9f56be5b3130e1056031d76222995151 +Test UNKNOWN STEP 2026-05-02T06:04:12.7639434Z Finalizing artifact upload +Test UNKNOWN STEP 2026-05-02T06:04:12.9480731Z Artifact link-cli-web.zip successfully finalized. Artifact ID 6761095832 +Test UNKNOWN STEP 2026-05-02T06:04:12.9482014Z Artifact link-cli-web has been successfully uploaded! Final size is 214646 bytes. Artifact ID is 6761095832 +Test UNKNOWN STEP 2026-05-02T06:04:12.9486820Z Artifact download URL: https://github.com/link-foundation/link-cli/actions/runs/25245349330/artifacts/6761095832 +Test UNKNOWN STEP 2026-05-02T06:04:13.0202063Z Post job cleanup. +Test UNKNOWN STEP 2026-05-02T06:04:13.1748128Z [command]/usr/bin/tar --posix -cf cache.tzst --exclude cache.tzst -P -C /home/runner/work/link-cli/link-cli --files-from manifest.txt --use-compress-program zstdmt +Test UNKNOWN STEP 2026-05-02T06:04:20.0574087Z Sent 0 of 588770982 (0.0%), 0.0 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:04:21.0580801Z Sent 0 of 588770982 (0.0%), 0.0 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:04:22.0578645Z Sent 536870912 of 588770982 (91.2%), 170.7 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:04:22.2842027Z Sent 588770982 of 588770982 (100.0%), 174.1 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:04:22.4708827Z Cache saved with key: Linux-wasm-cargo-a5bca161b00440911150f1345a216ce9214fc239f208774f3e6a9f2212452d80 +Test UNKNOWN STEP 2026-05-02T06:04:22.4871515Z Post job cleanup. +Test UNKNOWN STEP 2026-05-02T06:04:22.6668087Z [command]/usr/bin/tar --posix -cf cache.tzst --exclude cache.tzst -P -C /home/runner/work/link-cli/link-cli --files-from manifest.txt --use-compress-program zstdmt +Test UNKNOWN STEP 2026-05-02T06:04:23.9656194Z Sent 15597568 of 19427037 (80.3%), 14.9 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:04:24.1645170Z Sent 19427037 of 19427037 (100.0%), 15.4 MBs/sec +Test UNKNOWN STEP 2026-05-02T06:04:24.4531833Z Cache saved with the key: node-cache-Linux-x64-npm-d315d8b9cf81d047cf497bbcc55d1d84ab2bcc1d591d7e669c7aa9738b286549 +Test UNKNOWN STEP 2026-05-02T06:04:24.4652341Z Post job cleanup. +Test UNKNOWN STEP 2026-05-02T06:04:24.5662482Z [command]/usr/bin/git version +Test UNKNOWN STEP 2026-05-02T06:04:24.5700546Z git version 2.53.0 +Test UNKNOWN STEP 2026-05-02T06:04:24.5746812Z Temporarily overriding HOME='/home/runner/work/_temp/6b0cba42-ecef-4698-9c93-cef392d95ed9' before making global git config changes +Test UNKNOWN STEP 2026-05-02T06:04:24.5748390Z Adding repository directory to the temporary git global config as a safe directory +Test UNKNOWN STEP 2026-05-02T06:04:24.5760833Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Test UNKNOWN STEP 2026-05-02T06:04:24.5795908Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Test UNKNOWN STEP 2026-05-02T06:04:24.5829094Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Test UNKNOWN STEP 2026-05-02T06:04:24.6048483Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Test UNKNOWN STEP 2026-05-02T06:04:24.6068954Z http.https://github.com/.extraheader +Test UNKNOWN STEP 2026-05-02T06:04:24.6081965Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader +Test UNKNOWN STEP 2026-05-02T06:04:24.6113591Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Test UNKNOWN STEP 2026-05-02T06:04:24.6331021Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Test UNKNOWN STEP 2026-05-02T06:04:24.6360815Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Test UNKNOWN STEP 2026-05-02T06:04:24.6695389Z Cleaning up orphan processes +Test UNKNOWN STEP 2026-05-02T06:04:24.7049631Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7482347Z Current runner version: '2.334.0' +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7505792Z ##[group]Runner Image Provisioner +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7506545Z Hosted Compute Agent +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7507014Z Version: 20260213.493 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7507507Z Commit: 5c115507f6dd24b8de37d8bbe0bb4509d0cc0fa3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7508194Z Build Date: 2026-02-13T00:28:41Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7508798Z Worker ID: {88e212a4-eb60-4984-98c6-63a6848f2ff7} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7509364Z Azure Region: westus3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7509867Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7511462Z ##[group]Operating System +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7511989Z Ubuntu +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7512403Z 24.04.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7512894Z LTS +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7513264Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7513988Z ##[group]Runner Image +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7514499Z Image: ubuntu-24.04 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7514916Z Version: 20260413.86.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7516108Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20260413.86/images/ubuntu/Ubuntu2404-Readme.md +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7517393Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260413.86 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7518163Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7519110Z ##[group]GITHUB_TOKEN Permissions +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7521085Z Contents: read +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7521623Z Metadata: read +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7522025Z Pages: write +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7522434Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7524389Z Secret source: Actions +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7525314Z Prepare workflow directory +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7841944Z Prepare all required actions +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:30.7881833Z Getting action download info +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:31.3165843Z Download action repository 'actions/checkout@v4' (SHA:34e114876b0b11c390a56381ad16ebd13914f8d5) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:31.4281755Z Download action repository 'dtolnay/rust-toolchain@stable' (SHA:29eef336d9b2848a0b548edc03f92a220660cdb8) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:31.6783102Z Download action repository 'actions/setup-node@v4' (SHA:49933ea5288caeca8642d1e84afbd3f7d6820020) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:31.7472074Z Download action repository 'actions/configure-pages@v5' (SHA:983d7736d9b0ae728b81ab479565c72886d7745b) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:32.4024419Z Download action repository 'actions/upload-pages-artifact@v3' (SHA:56afc609e74202658d3ffba0e8f6dda462b719fa) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:32.6472682Z Download action repository 'actions/deploy-pages@v4' (SHA:d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:33.9302782Z Getting action download info +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.0849968Z Download action repository 'actions/upload-artifact@v4' (SHA:ea165f8d65b6e75b540449e92b4886f43607fa02) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2071901Z Complete job name: Deploy GitHub Pages +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2685901Z ##[group]Run actions/checkout@v4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2686437Z with: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2686650Z repository: link-foundation/link-cli +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2687140Z token: *** +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2687324Z ssh-strict: true +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2687517Z ssh-user: git +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2687717Z persist-credentials: true +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2687940Z clean: true +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2688193Z sparse-checkout-cone-mode: true +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2688424Z fetch-depth: 1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2688607Z fetch-tags: false +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2688789Z show-progress: true +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2688986Z lfs: false +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2689149Z submodules: false +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2689342Z set-safe-directory: true +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.2689692Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3759794Z Syncing repository: link-foundation/link-cli +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3761198Z ##[group]Getting Git version info +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3761569Z Working directory is '/home/runner/work/link-cli/link-cli' +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3762224Z [command]/usr/bin/git version +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3785678Z git version 2.53.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3808339Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3821660Z Temporarily overriding HOME='/home/runner/work/_temp/322a13ba-6e3d-4241-8463-5c8f169d463a' before making global git config changes +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3822622Z Adding repository directory to the temporary git global config as a safe directory +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3826701Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3853430Z Deleting the contents of '/home/runner/work/link-cli/link-cli' +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3856631Z ##[group]Initializing the repository +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3860520Z [command]/usr/bin/git init /home/runner/work/link-cli/link-cli +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3945765Z hint: Using 'master' as the name for the initial branch. This default branch name +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3946476Z hint: will change to "main" in Git 3.0. To configure the initial branch name +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3946990Z hint: to use in all of your new repositories, which will suppress this warning, +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3947357Z hint: call: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3947525Z hint: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3947797Z hint: git config --global init.defaultBranch +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3948067Z hint: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3948382Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3948870Z hint: 'development'. The just-created branch can be renamed via this command: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3949205Z hint: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3949402Z hint: git branch -m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3949601Z hint: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3949919Z hint: Disable this message with "git config set advice.defaultBranchName false" +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3950540Z Initialized empty Git repository in /home/runner/work/link-cli/link-cli/.git/ +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3959645Z [command]/usr/bin/git remote add origin https://github.com/link-foundation/link-cli +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3985817Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3986503Z ##[group]Disabling automatic garbage collection +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.3990998Z [command]/usr/bin/git config --local gc.auto 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4014433Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4014990Z ##[group]Setting up auth +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4022154Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4047213Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4299100Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4325814Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4492297Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4517016Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4689431Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4717860Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4718592Z ##[group]Fetching the repository +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:34.4727810Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +26050750382b801a4d9f33d1445627e2db2b7867:refs/remotes/origin/main +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1619766Z From https://github.com/link-foundation/link-cli +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1620303Z * [new ref] 26050750382b801a4d9f33d1445627e2db2b7867 -> origin/main +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1641817Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1642379Z ##[group]Determining the checkout info +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1643626Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1648637Z [command]/usr/bin/git sparse-checkout disable +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1678697Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1698664Z ##[group]Checking out the ref +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1702757Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1804261Z Switched to a new branch 'main' +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1805009Z branch 'main' set up to track 'origin/main'. +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1811095Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1841889Z [command]/usr/bin/git log -1 --format=%H +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.1859523Z 26050750382b801a4d9f33d1445627e2db2b7867 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2157666Z ##[group]Run dtolnay/rust-toolchain@stable +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2157969Z with: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2158157Z targets: wasm32-unknown-unknown +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2158402Z toolchain: stable +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2158628Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2279124Z ##[group]Run : parse toolchain version +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2279553Z ^[[36;1m: parse toolchain version^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2279853Z ^[[36;1mif [[ -z $toolchain ]]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2280424Z ^[[36;1m # GitHub does not enforce `required: true` inputs itself. https://github.com/actions/runner/issues/1070^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2281019Z ^[[36;1m echo "'toolchain' is a required input" >&2^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2281280Z ^[[36;1m exit 1^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2281589Z ^[[36;1melif [[ $toolchain =~ ^stable' '[0-9]+' '(year|month|week|day)s?' 'ago$ ]]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2281998Z ^[[36;1m if [[ Linux == macOS ]]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2282532Z ^[[36;1m echo "toolchain=1.$((($(date -v-$(sed 's/stable \([0-9]*\) \(.\).*/\1\2/' <<< $toolchain) +%s)/60/60/24-16569)/7/6))" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2282988Z ^[[36;1m else^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2283349Z ^[[36;1m echo "toolchain=1.$((($(date --date "${toolchain#stable }" +%s)/60/60/24-16569)/7/6))" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2283754Z ^[[36;1m fi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2284012Z ^[[36;1melif [[ $toolchain =~ ^stable' 'minus' '[0-9]+' 'releases?$ ]]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2284491Z ^[[36;1m echo "toolchain=1.$((($(date +%s)/60/60/24-16569)/7/6-${toolchain//[^0-9]/}))" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2284900Z ^[[36;1melif [[ $toolchain =~ ^1\.[0-9]+$ ]]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2285583Z ^[[36;1m echo "toolchain=1.$((i=${toolchain#1.}, c=($(date +%s)/60/60/24-16569)/7/6, i+9*i*(10*i<=c)+90*i*(100*i<=c)))" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2286035Z ^[[36;1melse^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2286251Z ^[[36;1m echo "toolchain=$toolchain" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2286511Z ^[[36;1mfi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2302990Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2303309Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2303487Z toolchain: stable +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2303672Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2426899Z ##[group]Run : construct rustup command line +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2427237Z ^[[36;1m: construct rustup command line^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2427653Z ^[[36;1mecho "targets=$(for t in ${targets//,/ }; do echo -n ' --target' $t; done)" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2428244Z ^[[36;1mecho "components=$(for c in ${components//,/ }; do echo -n ' --component' $c; done)" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2428684Z ^[[36;1mecho "downgrade=" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2441308Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2441649Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2441865Z targets: wasm32-unknown-unknown +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2442102Z components: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2442285Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2507297Z ##[group]Run : set $CARGO_HOME +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2507573Z ^[[36;1m: set $CARGO_HOME^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2507863Z ^[[36;1mecho CARGO_HOME=${CARGO_HOME:-"$HOME/.cargo"} >> $GITHUB_ENV^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2520200Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2520520Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2585673Z ##[group]Run : install rustup if needed +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2585985Z ^[[36;1m: install rustup if needed^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2586262Z ^[[36;1mif ! command -v rustup &>/dev/null; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2586952Z ^[[36;1m curl --proto '=https' --tlsv1.2 --retry 10 --retry-connrefused --location --silent --show-error --fail https://sh.rustup.rs | sh -s -- --default-toolchain none -y^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2587614Z ^[[36;1m echo "$CARGO_HOME/bin" >> $GITHUB_PATH^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2587977Z ^[[36;1mfi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2599456Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2599760Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2600172Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2600404Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2660600Z ##[group]Run rustup toolchain install stable --target wasm32-unknown-unknown --profile minimal --no-self-update +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2661359Z ^[[36;1mrustup toolchain install stable --target wasm32-unknown-unknown --profile minimal --no-self-update^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2673167Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2673547Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2673776Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2674122Z RUSTUP_PERMIT_COPY_RENAME: 1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.2674415Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.4101023Z info: syncing channel updates for stable-x86_64-unknown-linux-gnu +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.6003304Z info: latest update on 2026-04-16 for version 1.95.0 (59807616e 2026-04-14) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.6136797Z info: removing previous version of component clippy +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.6153976Z info: removing previous version of component rustfmt +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.6165679Z info: removing previous version of component cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.6202177Z info: removing previous version of component rust-std +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.6231979Z info: removing previous version of component rustc +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:35.6272506Z info: downloading 6 components +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4639343Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4713372Z stable-x86_64-unknown-linux-gnu updated - rustc 1.95.0 (59807616e 2026-04-14) (from rustc 1.94.1 (e408947bf 2026-03-25)) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4714035Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4776401Z ##[group]Run rustup default stable +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4776744Z ^[[36;1mrustup default stable^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4789731Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4790108Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4790408Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4790718Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4871046Z info: using existing install for stable-x86_64-unknown-linux-gnu +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4880547Z info: default toolchain set to stable-x86_64-unknown-linux-gnu +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4881055Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4945404Z stable-x86_64-unknown-linux-gnu unchanged - rustc 1.95.0 (59807616e 2026-04-14) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4946233Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4976981Z ##[group]Run : create cachekey +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4977408Z ^[[36;1m: create cachekey^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4977940Z ^[[36;1mDATE=$(rustc +stable --version --verbose | sed -ne 's/^commit-date: \(20[0-9][0-9]\)-\([01][0-9]\)-\([0-3][0-9]\)$/\1\2\3/p')^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4978640Z ^[[36;1mHASH=$(rustc +stable --version --verbose | sed -ne 's/^commit-hash: //p')^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4979150Z ^[[36;1mecho "cachekey=$(echo $DATE$HASH | head -c12)" >> $GITHUB_OUTPUT^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4991795Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4992220Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4992447Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.4992773Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5300492Z ##[group]Run : disable incremental compilation +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5300848Z ^[[36;1m: disable incremental compilation^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5301155Z ^[[36;1mif [ -z "${CARGO_INCREMENTAL+set}" ]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5301464Z ^[[36;1m echo CARGO_INCREMENTAL=0 >> $GITHUB_ENV^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5301728Z ^[[36;1mfi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5314261Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5314615Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5314835Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5315062Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5362405Z ##[group]Run : enable colors in Cargo output +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5362738Z ^[[36;1m: enable colors in Cargo output^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5363062Z ^[[36;1mif [ -z "${CARGO_TERM_COLOR+set}" ]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5363363Z ^[[36;1m echo CARGO_TERM_COLOR=always >> $GITHUB_ENV^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5363629Z ^[[36;1mfi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5375778Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5376090Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5376276Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5376636Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5376841Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5427634Z ##[group]Run : enable Cargo sparse registry +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5427973Z ^[[36;1m: enable Cargo sparse registry^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5428322Z ^[[36;1m# implemented in 1.66, stabilized in 1.68, made default in 1.70^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5428976Z ^[[36;1mif [ -z "${CARGO_REGISTRIES_CRATES_IO_PROTOCOL+set}" -o -f "/home/runner/work/_temp"/.implicit_cargo_registries_crates_io_protocol ]; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5429652Z ^[[36;1m if rustc +stable --version --verbose | grep -q '^release: 1\.6[89]\.'; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5430172Z ^[[36;1m touch "/home/runner/work/_temp"/.implicit_cargo_registries_crates_io_protocol || true^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5430664Z ^[[36;1m echo CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse >> $GITHUB_ENV^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5431134Z ^[[36;1m elif rustc +stable --version --verbose | grep -q '^release: 1\.6[67]\.'; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5431664Z ^[[36;1m touch "/home/runner/work/_temp"/.implicit_cargo_registries_crates_io_protocol || true^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5432131Z ^[[36;1m echo CARGO_REGISTRIES_CRATES_IO_PROTOCOL=git >> $GITHUB_ENV^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5432444Z ^[[36;1m fi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5432604Z ^[[36;1mfi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5443968Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5444276Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5444463Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5444696Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5444900Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5445280Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5726906Z ##[group]Run : work around spurious network errors in curl 8.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5727331Z ^[[36;1m: work around spurious network errors in curl 8.0^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5727841Z ^[[36;1m# https://rust-lang.zulipchat.com/#narrow/stream/246057-t-cargo/topic/timeout.20investigation^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5728436Z ^[[36;1mif rustc +stable --version --verbose | grep -q '^release: 1\.7[01]\.'; then^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5728991Z ^[[36;1m echo CARGO_HTTP_MULTIPLEXING=false >> $GITHUB_ENV^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5729467Z ^[[36;1mfi^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5742490Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5742818Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5743053Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5743289Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5743489Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5743743Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5907293Z ##[group]Run rustc +stable --version --verbose +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5907635Z ^[[36;1mrustc +stable --version --verbose^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5919910Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5920233Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5920416Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5920671Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5920867Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.5921069Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6052138Z rustc 1.95.0 (59807616e 2026-04-14) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6052835Z binary: rustc +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6053338Z commit-hash: 59807616e1fa2540724bfbac14d7976d7e4a3860 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6053873Z commit-date: 2026-04-14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6054291Z host: x86_64-unknown-linux-gnu +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6054690Z release: 1.95.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6055324Z LLVM version: 22.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6119632Z ##[group]Run cargo install wasm-pack --version 0.14.0 --locked +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6120042Z ^[[36;1mcargo install wasm-pack --version 0.14.0 --locked^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6132814Z shell: /usr/bin/bash -e {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6133045Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6133231Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6133472Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6133672Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6133879Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.6379290Z ^[[1m^[[92m Updating^[[0m crates.io index +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.7778079Z ^[[1m^[[92m Downloading^[[0m crates ... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.9162185Z ^[[1m^[[92m Downloaded^[[0m wasm-pack v0.14.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.9687251Z ^[[1m^[[92m Installing^[[0m wasm-pack v0.14.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:46.9728486Z ^[[1m^[[92m Updating^[[0m crates.io index +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:47.6762951Z ^[[1m^[[92m Updating^[[0m crates.io index +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:47.9106045Z ^[[1m^[[92m Downloading^[[0m crates ... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:47.9920729Z ^[[1m^[[92m Downloaded^[[0m anstyle-query v1.1.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0106803Z ^[[1m^[[92m Downloaded^[[0m adler2 v2.0.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0119250Z ^[[1m^[[92m Downloaded^[[0m autocfg v1.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0134941Z ^[[1m^[[92m Downloaded^[[0m anstream v0.6.21 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0152003Z ^[[1m^[[92m Downloaded^[[0m colorchoice v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0206756Z ^[[1m^[[92m Downloaded^[[0m cargo-platform v0.3.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0230337Z ^[[1m^[[92m Downloaded^[[0m anstyle v1.0.13 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0243826Z ^[[1m^[[92m Downloaded^[[0m potential_utf v0.1.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0253273Z ^[[1m^[[92m Downloaded^[[0m anstyle-parse v0.2.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0273137Z ^[[1m^[[92m Downloaded^[[0m powerfmt v0.2.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0285561Z ^[[1m^[[92m Downloaded^[[0m cargo_metadata v0.23.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0300616Z ^[[1m^[[92m Downloaded^[[0m clap_lex v0.7.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0330096Z ^[[1m^[[92m Downloaded^[[0m block-buffer v0.10.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0357630Z ^[[1m^[[92m Downloaded^[[0m rustc-demangle v0.1.27 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0382474Z ^[[1m^[[92m Downloaded^[[0m cfg-if v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0417327Z ^[[1m^[[92m Downloaded^[[0m pkg-config v0.3.32 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0433766Z ^[[1m^[[92m Downloaded^[[0m quote v1.0.43 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0456924Z ^[[1m^[[92m Downloaded^[[0m byteorder v1.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0468906Z ^[[1m^[[92m Downloaded^[[0m constant_time_eq v0.3.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0481875Z ^[[1m^[[92m Downloaded^[[0m num-conv v0.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0494204Z ^[[1m^[[92m Downloaded^[[0m env_filter v0.1.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0506138Z ^[[1m^[[92m Downloaded^[[0m cpufeatures v0.2.17 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0517565Z ^[[1m^[[92m Downloaded^[[0m proc-macro2 v1.0.105 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0543969Z ^[[1m^[[92m Downloaded^[[0m fastrand v2.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0555755Z ^[[1m^[[92m Downloaded^[[0m cipher v0.4.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0567338Z ^[[1m^[[92m Downloaded^[[0m anyhow v1.0.100 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0599837Z ^[[1m^[[92m Downloaded^[[0m is_terminal_polyfill v1.70.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0608670Z ^[[1m^[[92m Downloaded^[[0m is_executable v0.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0617865Z ^[[1m^[[92m Downloaded^[[0m env_home v0.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0627854Z ^[[1m^[[92m Downloaded^[[0m generic-array v0.14.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0638870Z ^[[1m^[[92m Downloaded^[[0m errno v0.3.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0653481Z ^[[1m^[[92m Downloaded^[[0m itoa v1.0.17 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0665456Z ^[[1m^[[92m Downloaded^[[0m equivalent v1.0.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0673357Z ^[[1m^[[92m Downloaded^[[0m bitflags v2.10.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0700424Z ^[[1m^[[92m Downloaded^[[0m crypto-common v0.1.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0708781Z ^[[1m^[[92m Downloaded^[[0m camino v1.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0731055Z ^[[1m^[[92m Downloaded^[[0m glob v0.3.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0744805Z ^[[1m^[[92m Downloaded^[[0m percent-encoding v2.3.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0753738Z ^[[1m^[[92m Downloaded^[[0m zerofrom-derive v0.1.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0762389Z ^[[1m^[[92m Downloaded^[[0m siphasher v1.0.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0771463Z ^[[1m^[[92m Downloaded^[[0m hex v0.4.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0784954Z ^[[1m^[[92m Downloaded^[[0m subtle v2.6.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0799146Z ^[[1m^[[92m Downloaded^[[0m siphasher v0.3.11 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0812229Z ^[[1m^[[92m Downloaded^[[0m version_check v0.9.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0825403Z ^[[1m^[[92m Downloaded^[[0m pbkdf2 v0.12.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0837249Z ^[[1m^[[92m Downloaded^[[0m zeroize_derive v1.4.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0846305Z ^[[1m^[[92m Downloaded^[[0m jobserver v0.1.34 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0861331Z ^[[1m^[[92m Downloaded^[[0m utf8_iter v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0869269Z ^[[1m^[[92m Downloaded^[[0m time-core v0.1.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0880443Z ^[[1m^[[92m Downloaded^[[0m yoke v0.8.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0897025Z ^[[1m^[[92m Downloaded^[[0m scopeguard v1.2.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0907314Z ^[[1m^[[92m Downloaded^[[0m path-clean v1.0.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0918892Z ^[[1m^[[92m Downloaded^[[0m xattr v1.6.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0934473Z ^[[1m^[[92m Downloaded^[[0m once_cell v1.21.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0952010Z ^[[1m^[[92m Downloaded^[[0m parking_lot v0.12.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0970417Z ^[[1m^[[92m Downloaded^[[0m yoke-derive v0.8.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0986176Z ^[[1m^[[92m Downloaded^[[0m zmij v1.0.16 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.0995789Z ^[[1m^[[92m Downloaded^[[0m xz2 v0.1.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1012728Z ^[[1m^[[92m Downloaded^[[0m zstd-safe v7.2.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1028988Z ^[[1m^[[92m Downloaded^[[0m walkdir v2.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1045014Z ^[[1m^[[92m Downloaded^[[0m toml_writer v1.0.6+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1057549Z ^[[1m^[[92m Downloaded^[[0m zerovec-derive v0.11.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1070775Z ^[[1m^[[92m Downloaded^[[0m unicode-ident v1.0.22 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1091304Z ^[[1m^[[92m Downloaded^[[0m toml_parser v1.0.6+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1112504Z ^[[1m^[[92m Downloaded^[[0m simd-adler32 v0.3.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1127533Z ^[[1m^[[92m Downloaded^[[0m backtrace v0.3.76 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1167584Z ^[[1m^[[92m Downloaded^[[0m zstd v0.13.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1191246Z ^[[1m^[[92m Downloaded^[[0m zerotrie v0.2.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1220868Z ^[[1m^[[92m Downloaded^[[0m url v2.5.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1244117Z ^[[1m^[[92m Downloaded^[[0m rustls-webpki v0.103.9 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1272305Z ^[[1m^[[92m Downloaded^[[0m zip v2.4.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1305507Z ^[[1m^[[92m Downloaded^[[0m zerovec v0.11.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1343664Z ^[[1m^[[92m Downloaded^[[0m ureq v2.12.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1384618Z ^[[1m^[[92m Downloaded^[[0m winnow v0.7.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1445491Z ^[[1m^[[92m Downloaded^[[0m sysinfo v0.37.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1513822Z ^[[1m^[[92m Downloaded^[[0m time v0.3.45 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1588586Z ^[[1m^[[92m Downloaded^[[0m webpki-roots v1.0.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1618135Z ^[[1m^[[92m Downloaded^[[0m object v0.37.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1689012Z ^[[1m^[[92m Downloaded^[[0m rustix v1.1.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1838381Z ^[[1m^[[92m Downloaded^[[0m gimli v0.32.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1888782Z ^[[1m^[[92m Downloaded^[[0m unicode-width v0.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.1932523Z ^[[1m^[[92m Downloaded^[[0m rustix v0.38.44 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2071782Z ^[[1m^[[92m Downloaded^[[0m rustls v0.23.36 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2146790Z ^[[1m^[[92m Downloaded^[[0m syn v2.0.114 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2214457Z ^[[1m^[[92m Downloaded^[[0m serde_json v1.0.149 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2263161Z ^[[1m^[[92m Downloaded^[[0m chrono v0.4.43 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2310093Z ^[[1m^[[92m Downloaded^[[0m icu_properties_data v2.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2372230Z ^[[1m^[[92m Downloaded^[[0m typenum v1.19.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2391223Z ^[[1m^[[92m Downloaded^[[0m serde v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2415708Z ^[[1m^[[92m Downloaded^[[0m idna v1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2442117Z ^[[1m^[[92m Downloaded^[[0m serde_core v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2460430Z ^[[1m^[[92m Downloaded^[[0m hashbrown v0.16.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2497958Z ^[[1m^[[92m Downloaded^[[0m clap_builder v4.5.54 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2540722Z ^[[1m^[[92m Downloaded^[[0m bzip2-sys v0.1.13+1.0.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2622769Z ^[[1m^[[92m Downloaded^[[0m zopfli v0.8.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2639104Z ^[[1m^[[92m Downloaded^[[0m uuid v1.19.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2661532Z ^[[1m^[[92m Downloaded^[[0m toml v0.9.11+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2687988Z ^[[1m^[[92m Downloaded^[[0m tempfile v3.24.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2705348Z ^[[1m^[[92m Downloaded^[[0m tar v0.4.44 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2723855Z ^[[1m^[[92m Downloaded^[[0m serde_derive v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2745056Z ^[[1m^[[92m Downloaded^[[0m indexmap v2.13.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2773989Z ^[[1m^[[92m Downloaded^[[0m lzma-sys v0.1.20 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.2957389Z ^[[1m^[[92m Downloaded^[[0m libc v0.2.180 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3167876Z ^[[1m^[[92m Downloaded^[[0m memchr v2.7.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3200203Z ^[[1m^[[92m Downloaded^[[0m bumpalo v3.19.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3219265Z ^[[1m^[[92m Downloaded^[[0m base64 v0.22.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3244281Z ^[[1m^[[92m Downloaded^[[0m zstd-sys v2.0.16+zstd.1.5.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3356706Z ^[[1m^[[92m Downloaded^[[0m smallvec v1.15.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3370847Z ^[[1m^[[92m Downloaded^[[0m rustls-pki-types v1.14.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3387847Z ^[[1m^[[92m Downloaded^[[0m miniz_oxide v0.8.9 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3406645Z ^[[1m^[[92m Downloaded^[[0m toml_datetime v0.7.5+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3417192Z ^[[1m^[[92m Downloaded^[[0m zeroize v1.8.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3426879Z ^[[1m^[[92m Downloaded^[[0m aes v0.8.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3448969Z ^[[1m^[[92m Downloaded^[[0m icu_properties v2.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3464961Z ^[[1m^[[92m Downloaded^[[0m icu_normalizer v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3487743Z ^[[1m^[[92m Downloaded^[[0m icu_locale_core v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3530044Z ^[[1m^[[92m Downloaded^[[0m icu_collections v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3567774Z ^[[1m^[[92m Downloaded^[[0m getrandom v0.3.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3589635Z ^[[1m^[[92m Downloaded^[[0m flate2 v1.1.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3624478Z ^[[1m^[[92m Downloaded^[[0m cc v1.2.53 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3645363Z ^[[1m^[[92m Downloaded^[[0m log v0.4.29 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3661544Z ^[[1m^[[92m Downloaded^[[0m icu_normalizer_data v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3676987Z ^[[1m^[[92m Downloaded^[[0m zerofrom v0.1.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3683135Z ^[[1m^[[92m Downloaded^[[0m which v8.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3695892Z ^[[1m^[[92m Downloaded^[[0m thiserror-impl v2.0.18 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3706031Z ^[[1m^[[92m Downloaded^[[0m synstructure v0.13.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3713958Z ^[[1m^[[92m Downloaded^[[0m num-traits v0.2.19 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3732038Z ^[[1m^[[92m Downloaded^[[0m icu_provider v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3750347Z ^[[1m^[[92m Downloaded^[[0m getrandom v0.2.17 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3769656Z ^[[1m^[[92m Downloaded^[[0m writeable v0.6.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3782168Z ^[[1m^[[92m Downloaded^[[0m tinystr v0.8.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3795770Z ^[[1m^[[92m Downloaded^[[0m thiserror v2.0.18 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3829883Z ^[[1m^[[92m Downloaded^[[0m semver v1.0.27 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3845818Z ^[[1m^[[92m Downloaded^[[0m webpki-roots v0.26.11 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3855689Z ^[[1m^[[92m Downloaded^[[0m utf8parse v0.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3862988Z ^[[1m^[[92m Downloaded^[[0m untrusted v0.9.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3873515Z ^[[1m^[[92m Downloaded^[[0m shlex v1.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.3882912Z ^[[1m^[[92m Downloaded^[[0m ring v0.17.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4154043Z ^[[1m^[[92m Downloaded^[[0m parking_lot_core v0.9.12 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4167003Z ^[[1m^[[92m Downloaded^[[0m litemap v0.8.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4182069Z ^[[1m^[[92m Downloaded^[[0m iana-time-zone v0.1.64 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4198966Z ^[[1m^[[92m Downloaded^[[0m shell-words v1.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4205417Z ^[[1m^[[92m Downloaded^[[0m serde_spanned v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4214334Z ^[[1m^[[92m Downloaded^[[0m serde_ignored v0.1.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4222850Z ^[[1m^[[92m Downloaded^[[0m displaydoc v0.2.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4240864Z ^[[1m^[[92m Downloaded^[[0m deflate64 v0.1.10 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4249825Z ^[[1m^[[92m Downloaded^[[0m crc32fast v1.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4264615Z ^[[1m^[[92m Downloaded^[[0m strsim v0.11.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4273019Z ^[[1m^[[92m Downloaded^[[0m stable_deref_trait v1.2.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4279613Z ^[[1m^[[92m Downloaded^[[0m socks v0.3.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4287918Z ^[[1m^[[92m Downloaded^[[0m sha1 v0.10.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4297861Z ^[[1m^[[92m Downloaded^[[0m fs4 v0.6.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4312048Z ^[[1m^[[92m Downloaded^[[0m filetime v0.2.27 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4322399Z ^[[1m^[[92m Downloaded^[[0m env_logger v0.11.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4339522Z ^[[1m^[[92m Downloaded^[[0m binary-install v0.4.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4351649Z ^[[1m^[[92m Downloaded^[[0m hmac v0.12.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4364131Z ^[[1m^[[92m Downloaded^[[0m clap_derive v4.5.49 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4378266Z ^[[1m^[[92m Downloaded^[[0m bzip2 v0.5.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4390381Z ^[[1m^[[92m Downloaded^[[0m human-panic v2.0.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4399476Z ^[[1m^[[92m Downloaded^[[0m dialoguer v0.12.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4419330Z ^[[1m^[[92m Downloaded^[[0m lzma-rs v0.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4435821Z ^[[1m^[[92m Downloaded^[[0m lock_api v0.4.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4445380Z ^[[1m^[[92m Downloaded^[[0m digest v0.10.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4456398Z ^[[1m^[[92m Downloaded^[[0m inout v0.1.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4463830Z ^[[1m^[[92m Downloaded^[[0m idna_adapter v1.2.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4470311Z ^[[1m^[[92m Downloaded^[[0m form_urlencoded v1.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4484738Z ^[[1m^[[92m Downloaded^[[0m same-file v1.0.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4493204Z ^[[1m^[[92m Downloaded^[[0m heck v0.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4501251Z ^[[1m^[[92m Downloaded^[[0m dirs-next v2.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4508606Z ^[[1m^[[92m Downloaded^[[0m linux-raw-sys v0.4.15 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4815424Z ^[[1m^[[92m Downloaded^[[0m find-msvc-tools v0.1.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4825880Z ^[[1m^[[92m Downloaded^[[0m deranged v0.5.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4836652Z ^[[1m^[[92m Downloaded^[[0m clap v4.5.54 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4887422Z ^[[1m^[[92m Downloaded^[[0m addr2line v0.25.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4900177Z ^[[1m^[[92m Downloaded^[[0m dirs-sys-next v0.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4907270Z ^[[1m^[[92m Downloaded^[[0m crc-catalog v2.4.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4914591Z ^[[1m^[[92m Downloaded^[[0m crc v3.4.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4924667Z ^[[1m^[[92m Downloaded^[[0m console v0.16.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.4941670Z ^[[1m^[[92m Downloaded^[[0m linux-raw-sys v0.11.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.5734774Z ^[[1m^[[92m Compiling^[[0m libc v0.2.180 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.5735670Z ^[[1m^[[92m Compiling^[[0m proc-macro2 v1.0.105 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.5736320Z ^[[1m^[[92m Compiling^[[0m quote v1.0.43 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.5737292Z ^[[1m^[[92m Compiling^[[0m unicode-ident v1.0.22 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.6366465Z ^[[1m^[[92m Compiling^[[0m shlex v1.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.7125929Z ^[[1m^[[92m Compiling^[[0m find-msvc-tools v0.1.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.7421793Z ^[[1m^[[92m Compiling^[[0m cfg-if v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:48.7706181Z ^[[1m^[[92m Compiling^[[0m pkg-config v0.3.32 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.3107110Z ^[[1m^[[92m Compiling^[[0m syn v2.0.114 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.3539799Z ^[[1m^[[92m Compiling^[[0m serde_core v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.4876324Z ^[[1m^[[92m Compiling^[[0m stable_deref_trait v1.2.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.5236472Z ^[[1m^[[92m Compiling^[[0m version_check v0.9.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.6065438Z ^[[1m^[[92m Compiling^[[0m jobserver v0.1.34 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.7186329Z ^[[1m^[[92m Compiling^[[0m typenum v1.19.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.7516482Z ^[[1m^[[92m Compiling^[[0m generic-array v0.14.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:49.8066673Z ^[[1m^[[92m Compiling^[[0m cc v1.2.53 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:51.0236474Z ^[[1m^[[92m Compiling^[[0m writeable v0.6.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:51.1857346Z ^[[1m^[[92m Compiling^[[0m bitflags v2.10.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:51.2137442Z ^[[1m^[[92m Compiling^[[0m memchr v2.7.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:51.5116590Z ^[[1m^[[92m Compiling^[[0m litemap v0.8.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:51.6506932Z ^[[1m^[[92m Compiling^[[0m crypto-common v0.1.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:51.7237707Z ^[[1m^[[92m Compiling^[[0m rustix v1.1.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:51.9166846Z ^[[1m^[[92m Compiling^[[0m subtle v2.6.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.0046789Z ^[[1m^[[92m Compiling^[[0m smallvec v1.15.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.1946967Z ^[[1m^[[92m Compiling^[[0m icu_normalizer_data v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.2007708Z ^[[1m^[[92m Compiling^[[0m icu_properties_data v2.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.2589781Z ^[[1m^[[92m Compiling^[[0m simd-adler32 v0.3.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.2626637Z ^[[1m^[[92m Compiling^[[0m getrandom v0.3.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.4137109Z ^[[1m^[[92m Compiling^[[0m synstructure v0.13.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.5486426Z ^[[1m^[[92m Compiling^[[0m ring v0.17.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.7692921Z ^[[1m^[[92m Compiling^[[0m zstd-sys v2.0.16+zstd.1.5.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.8486520Z ^[[1m^[[92m Compiling^[[0m linux-raw-sys v0.11.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.8797143Z ^[[1m^[[92m Compiling^[[0m log v0.4.29 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:52.9486746Z ^[[1m^[[92m Compiling^[[0m adler2 v2.0.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:53.0326485Z ^[[1m^[[92m Compiling^[[0m crc32fast v1.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:53.0546825Z ^[[1m^[[92m Compiling^[[0m miniz_oxide v0.8.9 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:53.8564409Z ^[[1m^[[92m Compiling^[[0m zerofrom-derive v0.1.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:54.6836537Z ^[[1m^[[92m Compiling^[[0m zerofrom v0.1.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:54.7344783Z ^[[1m^[[92m Compiling^[[0m yoke-derive v0.8.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:54.7466494Z ^[[1m^[[92m Compiling^[[0m zerovec-derive v0.11.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:55.4796528Z ^[[1m^[[92m Compiling^[[0m yoke v0.8.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:55.5377435Z ^[[1m^[[92m Compiling^[[0m displaydoc v0.2.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:55.5765612Z ^[[1m^[[92m Compiling^[[0m zerovec v0.11.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:55.8746759Z ^[[1m^[[92m Compiling^[[0m zeroize_derive v1.4.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:55.9976430Z ^[[1m^[[92m Compiling^[[0m zerotrie v0.2.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:56.1463852Z ^[[1m^[[92m Compiling^[[0m tinystr v0.8.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:56.2396480Z ^[[1m^[[92m Compiling^[[0m zeroize v1.8.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:56.2856699Z ^[[1m^[[92m Compiling^[[0m icu_locale_core v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:56.3566569Z ^[[1m^[[92m Compiling^[[0m potential_utf v0.1.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:56.3946675Z ^[[1m^[[92m Compiling^[[0m rustls-pki-types v1.14.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:56.4516514Z ^[[1m^[[92m Compiling^[[0m icu_collections v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:57.1036011Z ^[[1m^[[92m Compiling^[[0m icu_provider v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:57.7606339Z ^[[1m^[[92m Compiling^[[0m block-buffer v0.10.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:57.8426336Z ^[[1m^[[92m Compiling^[[0m once_cell v1.21.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:58.0106316Z ^[[1m^[[92m Compiling^[[0m zmij v1.0.16 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:58.1476587Z ^[[1m^[[92m Compiling^[[0m serde v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:58.3157300Z ^[[1m^[[92m Compiling^[[0m digest v0.10.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:58.4946643Z ^[[1m^[[92m Compiling^[[0m icu_normalizer v2.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:59.0181713Z ^[[1m^[[92m Compiling^[[0m icu_properties v2.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:04:59.8565893Z ^[[1m^[[92m Compiling^[[0m serde_derive v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:00.6636394Z ^[[1m^[[92m Compiling^[[0m lzma-sys v0.1.20 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:00.8167468Z ^[[1m^[[92m Compiling^[[0m bzip2-sys v0.1.13+1.0.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:00.9182955Z ^[[1m^[[92m Compiling^[[0m getrandom v0.2.17 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:01.0656858Z ^[[1m^[[92m Compiling^[[0m byteorder v1.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:01.2596433Z ^[[1m^[[92m Compiling^[[0m zstd-safe v7.2.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:01.3256562Z ^[[1m^[[92m Compiling^[[0m utf8parse v0.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:01.3686676Z ^[[1m^[[92m Compiling^[[0m serde_json v1.0.149 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:01.4320614Z ^[[1m^[[92m Compiling^[[0m thiserror v2.0.18 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:01.5458476Z ^[[1m^[[92m Compiling^[[0m untrusted v0.9.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:01.6476666Z ^[[1m^[[92m Compiling^[[0m anstyle-parse v0.2.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:06.7931833Z ^[[1m^[[92m Compiling^[[0m idna_adapter v1.2.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:07.0257059Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v2.0.18 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:07.8783010Z ^[[1m^[[92m Compiling^[[0m inout v0.1.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:07.9480239Z ^[[1m^[[92m Compiling^[[0m rustix v0.38.44 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:08.0946436Z ^[[1m^[[92m Compiling^[[0m anstyle v1.0.13 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:08.2810395Z ^[[1m^[[92m Compiling^[[0m colorchoice v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:08.3205246Z ^[[1m^[[92m Compiling^[[0m percent-encoding v2.3.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:08.5026572Z ^[[1m^[[92m Compiling^[[0m rustls v0.23.36 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:08.5626423Z ^[[1m^[[92m Compiling^[[0m object v0.37.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:08.6716426Z ^[[1m^[[92m Compiling^[[0m autocfg v1.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:08.9506501Z ^[[1m^[[92m Compiling^[[0m powerfmt v0.2.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:09.1186714Z ^[[1m^[[92m Compiling^[[0m is_terminal_polyfill v1.70.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:09.1424998Z ^[[1m^[[92m Compiling^[[0m utf8_iter v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:09.2264595Z ^[[1m^[[92m Compiling^[[0m anstyle-query v1.1.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:09.2656300Z ^[[1m^[[92m Compiling^[[0m cpufeatures v0.2.17 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:09.2922743Z ^[[1m^[[92m Compiling^[[0m crc-catalog v2.4.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:09.3277076Z ^[[1m^[[92m Compiling^[[0m itoa v1.0.17 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:12.1623145Z ^[[1m^[[92m Compiling^[[0m crc v3.4.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:12.2656726Z ^[[1m^[[92m Compiling^[[0m anstream v0.6.21 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:12.3076427Z ^[[1m^[[92m Compiling^[[0m idna v1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:12.7403110Z ^[[1m^[[92m Compiling^[[0m deranged v0.5.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:13.8478264Z ^[[1m^[[92m Compiling^[[0m num-traits v0.2.19 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:13.8940739Z ^[[1m^[[92m Compiling^[[0m rustls-webpki v0.103.9 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:14.6640255Z ^[[1m^[[92m Compiling^[[0m form_urlencoded v1.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:14.8646435Z ^[[1m^[[92m Compiling^[[0m cipher v0.4.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.0431356Z ^[[1m^[[92m Compiling^[[0m flate2 v1.1.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.0466338Z ^[[1m^[[92m Compiling^[[0m hmac v0.12.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.1317364Z ^[[1m^[[92m Compiling^[[0m webpki-roots v1.0.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.1906786Z ^[[1m^[[92m Compiling^[[0m hashbrown v0.16.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.5416407Z ^[[1m^[[92m Compiling^[[0m camino v1.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.6816507Z ^[[1m^[[92m Compiling^[[0m equivalent v1.0.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.7096503Z ^[[1m^[[92m Compiling^[[0m winnow v0.7.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:15.8636447Z ^[[1m^[[92m Compiling^[[0m gimli v0.32.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:16.8166496Z ^[[1m^[[92m Compiling^[[0m bumpalo v3.19.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:17.0296599Z ^[[1m^[[92m Compiling^[[0m zip v2.4.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:17.1018198Z ^[[1m^[[92m Compiling^[[0m anyhow v1.0.100 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:17.2436536Z ^[[1m^[[92m Compiling^[[0m time-core v0.1.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:17.3326586Z ^[[1m^[[92m Compiling^[[0m linux-raw-sys v0.4.15 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:17.5932856Z ^[[1m^[[92m Compiling^[[0m parking_lot_core v0.9.12 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:17.6486282Z ^[[1m^[[92m Compiling^[[0m num-conv v0.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:17.7543391Z ^[[1m^[[92m Compiling^[[0m time v0.3.45 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:18.4116928Z ^[[1m^[[92m Compiling^[[0m addr2line v0.25.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:18.8706379Z ^[[1m^[[92m Compiling^[[0m toml_parser v1.0.6+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:19.2756335Z ^[[1m^[[92m Compiling^[[0m zopfli v0.8.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:20.3866637Z ^[[1m^[[92m Compiling^[[0m indexmap v2.13.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:21.0276456Z ^[[1m^[[92m Compiling^[[0m webpki-roots v0.26.11 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:21.0536933Z ^[[1m^[[92m Compiling^[[0m pbkdf2 v0.12.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:21.1226431Z ^[[1m^[[92m Compiling^[[0m bzip2 v0.5.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:21.2016959Z ^[[1m^[[92m Compiling^[[0m aes v0.8.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:21.2286271Z ^[[1m^[[92m Compiling^[[0m xz2 v0.1.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:21.2776693Z ^[[1m^[[92m Compiling^[[0m url v2.5.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:24.1156447Z ^[[1m^[[92m Compiling^[[0m lzma-rs v0.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:24.8813725Z ^[[1m^[[92m Compiling^[[0m sha1 v0.10.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:25.2886322Z ^[[1m^[[92m Compiling^[[0m socks v0.3.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:25.7196384Z ^[[1m^[[92m Compiling^[[0m xattr v1.6.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:25.9511140Z ^[[1m^[[92m Compiling^[[0m toml_datetime v0.7.5+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:26.3147107Z ^[[1m^[[92m Compiling^[[0m serde_spanned v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:26.3277183Z ^[[1m^[[92m Compiling^[[0m filetime v0.2.27 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:26.3892287Z ^[[1m^[[92m Compiling^[[0m dirs-sys-next v0.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:26.4896509Z ^[[1m^[[92m Compiling^[[0m clap_lex v0.7.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:26.7696477Z ^[[1m^[[92m Compiling^[[0m base64 v0.22.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:26.8716555Z ^[[1m^[[92m Compiling^[[0m toml_writer v1.0.6+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:27.0576487Z ^[[1m^[[92m Compiling^[[0m scopeguard v1.2.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:27.0977715Z ^[[1m^[[92m Compiling^[[0m strsim v0.11.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:27.2337759Z ^[[1m^[[92m Compiling^[[0m rustc-demangle v0.1.27 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:27.8536495Z ^[[1m^[[92m Compiling^[[0m deflate64 v0.1.10 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:28.2556569Z ^[[1m^[[92m Compiling^[[0m fastrand v2.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:28.2806134Z ^[[1m^[[92m Compiling^[[0m heck v0.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:28.4216552Z ^[[1m^[[92m Compiling^[[0m constant_time_eq v0.3.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:28.4551246Z ^[[1m^[[92m Compiling^[[0m unicode-width v0.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:28.4717920Z ^[[1m^[[92m Compiling^[[0m clap_derive v4.5.49 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:28.6636947Z ^[[1m^[[92m Compiling^[[0m console v0.16.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:29.9499081Z ^[[1m^[[92m Compiling^[[0m tempfile v3.24.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:29.9936584Z ^[[1m^[[92m Compiling^[[0m backtrace v0.3.76 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:30.8767704Z ^[[1m^[[92m Compiling^[[0m clap_builder v4.5.54 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:32.9296590Z ^[[1m^[[92m Compiling^[[0m zstd v0.13.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:35.7876367Z ^[[1m^[[92m Compiling^[[0m lock_api v0.4.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:35.9726975Z ^[[1m^[[92m Compiling^[[0m toml v0.9.11+spec-1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:37.5996698Z ^[[1m^[[92m Compiling^[[0m ureq v2.12.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:41.1086533Z ^[[1m^[[92m Compiling^[[0m dirs-next v2.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:41.1926824Z ^[[1m^[[92m Compiling^[[0m tar v0.4.44 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:44.1436613Z ^[[1m^[[92m Compiling^[[0m fs4 v0.6.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:44.4296903Z ^[[1m^[[92m Compiling^[[0m uuid v1.19.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:44.4576253Z ^[[1m^[[92m Compiling^[[0m env_filter v0.1.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:44.8256269Z ^[[1m^[[92m Compiling^[[0m semver v1.0.27 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:44.8776753Z ^[[1m^[[92m Compiling^[[0m cargo-platform v0.3.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.1806563Z ^[[1m^[[92m Compiling^[[0m sysinfo v0.37.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.4296763Z ^[[1m^[[92m Compiling^[[0m siphasher v0.3.11 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.4676791Z ^[[1m^[[92m Compiling^[[0m iana-time-zone v0.1.64 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.5664562Z ^[[1m^[[92m Compiling^[[0m same-file v1.0.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.6588341Z ^[[1m^[[92m Compiling^[[0m hex v0.4.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.9026785Z ^[[1m^[[92m Compiling^[[0m env_home v0.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.9138141Z ^[[1m^[[92m Compiling^[[0m is_executable v0.1.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.9476831Z ^[[1m^[[92m Compiling^[[0m shell-words v1.1.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.9676557Z ^[[1m^[[92m Compiling^[[0m binary-install v0.4.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:45.9896625Z ^[[1m^[[92m Compiling^[[0m which v8.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:46.1390394Z ^[[1m^[[92m Compiling^[[0m dialoguer v0.12.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:46.3801370Z ^[[1m^[[92m Compiling^[[0m human-panic v2.0.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:47.0466467Z ^[[1m^[[92m Compiling^[[0m walkdir v2.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:47.8526558Z ^[[1m^[[92m Compiling^[[0m chrono v0.4.43 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:48.1451741Z ^[[1m^[[92m Compiling^[[0m cargo_metadata v0.23.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:48.2306546Z ^[[1m^[[92m Compiling^[[0m env_logger v0.11.8 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:48.8186586Z ^[[1m^[[92m Compiling^[[0m parking_lot v0.12.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:49.6486479Z ^[[1m^[[92m Compiling^[[0m clap v4.5.54 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:49.6764496Z ^[[1m^[[92m Compiling^[[0m serde_ignored v0.1.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:49.7516498Z ^[[1m^[[92m Compiling^[[0m siphasher v1.0.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:49.8336107Z ^[[1m^[[92m Compiling^[[0m path-clean v1.0.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:49.8886691Z ^[[1m^[[92m Compiling^[[0m glob v0.3.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:50.4970691Z ^[[1m^[[92m Compiling^[[0m wasm-pack v0.14.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9118118Z ^[[1m^[[92m Finished^[[0m `release` profile [optimized] target(s) in 1m 11s +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9289264Z ^[[1m^[[92m Installing^[[0m /home/runner/.cargo/bin/wasm-pack +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9291766Z ^[[1m^[[92m Installed^[[0m package `wasm-pack v0.14.0` (executable `wasm-pack`) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9895541Z ##[group]Run actions/setup-node@v4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9895802Z with: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9895968Z node-version: 20.x +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9896155Z cache: npm +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9896326Z always-auth: false +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9896505Z check-latest: false +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9896822Z token: *** +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9896977Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9897154Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9897371Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9897564Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:57.9897756Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.1607841Z Found in cache @ /opt/hostedtoolcache/node/20.20.2/x64 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.1613649Z ##[group]Environment details +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.5066416Z node: v20.20.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.5066851Z npm: 10.8.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.5067150Z yarn: 1.22.22 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.5067915Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.5086722Z [command]/opt/hostedtoolcache/node/20.20.2/x64/bin/npm config get cache +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.6237692Z /home/runner/.npm +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:05:58.8906343Z Cache hit for: node-cache-Linux-x64-npm-d315d8b9cf81d047cf497bbcc55d1d84ab2bcc1d591d7e669c7aa9738b286549 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.1451763Z Received 11038429 of 19427037 (56.8%), 10.5 MBs/sec +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2154131Z Received 19427037 of 19427037 (100.0%), 17.3 MBs/sec +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2154704Z Cache Size: ~19 MB (19427037 B) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2181338Z [command]/usr/bin/tar -xf /home/runner/work/_temp/018b4fb5-ac52-48c2-9cfc-dc013b2184d7/cache.tzst -P -C /home/runner/work/link-cli/link-cli --use-compress-program unzstd +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2427028Z Cache restored successfully +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2440882Z Cache restored from key: node-cache-Linux-x64-npm-d315d8b9cf81d047cf497bbcc55d1d84ab2bcc1d591d7e669c7aa9738b286549 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2541336Z ##[group]Run npm ci +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2541574Z ^[[36;1mnpm ci^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2563731Z shell: /usr/bin/bash -e {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2563974Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2564155Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2564401Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2564609Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:00.2564814Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.8929166Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.8936753Z added 23 packages, and audited 24 packages in 2s +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.8937047Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.8937225Z 8 packages are looking for funding +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.8937508Z run `npm fund` for details +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.8937787Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.8937963Z found 0 vulnerabilities +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9074775Z ##[group]Run npm run build:pages +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9075060Z ^[[36;1mnpm run build:pages^[[0m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9088299Z shell: /usr/bin/bash -e {0} +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9088552Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9088738Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9088985Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9089220Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:01.9089425Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.0277209Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.0278208Z > link-cli-web@2.3.0 build:pages +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.0279108Z > npm run build:wasm && DEPLOY_TARGET=github-pages npm run build:web +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.0279577Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.1457866Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.1458488Z > link-cli-web@2.3.0 build:wasm +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.1459190Z > wasm-pack build --target web --out-dir web/pkg +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:02.1459564Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.2685642Z [INFO]: 🎯 Checking for the Wasm target... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.2956904Z [INFO]: 🌀 Compiling to Wasm... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.3897962Z ^[[1m^[[92m Compiling^[[0m unicode-ident v1.0.24 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.3906945Z ^[[1m^[[92m Compiling^[[0m proc-macro2 v1.0.106 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.3907896Z ^[[1m^[[92m Compiling^[[0m quote v1.0.45 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.3915030Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-shared v0.2.120 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.4437250Z ^[[1m^[[92m Compiling^[[0m rustversion v1.0.22 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.4995040Z ^[[1m^[[92m Compiling^[[0m autocfg v1.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.5157683Z ^[[1m^[[92m Compiling^[[0m once_cell v1.21.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.7946321Z ^[[1m^[[92m Compiling^[[0m cfg-if v1.0.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.8119237Z ^[[1m^[[92m Compiling^[[0m num-traits v0.2.19 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.8198637Z ^[[1m^[[92m Compiling^[[0m bumpalo v3.20.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:03.9356745Z ^[[1m^[[92m Compiling^[[0m thiserror v2.0.18 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.0318049Z ^[[1m^[[92m Compiling^[[0m serde_core v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.1036933Z ^[[1m^[[92m Compiling^[[0m utf8parse v0.2.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.1424927Z ^[[1m^[[92m Compiling^[[0m syn v2.0.117 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.1543488Z ^[[1m^[[92m Compiling^[[0m anstyle-parse v1.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.1948676Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen v0.2.120 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.2816974Z ^[[1m^[[92m Compiling^[[0m colorchoice v1.0.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.3256881Z ^[[1m^[[92m Compiling^[[0m is_terminal_polyfill v1.70.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.3542991Z ^[[1m^[[92m Compiling^[[0m anstyle v1.0.14 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.3629207Z ^[[1m^[[92m Compiling^[[0m anstyle-query v1.1.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.5567199Z ^[[1m^[[92m Compiling^[[0m anstream v1.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.9466805Z ^[[1m^[[92m Compiling^[[0m platform-num v0.8.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.9959828Z ^[[1m^[[92m Compiling^[[0m strsim v0.11.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:04.9964047Z ^[[1m^[[92m Compiling^[[0m heck v0.5.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:05.1336680Z ^[[1m^[[92m Compiling^[[0m clap_lex v1.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:05.3476950Z ^[[1m^[[92m Compiling^[[0m thiserror v1.0.69 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:05.4816722Z ^[[1m^[[92m Compiling^[[0m memchr v2.8.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:05.6356549Z ^[[1m^[[92m Compiling^[[0m serde v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:05.7628203Z ^[[1m^[[92m Compiling^[[0m fastrand v2.4.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:05.9126784Z ^[[1m^[[92m Compiling^[[0m dtor-proc-macro v0.0.5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:06.0428335Z ^[[1m^[[92m Compiling^[[0m tempfile v3.27.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:06.0511269Z ^[[1m^[[92m Compiling^[[0m dtor v0.0.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:06.1176779Z ^[[1m^[[92m Compiling^[[0m clap_builder v4.6.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:06.5516532Z ^[[1m^[[92m Compiling^[[0m beef v0.5.2 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:06.6270271Z ^[[1m^[[92m Compiling^[[0m ctor-proc-macro v0.0.6 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:06.7680623Z ^[[1m^[[92m Compiling^[[0m anyhow v1.0.102 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:06.9166728Z ^[[1m^[[92m Compiling^[[0m zmij v1.0.21 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.0236031Z ^[[1m^[[92m Compiling^[[0m slab v0.4.12 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.0357335Z ^[[1m^[[92m Compiling^[[0m pin-project-lite v0.2.17 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.0738027Z ^[[1m^[[92m Compiling^[[0m allocator-api2 v0.4.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.1316640Z ^[[1m^[[92m Compiling^[[0m futures-core v0.3.32 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.2096695Z ^[[1m^[[92m Compiling^[[0m futures-task v0.3.32 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.3068816Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-macro-support v0.2.120 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.4209357Z ^[[1m^[[92m Compiling^[[0m memmap2 v0.9.10 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:07.5366611Z ^[[1m^[[92m Compiling^[[0m futures-util v0.3.32 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:08.7257226Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v2.0.18 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:09.3210728Z ^[[1m^[[92m Compiling^[[0m clap_derive v4.6.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:09.7926731Z ^[[1m^[[92m Compiling^[[0m thiserror-impl v1.0.69 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:10.4066737Z ^[[1m^[[92m Compiling^[[0m wasm-bindgen-macro v0.2.120 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:10.7928239Z ^[[1m^[[92m Compiling^[[0m serde_derive v1.0.228 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:10.9866707Z ^[[1m^[[92m Compiling^[[0m clap v4.6.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:11.0547222Z ^[[1m^[[92m Compiling^[[0m platform-data v2.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:11.1896785Z ^[[1m^[[92m Compiling^[[0m platform-mem v0.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:11.3966684Z ^[[1m^[[92m Compiling^[[0m ctor v0.4.3 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:11.4236646Z ^[[1m^[[92m Compiling^[[0m nom v8.0.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:12.0517769Z ^[[1m^[[92m Compiling^[[0m platform-trees v0.3.4 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:12.1386530Z ^[[1m^[[92m Compiling^[[0m lino-env v0.1.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:12.5476655Z ^[[1m^[[92m Compiling^[[0m serde_json v1.0.149 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:12.6086705Z ^[[1m^[[92m Compiling^[[0m leak_slice v0.2.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:12.6340221Z ^[[1m^[[92m Compiling^[[0m tap v1.0.1 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:12.6869450Z ^[[1m^[[92m Compiling^[[0m dotenvy v0.15.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:13.2490931Z ^[[1m^[[92m Compiling^[[0m doublets v0.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:13.8536736Z ^[[1m^[[92m Compiling^[[0m js-sys v0.3.97 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:14.1476646Z ^[[1m^[[92m Compiling^[[0m lino-arguments v0.3.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:14.4200221Z ^[[1m^[[92m Compiling^[[0m links-notation v0.13.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:15.1116463Z ^[[1m^[[92m Compiling^[[0m itoa v1.0.18 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:15.3626771Z ^[[1m^[[92m Compiling^[[0m link-cli v0.1.0 (/home/runner/work/link-cli/link-cli/rust) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:15.9606735Z ^[[1m^[[92m Compiling^[[0m console_error_panic_hook v0.1.7 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:20.7273849Z ^[[1m^[[92m Compiling^[[0m web-sys v0.3.97 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:21.5500190Z ^[[1m^[[92m Compiling^[[0m clink-wasm v2.3.0 (/home/runner/work/link-cli/link-cli) +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:22.3257158Z ^[[1m^[[92m Finished^[[0m `release` profile [optimized] target(s) in 19.02s +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:22.3334095Z [INFO]: ⬇️ Installing wasm-bindgen... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:24.3703531Z [INFO]: Optimizing wasm binaries with `wasm-opt`... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.1041123Z [INFO]: ✨ Done in 24.84s +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.1041789Z [INFO]: 📦 Your wasm pkg is ready to publish at /home/runner/work/link-cli/link-cli/web/pkg. +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.2115331Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.2115993Z > link-cli-web@2.3.0 build:web +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.2116722Z > vite build --config web/vite.config.js +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.2117137Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.3967805Z ^[[36mvite v8.0.10 ^[[32mbuilding client environment for production...^[[36m^[[39m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.4078435Z ^[[2K +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6108731Z transforming...✓ 1736 modules transformed. +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6403678Z rendering chunks... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6770809Z computing gzip size... +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6822792Z dist/assets/favicon-CIVoLc1m.svg 0.37 kB │ gzip: 0.24 kB +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6823812Z dist/index.html 0.66 kB │ gzip: 0.38 kB +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6824762Z dist/assets/doublets_web_bg-cVQpTmMF.wasm 51.41 kB │ gzip: 20.96 kB +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6826472Z dist/assets/clink_wasm_bg-CdOWT-Uc.wasm 283.33 kB │ gzip: 123.51 kB +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6827514Z dist/assets/index-D8XZ-J-o.css 5.91 kB │ gzip: 2.07 kB +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6828394Z dist/assets/index-BPCELU7J.js 220.96 kB │ gzip: 68.68 kB +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6828787Z +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.6829077Z ^[[32m✓ built in 285ms^[[39m +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7089547Z ##[group]Run actions/configure-pages@v5 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7089809Z with: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7090116Z token: *** +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7090295Z enablement: false +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7090466Z env: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7090643Z CARGO_HOME: /home/runner/.cargo +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7090876Z CARGO_INCREMENTAL: 0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7091074Z CARGO_TERM_COLOR: always +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:28.7091277Z ##[endgroup] +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.1698083Z ##[error]Get Pages site failed. Please verify that the repository has Pages enabled and configured to build using GitHub Actions, or consider exploring the `enablement` parameter for this action. Error: Not Found - https://docs.github.com/rest/pages/pages#get-a-apiname-pages-site +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.1710064Z ##[error]HttpError: Not Found - https://docs.github.com/rest/pages/pages#get-a-apiname-pages-site +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.1803269Z Post job cleanup. +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.2694656Z [command]/usr/bin/git version +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.2728054Z git version 2.53.0 +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.2766188Z Temporarily overriding HOME='/home/runner/work/_temp/b85c40e5-2954-4614-abf8-0f8c353aed06' before making global git config changes +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.2766958Z Adding repository directory to the temporary git global config as a safe directory +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.2779953Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/link-cli/link-cli +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.2810801Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.2840297Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3016518Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3034335Z http.https://github.com/.extraheader +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3045604Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3071653Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3245770Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3272344Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3549494Z Evaluate and set environment url +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3552988Z Evaluated environment url: +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3553627Z Cleaning up orphan processes +Deploy GitHub Pages UNKNOWN STEP 2026-05-02T06:06:29.3767802Z ##[warning]Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/configure-pages@v5, actions/setup-node@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ diff --git a/package.json b/package.json index b23154a..710184c 100644 --- a/package.json +++ b/package.json @@ -7,14 +7,14 @@ "scripts": { "build": "npm run build:wasm && npm run build:web", "build:pages": "npm run build:wasm && DEPLOY_TARGET=github-pages npm run build:web", - "build:wasm": "wasm-pack build --target web --out-dir web/pkg", + "build:wasm": "wasm-pack build --target web --out-dir ../../web/pkg rust/wasm", "build:web": "vite build --config web/vite.config.js", "dev": "npm run build:wasm && vite --config web/vite.config.js --host 0.0.0.0", "preview": "vite preview --config web/vite.config.js --host 0.0.0.0", "test": "npm run test:wasm && npm run test:js && npm run build", - "test:js": "node --test web/test/*.test.mjs scripts/*.test.mjs", - "test:wasm": "wasm-pack test --node", - "clean": "rm -rf dist web/pkg pkg pkg-node pkg-bundler target" + "test:js": "node --test web/test/*.test.mjs csharp/scripts/*.test.mjs", + "test:wasm": "wasm-pack test --node rust/wasm", + "clean": "rm -rf dist web/pkg pkg pkg-node pkg-bundler target rust/wasm/target" }, "dependencies": { "doublets-web": "^0.1.2", diff --git a/rust/Cargo.toml b/rust/Cargo.toml index 2ea0972..f928079 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -5,6 +5,7 @@ edition = "2021" description = "A CLI tool for links manipulation" license = "Unlicense" repository = "https://github.com/link-foundation/link-cli" +readme = "README.md" authors = ["link-foundation"] keywords = ["links", "doublets", "cli", "database"] categories = ["command-line-utilities", "database"] diff --git a/rust/README.md b/rust/README.md new file mode 100644 index 0000000..debb0ef --- /dev/null +++ b/rust/README.md @@ -0,0 +1,34 @@ +# link-cli Rust Package + +[![Rust CI/CD Pipeline](https://github.com/link-foundation/link-cli/actions/workflows/rust.yml/badge.svg)](https://github.com/link-foundation/link-cli/actions/workflows/rust.yml) +[![Crates.io](https://img.shields.io/crates/v/link-cli?logo=rust&label=Crates.io)](https://crates.io/crates/link-cli) +[![Docs.rs](https://docs.rs/link-cli/badge.svg)](https://docs.rs/link-cli) +[![GitHub Release](https://img.shields.io/github/v/release/link-foundation/link-cli?filter=rust-v*&label=Rust%20release)](https://github.com/link-foundation/link-cli/releases) + +This directory contains the Rust `link-cli` library and native `clink` binary. +It mirrors the core query processor, named references, LiNo import/export, and +structure formatting used by the production C# tool. The WebAssembly wrapper +crate lives in `rust/wasm/` and depends on this package. + +## Install + +```bash +cargo install link-cli +``` + +## Use + +```bash +clink '() ((1 1))' --changes --after +``` + +## Develop + +```bash +cargo fmt --manifest-path rust/Cargo.toml --all -- --check +cargo clippy --manifest-path rust/Cargo.toml --all-targets --all-features +cargo test --manifest-path rust/Cargo.toml --all-features +``` + +Release automation for this package lives in `rust/scripts/` and uses changelog +fragments from `rust/changelog.d/`. diff --git a/rust/changelog.d/20260512_000000_issue_77_layout.md b/rust/changelog.d/20260512_000000_issue_77_layout.md new file mode 100644 index 0000000..00a8e10 --- /dev/null +++ b/rust/changelog.d/20260512_000000_issue_77_layout.md @@ -0,0 +1,6 @@ +--- +bump: patch +--- + +Moved Rust release automation into `rust/scripts/`, added crates.io publication +checks, and relocated the WebAssembly wrapper crate under `rust/wasm/`. diff --git a/rust/scripts/bump-version.rs b/rust/scripts/bump-version.rs new file mode 100644 index 0000000..a2885f0 --- /dev/null +++ b/rust/scripts/bump-version.rs @@ -0,0 +1,173 @@ +#!/usr/bin/env rust-script +//! Bump version in Cargo.toml +//! +//! Usage: rust-script rust/scripts/bump-version.rs --bump-type [--dry-run] [--rust-root ] +//! +//! Supports both single-language and multi-language repository structures: +//! - Single-language: Cargo.toml in repository root +//! - Multi-language: Cargo.toml in rust/ subfolder +//! +//! ```cargo +//! [dependencies] +//! regex = "1" +//! ``` + +use regex::Regex; +use std::env; +use std::fs; +use std::process::exit; + +#[path = "rust-paths.rs"] +mod rust_paths; + +#[derive(Debug, Clone, Copy, PartialEq)] +enum BumpType { + Major, + Minor, + Patch, +} + +impl BumpType { + fn from_str(s: &str) -> Option { + match s.to_lowercase().as_str() { + "major" => Some(BumpType::Major), + "minor" => Some(BumpType::Minor), + "patch" => Some(BumpType::Patch), + _ => None, + } + } +} + +struct Version { + major: u32, + minor: u32, + patch: u32, +} + +impl Version { + fn bump(&self, bump_type: BumpType) -> String { + match bump_type { + BumpType::Major => format!("{}.0.0", self.major + 1), + BumpType::Minor => format!("{}.{}.0", self.major, self.minor + 1), + BumpType::Patch => format!("{}.{}.{}", self.major, self.minor, self.patch + 1), + } + } + + fn to_string(&self) -> String { + format!("{}.{}.{}", self.major, self.minor, self.patch) + } +} + +fn get_arg(name: &str) -> Option { + let args: Vec = env::args().collect(); + let flag = format!("--{}", name); + + if let Some(idx) = args.iter().position(|a| a == &flag) { + return args.get(idx + 1).cloned(); + } + + // Check environment variable (convert dashes to underscores) + let env_name = name.to_uppercase().replace('-', "_"); + env::var(&env_name).ok().filter(|s| !s.is_empty()) +} + +fn has_flag(name: &str) -> bool { + let args: Vec = env::args().collect(); + let flag = format!("--{}", name); + args.contains(&flag) +} + +fn get_current_version(cargo_toml_path: &str) -> Result { + let content = fs::read_to_string(cargo_toml_path) + .map_err(|e| format!("Failed to read {}: {}", cargo_toml_path, e))?; + + let re = Regex::new(r#"(?m)^version\s*=\s*"(\d+)\.(\d+)\.(\d+)""#).unwrap(); + + if let Some(caps) = re.captures(&content) { + let major: u32 = caps.get(1).unwrap().as_str().parse().unwrap(); + let minor: u32 = caps.get(2).unwrap().as_str().parse().unwrap(); + let patch: u32 = caps.get(3).unwrap().as_str().parse().unwrap(); + Ok(Version { + major, + minor, + patch, + }) + } else { + Err(format!("Could not parse version from {}", cargo_toml_path)) + } +} + +fn update_cargo_toml(cargo_toml_path: &str, new_version: &str) -> Result<(), String> { + let content = fs::read_to_string(cargo_toml_path) + .map_err(|e| format!("Failed to read {}: {}", cargo_toml_path, e))?; + + let re = Regex::new(r#"(?m)^(version\s*=\s*")[^"]+(")"#).unwrap(); + let new_content = re.replace(&content, format!("${{1}}{}${{2}}", new_version).as_str()); + + fs::write(cargo_toml_path, new_content.as_ref()) + .map_err(|e| format!("Failed to write {}: {}", cargo_toml_path, e))?; + + Ok(()) +} + +fn main() { + let bump_type_str = match get_arg("bump-type") { + Some(s) => s, + None => { + eprintln!("Usage: rust-script rust/scripts/bump-version.rs --bump-type [--dry-run] [--rust-root ]"); + exit(1); + } + }; + + let bump_type = match BumpType::from_str(&bump_type_str) { + Some(bt) => bt, + None => { + eprintln!( + "Invalid bump type: {}. Must be major, minor, or patch.", + bump_type_str + ); + exit(1); + } + }; + + let dry_run = has_flag("dry-run"); + let rust_root = match rust_paths::get_rust_root(None, true) { + Ok(root) => root, + Err(e) => { + eprintln!("Error: {}", e); + exit(1); + } + }; + let cargo_toml = rust_paths::get_cargo_toml_path(&rust_root); + let package_manifest = match rust_paths::get_package_manifest_path(&cargo_toml) { + Ok(path) => path, + Err(e) => { + eprintln!("Error: {}", e); + exit(1); + } + }; + + let current = match get_current_version(package_manifest.to_string_lossy().as_ref()) { + Ok(v) => v, + Err(e) => { + eprintln!("Error: {}", e); + exit(1); + } + }; + + let new_version = current.bump(bump_type); + + println!("Current version: {}", current.to_string()); + println!("New version: {}", new_version); + + if dry_run { + println!("Dry run - no changes made"); + } else { + if let Err(e) = update_cargo_toml(package_manifest.to_string_lossy().as_ref(), &new_version) + { + eprintln!("Error: {}", e); + exit(1); + } + println!("Updated {}", package_manifest.display()); + } +} diff --git a/rust/scripts/check-changelog-fragment.rs b/rust/scripts/check-changelog-fragment.rs new file mode 100644 index 0000000..65cf788 --- /dev/null +++ b/rust/scripts/check-changelog-fragment.rs @@ -0,0 +1,188 @@ +#!/usr/bin/env rust-script +//! Check if a changelog fragment was added in the current PR +//! +//! This script validates that a changelog fragment is added in the PR diff, +//! not just checking if any fragments exist in the directory. This prevents +//! the check from incorrectly passing when there are leftover fragments +//! from previous PRs that haven't been released yet. +//! +//! Usage: rust-script rust/scripts/check-changelog-fragment.rs +//! +//! Environment variables (set by GitHub Actions): +//! - GITHUB_BASE_REF: Base branch name for PR (e.g., "main") +//! +//! Exit codes: +//! - 0: Check passed (fragment added or no source changes) +//! - 1: Check failed (source changes without changelog fragment) +//! +//! ```cargo +//! [dependencies] +//! regex = "1" +//! ``` + +use regex::Regex; +use std::env; +use std::path::Path; +use std::process::{exit, Command}; + +fn exec(command: &str, args: &[&str]) -> String { + match Command::new(command).args(args).output() { + Ok(output) => { + if output.status.success() { + String::from_utf8_lossy(&output.stdout).trim().to_string() + } else { + eprintln!("Error executing {} {:?}", command, args); + eprintln!("{}", String::from_utf8_lossy(&output.stderr)); + String::new() + } + } + Err(e) => { + eprintln!("Failed to execute {} {:?}: {}", command, args, e); + String::new() + } + } +} + +fn get_rust_root() -> String { + if let Ok(root) = env::var("RUST_ROOT") { + if !root.is_empty() { + return root; + } + } + + if Path::new("./Cargo.toml").exists() { + return ".".to_string(); + } + + if Path::new("./rust/Cargo.toml").exists() { + return "rust".to_string(); + } + + ".".to_string() +} + +fn get_changed_files() -> Vec { + let base_ref = env::var("GITHUB_BASE_REF").unwrap_or_else(|_| "main".to_string()); + eprintln!("Comparing against origin/{}...HEAD", base_ref); + + let output = exec( + "git", + &[ + "diff", + "--name-only", + &format!("origin/{}...HEAD", base_ref), + ], + ); + + if output.is_empty() { + return Vec::new(); + } + + output + .lines() + .filter(|s| !s.is_empty()) + .map(String::from) + .collect() +} + +fn is_source_file(file_path: &str, rust_root: &str) -> bool { + let prefix = if rust_root == "." { + String::new() + } else { + format!("{}/", rust_root) + }; + + let source_patterns = [ + Regex::new(&format!(r"^{}src/", regex::escape(&prefix))).unwrap(), + Regex::new(&format!(r"^{}tests/", regex::escape(&prefix))).unwrap(), + Regex::new(&format!(r"^{}scripts/", regex::escape(&prefix))).unwrap(), + Regex::new(&format!(r"^{}Cargo\.toml$", regex::escape(&prefix))).unwrap(), + ]; + + source_patterns + .iter() + .any(|pattern| pattern.is_match(file_path)) +} + +fn is_changelog_fragment(file_path: &str, rust_root: &str) -> bool { + let changelog_dir = if rust_root == "." { + "changelog.d/".to_string() + } else { + format!("{}/changelog.d/", rust_root) + }; + + (file_path.starts_with(&changelog_dir) || file_path.starts_with("changelog.d/")) + && file_path.ends_with(".md") + && !file_path.ends_with("README.md") +} + +fn main() { + println!("Checking for changelog fragment in PR diff...\n"); + + let rust_root = get_rust_root(); + if rust_root != "." { + println!( + "Detected multi-language repository (Rust root: {})", + rust_root + ); + } + + let changed_files = get_changed_files(); + + if changed_files.is_empty() { + println!("No changed files found"); + exit(0); + } + + println!("Changed files:"); + for file in &changed_files { + println!(" {}", file); + } + println!(); + + // Count source files changed + let source_changes: Vec<&String> = changed_files + .iter() + .filter(|f| is_source_file(f, &rust_root)) + .collect(); + let source_changed_count = source_changes.len(); + + println!("Source files changed: {}", source_changed_count); + if source_changed_count > 0 { + for file in &source_changes { + println!(" {}", file); + } + } + println!(); + + // Count changelog fragments added in this PR + let fragments_added: Vec<&String> = changed_files + .iter() + .filter(|f| is_changelog_fragment(f, &rust_root)) + .collect(); + let fragment_added_count = fragments_added.len(); + + println!("Changelog fragments added: {}", fragment_added_count); + if fragment_added_count > 0 { + for file in &fragments_added { + println!(" {}", file); + } + } + println!(); + + // Check if source files changed but no fragment was added + if source_changed_count > 0 && fragment_added_count == 0 { + eprintln!("::error::No changelog fragment found in this PR. Please add a changelog entry in changelog.d/"); + eprintln!(); + eprintln!("To create a changelog fragment:"); + eprintln!(" Create a new .md file in changelog.d/ with your changes"); + eprintln!(); + eprintln!("See changelog.d/README.md for more information."); + exit(1); + } + + println!( + "Changelog check passed (source files changed: {}, fragments added: {})", + source_changed_count, fragment_added_count + ); +} diff --git a/rust/scripts/check-file-size.rs b/rust/scripts/check-file-size.rs new file mode 100644 index 0000000..6ee792b --- /dev/null +++ b/rust/scripts/check-file-size.rs @@ -0,0 +1,293 @@ +#!/usr/bin/env rust-script +//! Check Rust files for maximum and warning line-count thresholds +//! Exits with error code 1 if any files exceed the hard limit +//! +//! Usage: rust-script rust/scripts/check-file-size.rs +//! +//! ```cargo +//! [dependencies] +//! walkdir = "2" +//! ``` + +use std::fs; +use std::path::Path; +#[cfg(not(test))] +use std::process::exit; +use walkdir::WalkDir; + +const MAX_LINES: usize = 1000; +const WARN_LINES: usize = 900; +const FILE_EXTENSIONS: &[&str] = &[".rs"]; +const EXCLUDE_PATTERNS: &[&str] = &["target", ".git", "node_modules"]; + +fn should_exclude(path: &Path) -> bool { + let path_str = path.to_string_lossy(); + EXCLUDE_PATTERNS + .iter() + .any(|pattern| path_str.contains(pattern)) +} + +fn has_valid_extension(path: &Path) -> bool { + let Some(ext) = path.extension().and_then(|ext| ext.to_str()) else { + return false; + }; + + FILE_EXTENSIONS + .iter() + .any(|valid_ext| valid_ext.strip_prefix('.') == Some(ext)) +} + +fn count_lines(path: &Path) -> Result { + let content = fs::read_to_string(path)?; + Ok(content.lines().count()) +} + +#[derive(Debug, PartialEq, Eq)] +struct Finding { + file: String, + lines: usize, +} + +#[derive(Debug, PartialEq, Eq)] +struct CheckResult { + warnings: Vec, + violations: Vec, +} + +#[derive(Debug, PartialEq, Eq)] +enum LineStatus { + WithinLimit, + Warning, + Violation, +} + +const fn classify_line_count(line_count: usize) -> LineStatus { + if line_count > MAX_LINES { + LineStatus::Violation + } else if line_count > WARN_LINES { + LineStatus::Warning + } else { + LineStatus::WithinLimit + } +} + +fn relative_path(path: &Path, cwd: &Path) -> String { + let relative = path + .strip_prefix(cwd) + .unwrap_or(path) + .to_string_lossy() + .to_string(); + + relative.replace(std::path::MAIN_SEPARATOR, "/") +} + +fn check_directory(cwd: &Path) -> CheckResult { + let mut result = CheckResult { + warnings: Vec::new(), + violations: Vec::new(), + }; + + for entry in WalkDir::new(cwd) + .into_iter() + .filter_map(std::result::Result::ok) + .filter(|e| e.file_type().is_file()) + { + let path = entry.path(); + + if should_exclude(path) { + continue; + } + + if !has_valid_extension(path) { + continue; + } + + match count_lines(path) { + Ok(line_count) => { + let finding = Finding { + file: relative_path(path, cwd), + lines: line_count, + }; + + match classify_line_count(line_count) { + LineStatus::Violation => result.violations.push(finding), + LineStatus::Warning => result.warnings.push(finding), + LineStatus::WithinLimit => {} + } + } + Err(error) => { + eprintln!("Warning: Could not read {}: {error}", path.display()); + } + } + } + + result +} + +fn escape_annotation_property(value: &str) -> String { + value + .replace('%', "%25") + .replace('\r', "%0D") + .replace('\n', "%0A") + .replace(':', "%3A") + .replace(',', "%2C") +} + +fn escape_annotation_message(value: &str) -> String { + value + .replace('%', "%25") + .replace('\r', "%0D") + .replace('\n', "%0A") +} + +fn warning_annotation(finding: &Finding) -> String { + let message = format!( + "File has {} lines (approaching limit of {MAX_LINES}). Consider extracting code to keep at or below {WARN_LINES} lines and prevent concurrent PR merge limit violations.", + finding.lines + ); + + format!( + "::warning file={}::{}", + escape_annotation_property(&finding.file), + escape_annotation_message(&message) + ) +} + +#[cfg(not(test))] +fn print_warnings(warnings: &[Finding]) { + if warnings.is_empty() { + return; + } + + for warning in warnings { + let annotation = warning_annotation(warning); + println!("{annotation}"); + println!( + "WARNING: {} has {} lines (approaching limit of {MAX_LINES}, warning threshold: {WARN_LINES})", + warning.file, warning.lines + ); + } + + println!(); + println!( + "The following files are approaching the {MAX_LINES} line limit (>{WARN_LINES} lines):" + ); + for warning in warnings { + println!(" {}", warning.file); + } + println!("\nConsider extracting code to prevent concurrent PR merge limit violations.\n"); +} + +#[cfg(not(test))] +fn print_violations(violations: &[Finding]) { + if violations.is_empty() { + return; + } + + println!("Found files exceeding the line limit:\n"); + for violation in violations { + println!( + " {}: {} lines (exceeds {MAX_LINES})", + violation.file, violation.lines + ); + } + println!("\nPlease refactor these files to be under {MAX_LINES} lines\n"); +} + +#[cfg(not(test))] +fn main() { + println!( + "\nChecking Rust files for maximum {MAX_LINES} lines (warning above {WARN_LINES})...\n" + ); + + let cwd = std::env::current_dir().expect("Failed to get current directory"); + let result = check_directory(&cwd); + + print_warnings(&result.warnings); + + if result.violations.is_empty() { + println!("All files are within the line limit\n"); + exit(0); + } else { + print_violations(&result.violations); + exit(1); + } +} + +#[cfg(test)] +mod tests { + use super::*; + use std::fmt::Write as _; + use std::path::PathBuf; + use std::time::{SystemTime, UNIX_EPOCH}; + + fn temp_dir(name: &str) -> PathBuf { + let nanos = SystemTime::now() + .duration_since(UNIX_EPOCH) + .unwrap() + .as_nanos(); + let path = std::env::temp_dir().join(format!("check-file-size-{name}-{nanos}")); + fs::create_dir_all(&path).unwrap(); + path + } + + fn write_rust_file_with_lines(path: &Path, line_count: usize) { + let mut content = String::new(); + for line in 1..=line_count { + writeln!(&mut content, "// line {line}").unwrap(); + } + fs::write(path, content).unwrap(); + } + + #[test] + fn classifies_warning_band_without_blocking() { + assert_eq!(classify_line_count(WARN_LINES), LineStatus::WithinLimit); + assert_eq!(classify_line_count(WARN_LINES + 1), LineStatus::Warning); + assert_eq!(classify_line_count(MAX_LINES), LineStatus::Warning); + } + + #[test] + fn classifies_hard_limit_violations() { + assert_eq!(classify_line_count(MAX_LINES + 1), LineStatus::Violation); + } + + #[test] + fn check_directory_reports_warning_and_violation_separately() { + let repo = temp_dir("thresholds"); + let src_dir = repo.join("src"); + fs::create_dir_all(&src_dir).unwrap(); + write_rust_file_with_lines(&src_dir.join("near_limit.rs"), WARN_LINES + 1); + write_rust_file_with_lines(&src_dir.join("over_limit.rs"), MAX_LINES + 1); + write_rust_file_with_lines(&src_dir.join("small.rs"), WARN_LINES); + + let result = check_directory(&repo); + + assert_eq!( + result.warnings, + vec![Finding { + file: "src/near_limit.rs".to_string(), + lines: WARN_LINES + 1, + }] + ); + assert_eq!( + result.violations, + vec![Finding { + file: "src/over_limit.rs".to_string(), + lines: MAX_LINES + 1, + }] + ); + } + + #[test] + fn warning_annotation_uses_github_actions_format() { + let finding = Finding { + file: "src/near_limit.rs".to_string(), + lines: WARN_LINES + 1, + }; + + assert_eq!( + warning_annotation(&finding), + "::warning file=src/near_limit.rs::File has 901 lines (approaching limit of 1000). Consider extracting code to keep at or below 900 lines and prevent concurrent PR merge limit violations." + ); + } +} diff --git a/rust/scripts/check-release-needed.rs b/rust/scripts/check-release-needed.rs new file mode 100644 index 0000000..9aa80c6 --- /dev/null +++ b/rust/scripts/check-release-needed.rs @@ -0,0 +1,395 @@ +#!/usr/bin/env rust-script +//! Check if a release is needed based on changelog fragments and version state +//! +//! This script checks: +//! 1. If there are changelog fragments to process +//! 2. If the current version has already been published to crates.io +//! 3. If the matching GitHub release and configured Docker Hub image tag exist +//! +//! IMPORTANT: This script checks external release artifacts, NOT git tags. +//! This is critical because: +//! - Git tags can exist without the package being published +//! - GitHub releases create tags but do not publish to crates.io or Docker Hub +//! - A crates.io publish can succeed while later Docker/GitHub release steps fail +//! +//! Supports both single-language and multi-language repository structures: +//! - Single-language: Cargo.toml in repository root +//! - Multi-language: Cargo.toml in rust/ subfolder +//! +//! Usage: rust-script rust/scripts/check-release-needed.rs [--rust-root ] +//! +//! Environment variables: +//! - HAS_FRAGMENTS: 'true' if changelog fragments exist (from get-bump-type.rs) +//! - DOCKERHUB_IMAGE: Optional Docker Hub image name to verify (namespace/repository) +//! - GITHUB_REPOSITORY: GitHub repository to verify (owner/repository) +//! +//! Outputs (written to GITHUB_OUTPUT): +//! - should_release: 'true' if a release should be created +//! - skip_bump: 'true' if version bump should be skipped while missing artifacts are recreated +//! - crate_published: 'true' if the current version already exists on crates.io +//! - dockerhub_required: 'true' if Docker Hub publishing is configured and a Dockerfile exists +//! - dockerhub_published: 'true' if the configured Docker Hub tag exists +//! - github_release_published: 'true' if the matching GitHub release exists +//! - max_published_version: the highest non-yanked version on crates.io (for downstream use) +//! +//! ```cargo +//! [dependencies] +//! regex = "1" +//! ureq = "2" +//! serde = { version = "1", features = ["derive"] } +//! serde_json = "1" +//! ``` + +use serde::Deserialize; +use std::env; +use std::fs; +use std::path::Path; +use std::process::exit; + +#[path = "rust-paths.rs"] +mod rust_paths; + +fn get_arg(name: &str) -> Option { + let args: Vec = env::args().collect(); + let flag = format!("--{}", name); + + if let Some(idx) = args.iter().position(|a| a == &flag) { + return args.get(idx + 1).cloned(); + } + + let env_name = name.to_uppercase().replace('-', "_"); + env::var(&env_name).ok().filter(|s| !s.is_empty()) +} + +fn set_output(key: &str, value: &str) { + if let Ok(output_file) = env::var("GITHUB_OUTPUT") { + if let Err(e) = fs::OpenOptions::new() + .create(true) + .append(true) + .open(&output_file) + .and_then(|mut f| { + use std::io::Write; + writeln!(f, "{}={}", key, value) + }) + { + eprintln!("Warning: Could not write to GITHUB_OUTPUT: {}", e); + } + } + println!("Output: {}={}", key, value); +} + +#[derive(Deserialize)] +struct CratesIoVersion { + version: Option, +} + +#[derive(Deserialize)] +struct CratesIoVersionInfo { + #[allow(dead_code)] + num: String, +} + +#[derive(Deserialize)] +struct CratesIoCrate { + versions: Option>, +} + +#[derive(Deserialize)] +struct CratesIoVersionEntry { + num: String, + yanked: bool, +} + +fn check_version_on_crates_io(crate_name: &str, version: &str) -> bool { + let url = format!("https://crates.io/api/v1/crates/{}/{}", crate_name, version); + + match ureq::get(&url) + .set("User-Agent", "rust-script-check-release") + .call() + { + Ok(response) => { + if response.status() == 200 { + if let Ok(body) = response.into_string() { + if let Ok(data) = serde_json::from_str::(&body) { + return data.version.is_some(); + } + } + } + false + } + Err(ureq::Error::Status(404, _)) => false, + Err(e) => { + eprintln!("Warning: Could not check crates.io: {}", e); + false + } + } +} + +fn split_docker_image(image: &str) -> Option<(&str, &str)> { + let mut parts = image.split('/'); + let namespace = parts.next()?; + let repository = parts.next()?; + + if parts.next().is_some() || namespace.is_empty() || repository.is_empty() { + None + } else { + Some((namespace, repository)) + } +} + +fn check_docker_hub_tag(image: &str, version: &str) -> bool { + let Some((namespace, repository)) = split_docker_image(image) else { + eprintln!( + "Warning: Could not parse Docker Hub image '{}'; expected namespace/repository", + image + ); + return false; + }; + + let url = format!( + "https://hub.docker.com/v2/repositories/{}/{}/tags/{}", + namespace, repository, version + ); + + match ureq::get(&url) + .set("User-Agent", "rust-script-check-release") + .call() + { + Ok(response) => response.status() == 200, + Err(ureq::Error::Status(404, _)) => false, + Err(e) => { + eprintln!("Warning: Could not check Docker Hub tag: {}", e); + false + } + } +} + +fn check_github_release(repository: &str, tag_prefix: &str, version: &str) -> bool { + let url = format!( + "https://api.github.com/repos/{}/releases/tags/{}{}", + repository, tag_prefix, version + ); + + let mut request = ureq::get(&url) + .set("User-Agent", "rust-script-check-release") + .set("Accept", "application/vnd.github+json"); + + if let Ok(token) = env::var("GITHUB_TOKEN") { + if !token.is_empty() { + let auth_header = format!("Bearer {}", token); + request = request.set("Authorization", &auth_header); + } + } + + match request.call() { + Ok(response) => response.status() == 200, + Err(ureq::Error::Status(404, _)) => false, + Err(e) => { + eprintln!("Warning: Could not check GitHub release: {}", e); + false + } + } +} + +fn docker_hub_image_to_check() -> Option { + get_arg("dockerhub-image") + .or_else(|| get_arg("docker-hub-image")) + .or_else(|| get_arg("dockerhub_image")) + .filter(|image| Path::new("Dockerfile").exists() && !image.trim().is_empty()) +} + +fn release_is_complete( + crate_published: bool, + dockerhub_required: bool, + dockerhub_published: bool, + github_release_published: bool, +) -> bool { + crate_published && (!dockerhub_required || dockerhub_published) && github_release_published +} + +fn parse_semver(version: &str) -> Option<(u32, u32, u32)> { + let parts: Vec<&str> = version.split('-').next()?.split('.').collect(); + if parts.len() != 3 { + return None; + } + Some(( + parts[0].parse().ok()?, + parts[1].parse().ok()?, + parts[2].parse().ok()?, + )) +} + +fn get_max_published_version(crate_name: &str) -> Option { + let url = format!("https://crates.io/api/v1/crates/{}", crate_name); + + match ureq::get(&url) + .set("User-Agent", "rust-script-check-release") + .call() + { + Ok(response) => { + if response.status() == 200 { + if let Ok(body) = response.into_string() { + if let Ok(data) = serde_json::from_str::(&body) { + if let Some(versions) = data.versions { + let mut max_version: Option<(u32, u32, u32, String)> = None; + for v in &versions { + if v.yanked { + continue; + } + if let Some(parsed) = parse_semver(&v.num) { + match &max_version { + None => { + max_version = + Some((parsed.0, parsed.1, parsed.2, v.num.clone())); + } + Some(current) => { + if parsed > (current.0, current.1, current.2) { + max_version = Some(( + parsed.0, + parsed.1, + parsed.2, + v.num.clone(), + )); + } + } + } + } + } + return max_version.map(|v| v.3); + } + } + } + } + None + } + Err(ureq::Error::Status(404, _)) => None, + Err(e) => { + eprintln!("Warning: Could not query crates.io for versions: {}", e); + None + } + } +} + +fn main() { + let rust_root = match rust_paths::get_rust_root(None, true) { + Ok(root) => root, + Err(e) => { + eprintln!("Error: {}", e); + exit(1); + } + }; + let cargo_toml = rust_paths::get_cargo_toml_path(&rust_root); + let package_manifest = match rust_paths::get_package_manifest_path(&cargo_toml) { + Ok(path) => path, + Err(e) => { + eprintln!("Error: {}", e); + exit(1); + } + }; + + let has_fragments = env::var("HAS_FRAGMENTS") + .map(|v| v == "true") + .unwrap_or(false); + + let package_info = match rust_paths::read_package_info(&package_manifest) { + Ok(info) => info, + Err(e) => { + eprintln!("Error: {}", e); + exit(1); + } + }; + let crate_name = package_info.name; + let current_version = package_info.version; + + let max_published = get_max_published_version(&crate_name); + if let Some(ref max_ver) = max_published { + println!("Max published version on crates.io: {}", max_ver); + set_output("max_published_version", max_ver); + } else { + println!("No versions published on crates.io yet (or crate not found)"); + set_output("max_published_version", ""); + } + + if !has_fragments { + let crate_published = check_version_on_crates_io(&crate_name, ¤t_version); + let tag_prefix = get_arg("tag-prefix").unwrap_or_else(|| "v".to_string()); + let dockerhub_image = docker_hub_image_to_check(); + let dockerhub_required = dockerhub_image.is_some(); + let dockerhub_published = dockerhub_image + .as_deref() + .map(|image| { + check_docker_hub_tag(image, ¤t_version) + && check_docker_hub_tag(image, "latest") + }) + .unwrap_or(false); + let github_release_published = get_arg("repository") + .or_else(|| env::var("GITHUB_REPOSITORY").ok().filter(|s| !s.is_empty())) + .map(|repository| check_github_release(&repository, &tag_prefix, ¤t_version)) + .unwrap_or_else(|| { + eprintln!("Warning: GITHUB_REPOSITORY not set; assuming GitHub release is missing"); + false + }); + + set_output( + "crate_published", + if crate_published { "true" } else { "false" }, + ); + set_output( + "dockerhub_required", + if dockerhub_required { "true" } else { "false" }, + ); + set_output( + "dockerhub_published", + if dockerhub_published { "true" } else { "false" }, + ); + set_output( + "github_release_published", + if github_release_published { + "true" + } else { + "false" + }, + ); + + println!( + "Crate: {}, Version: {}, Published on crates.io: {}", + crate_name, current_version, crate_published + ); + if let Some(image) = dockerhub_image { + println!( + "Docker image: {}, version/latest tags published on Docker Hub: {}", + image, dockerhub_published + ); + } else { + println!("Docker Hub artifact check skipped: DOCKERHUB_IMAGE or Dockerfile is not configured"); + } + println!( + "GitHub release {}{} published: {}", + tag_prefix, current_version, github_release_published + ); + + if release_is_complete( + crate_published, + dockerhub_required, + dockerhub_published, + github_release_published, + ) { + println!( + "No changelog fragments and v{} is fully published", + current_version + ); + set_output("should_release", "false"); + } else { + println!( + "No changelog fragments but v{} is missing at least one release artifact", + current_version + ); + set_output("should_release", "true"); + set_output("skip_bump", "true"); + } + } else { + println!("Found changelog fragments, proceeding with release"); + set_output("should_release", "true"); + set_output("skip_bump", "false"); + } +} diff --git a/rust/scripts/check-version-modification.rs b/rust/scripts/check-version-modification.rs new file mode 100644 index 0000000..7671d62 --- /dev/null +++ b/rust/scripts/check-version-modification.rs @@ -0,0 +1,166 @@ +#!/usr/bin/env rust-script +//! Check for manual version modification in Cargo.toml +//! +//! This script prevents manual version changes in pull requests. +//! Versions should be managed automatically by the CI/CD pipeline +//! using changelog fragments in changelog.d/. +//! +//! Key behavior: +//! - Detects if `version = "..."` line has changed in Cargo.toml +//! - Fails the CI check if manual version change is detected +//! - Skips check for automated release branches (changelog-manual-release-*) +//! +//! Usage: rust-script rust/scripts/check-version-modification.rs +//! +//! Environment variables (set by GitHub Actions): +//! - GITHUB_HEAD_REF: The head branch name for PRs +//! - GITHUB_BASE_REF: The base branch name for PRs +//! - GITHUB_EVENT_NAME: Should be 'pull_request' +//! +//! Exit codes: +//! - 0: No manual version changes detected (or check skipped) +//! - 1: Manual version changes detected +//! +//! ```cargo +//! [dependencies] +//! regex = "1" +//! ``` + +use regex::Regex; +use std::env; +use std::path::Path; +use std::process::{exit, Command}; + +fn exec(command: &str, args: &[&str]) -> String { + match Command::new(command).args(args).output() { + Ok(output) => String::from_utf8_lossy(&output.stdout).trim().to_string(), + Err(_) => String::new(), + } +} + +fn exec_ignore_error(command: &str, args: &[&str]) { + let _ = Command::new(command) + .args(args) + .stdout(std::process::Stdio::null()) + .stderr(std::process::Stdio::null()) + .status(); +} + +fn should_skip_version_check() -> bool { + let head_ref = env::var("GITHUB_HEAD_REF").unwrap_or_default(); + + // Skip for automated release PRs + let automated_branch_prefixes = [ + "changelog-manual-release-", + "changeset-release/", + "release/", + "automated-release/", + ]; + + for prefix in &automated_branch_prefixes { + if head_ref.starts_with(prefix) { + println!("Skipping version check for automated branch: {}", head_ref); + return true; + } + } + + false +} + +fn get_rust_root() -> String { + if let Ok(root) = env::var("RUST_ROOT") { + if !root.is_empty() { + return root; + } + } + + if Path::new("./Cargo.toml").exists() { + return ".".to_string(); + } + + if Path::new("./rust/Cargo.toml").exists() { + return "rust".to_string(); + } + + ".".to_string() +} + +fn get_cargo_toml_path(rust_root: &str) -> String { + if rust_root == "." { + "Cargo.toml".to_string() + } else { + format!("{}/Cargo.toml", rust_root) + } +} + +fn get_cargo_toml_diff(cargo_toml_path: &str) -> String { + let base_ref = env::var("GITHUB_BASE_REF").unwrap_or_else(|_| "main".to_string()); + + // Ensure we have the base branch + exec_ignore_error("git", &["fetch", "origin", &base_ref, "--depth=1"]); + + // Get the diff for Cargo.toml + exec( + "git", + &[ + "diff", + &format!("origin/{}...HEAD", base_ref), + "--", + cargo_toml_path, + ], + ) +} + +fn has_version_change(diff: &str) -> bool { + if diff.is_empty() { + return false; + } + + // Look for changes to the version line + // Match lines that start with + or - followed by version = "..." + let version_change_pattern = Regex::new(r#"(?m)^[+-]version\s*=\s*""#).unwrap(); + version_change_pattern.is_match(diff) +} + +fn main() { + println!("Checking for manual version modifications in Cargo.toml...\n"); + + // Only run on pull requests + let event_name = env::var("GITHUB_EVENT_NAME").unwrap_or_default(); + if event_name != "pull_request" { + println!("Skipping: Not a pull request event (event: {})", event_name); + exit(0); + } + + // Skip for automated release branches + if should_skip_version_check() { + exit(0); + } + + // Get and check the diff + let rust_root = get_rust_root(); + let cargo_toml_path = get_cargo_toml_path(&rust_root); + let diff = get_cargo_toml_diff(&cargo_toml_path); + + if diff.is_empty() { + println!("No changes to Cargo.toml detected."); + println!("Version check passed."); + exit(0); + } + + // Check for version changes + if has_version_change(&diff) { + eprintln!("Error: Manual version change detected in Cargo.toml!\n"); + eprintln!("Versions are managed automatically by the CI/CD pipeline."); + eprintln!("Please do not modify the version field directly.\n"); + eprintln!("To trigger a release, add a changelog fragment to changelog.d/"); + eprintln!("with the appropriate bump type (major, minor, or patch).\n"); + eprintln!("See changelog.d/README.md for more information.\n"); + eprintln!("If you need to undo your version change, run:"); + eprintln!(" git checkout origin/main -- Cargo.toml"); + exit(1); + } + + println!("Cargo.toml was modified but version field was not changed."); + println!("Version check passed."); +} diff --git a/rust/scripts/collect-changelog.rs b/rust/scripts/collect-changelog.rs new file mode 100644 index 0000000..1093454 --- /dev/null +++ b/rust/scripts/collect-changelog.rs @@ -0,0 +1,235 @@ +#!/usr/bin/env rust-script +//! Collect changelog fragments into CHANGELOG.md +//! +//! This script collects all .md files from changelog.d/ (except README.md) +//! and prepends them to CHANGELOG.md, then removes the processed fragments. +//! +//! Supports both single-language and multi-language repository structures: +//! - Single-language: Cargo.toml and changelog.d/ in repository root +//! - Multi-language: Cargo.toml and changelog.d/ in rust/ subfolder +//! +//! Usage: rust-script rust/scripts/collect-changelog.rs [--rust-root ] +//! +//! ```cargo +//! [dependencies] +//! regex = "1" +//! chrono = "0.4" +//! ``` + +use chrono::Utc; +use regex::Regex; +use std::env; +use std::fs; +use std::path::Path; +use std::process::exit; + +const INSERT_MARKER: &str = ""; + +fn get_arg(name: &str) -> Option { + let args: Vec = env::args().collect(); + let flag = format!("--{}", name); + + if let Some(idx) = args.iter().position(|a| a == &flag) { + return args.get(idx + 1).cloned(); + } + + let env_name = name.to_uppercase().replace('-', "_"); + env::var(&env_name).ok().filter(|s| !s.is_empty()) +} + +fn get_rust_root() -> String { + if let Some(root) = get_arg("rust-root") { + eprintln!("Using explicitly configured Rust root: {}", root); + return root; + } + + if Path::new("./Cargo.toml").exists() { + eprintln!("Detected single-language repository (Cargo.toml in root)"); + return ".".to_string(); + } + + if Path::new("./rust/Cargo.toml").exists() { + eprintln!("Detected multi-language repository (Cargo.toml in rust/)"); + return "rust".to_string(); + } + + eprintln!("Error: Could not find Cargo.toml in expected locations"); + exit(1); +} + +fn get_cargo_toml_path(rust_root: &str) -> String { + if rust_root == "." { + "./Cargo.toml".to_string() + } else { + format!("{}/Cargo.toml", rust_root) + } +} + +fn get_changelog_dir(rust_root: &str) -> String { + if rust_root == "." { + "./changelog.d".to_string() + } else { + format!("{}/changelog.d", rust_root) + } +} + +fn get_changelog_path(rust_root: &str) -> String { + if rust_root == "." { + "./CHANGELOG.md".to_string() + } else { + format!("{}/CHANGELOG.md", rust_root) + } +} + +fn get_version_from_cargo(cargo_toml_path: &str) -> Result { + let content = fs::read_to_string(cargo_toml_path) + .map_err(|e| format!("Failed to read {}: {}", cargo_toml_path, e))?; + + let re = Regex::new(r#"(?m)^version\s*=\s*"([^"]+)""#).unwrap(); + + if let Some(caps) = re.captures(&content) { + Ok(caps.get(1).unwrap().as_str().to_string()) + } else { + Err(format!("Could not find version in {}", cargo_toml_path)) + } +} + +fn strip_frontmatter(content: &str) -> String { + let re = Regex::new(r"(?s)^---\s*\n.*?\n---\s*\n(.*)$").unwrap(); + if let Some(caps) = re.captures(content) { + caps.get(1).unwrap().as_str().trim().to_string() + } else { + content.trim().to_string() + } +} + +fn collect_fragments(changelog_dir: &str) -> String { + let dir_path = Path::new(changelog_dir); + if !dir_path.exists() { + return String::new(); + } + + let mut files: Vec<_> = match fs::read_dir(dir_path) { + Ok(entries) => entries + .filter_map(|e| e.ok()) + .map(|e| e.path()) + .filter(|p| { + p.extension().map_or(false, |ext| ext == "md") + && p.file_name().map_or(false, |name| name != "README.md") + }) + .collect(), + Err(_) => return String::new(), + }; + + files.sort(); + + let mut fragments = Vec::new(); + for file in &files { + if let Ok(raw_content) = fs::read_to_string(file) { + let content = strip_frontmatter(&raw_content); + if !content.is_empty() { + fragments.push(content); + } + } + } + + fragments.join("\n\n") +} + +fn update_changelog(changelog_file: &str, version: &str, fragments: &str) { + let date_str = Utc::now().format("%Y-%m-%d").to_string(); + let new_entry = format!("\n## [{}] - {}\n\n{}\n", version, date_str, fragments); + + if Path::new(changelog_file).exists() { + let mut content = fs::read_to_string(changelog_file).unwrap_or_default(); + + if content.contains(INSERT_MARKER) { + content = content.replace(INSERT_MARKER, &format!("{}{}", INSERT_MARKER, new_entry)); + } else { + // Insert after the first ## heading + let lines: Vec<&str> = content.lines().collect(); + let mut insert_index = None; + + for (i, line) in lines.iter().enumerate() { + if line.starts_with("## [") { + insert_index = Some(i); + break; + } + } + + if let Some(idx) = insert_index { + let mut new_lines: Vec = + lines[..idx].iter().map(|s| s.to_string()).collect(); + new_lines.push(new_entry.clone()); + new_lines.extend(lines[idx..].iter().map(|s| s.to_string())); + content = new_lines.join("\n"); + } else { + // Append after the main heading + content.push_str(&new_entry); + } + } + + fs::write(changelog_file, content).expect("Failed to write changelog"); + } else { + let content = format!( + "# Changelog\n\n\ + All notable changes to this project will be documented in this file.\n\n\ + The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),\n\ + and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\n\n\ + {}\n{}\n", + INSERT_MARKER, new_entry + ); + fs::write(changelog_file, content).expect("Failed to write changelog"); + } + + println!("Updated CHANGELOG.md with version {}", version); +} + +fn remove_fragments(changelog_dir: &str) { + let dir_path = Path::new(changelog_dir); + if !dir_path.exists() { + return; + } + + if let Ok(entries) = fs::read_dir(dir_path) { + for entry in entries.filter_map(|e| e.ok()) { + let path = entry.path(); + if path.extension().map_or(false, |ext| ext == "md") + && path.file_name().map_or(false, |name| name != "README.md") + { + if fs::remove_file(&path).is_ok() { + println!("Removed {}", path.display()); + } + } + } + } +} + +fn main() { + let rust_root = get_rust_root(); + let cargo_toml = get_cargo_toml_path(&rust_root); + let changelog_dir = get_changelog_dir(&rust_root); + let changelog_file = get_changelog_path(&rust_root); + + let version = match get_version_from_cargo(&cargo_toml) { + Ok(v) => v, + Err(e) => { + eprintln!("Error: {}", e); + exit(1); + } + }; + + println!("Collecting changelog fragments for version {}", version); + + let fragments = collect_fragments(&changelog_dir); + + if fragments.is_empty() { + println!("No changelog fragments found"); + exit(0); + } + + update_changelog(&changelog_file, &version, &fragments); + remove_fragments(&changelog_dir); + + println!("Changelog collection complete"); +} diff --git a/rust/scripts/create-changelog-fragment.rs b/rust/scripts/create-changelog-fragment.rs new file mode 100644 index 0000000..f57cd64 --- /dev/null +++ b/rust/scripts/create-changelog-fragment.rs @@ -0,0 +1,122 @@ +#!/usr/bin/env rust-script +//! Create a changelog fragment for manual release PR +//! +//! This script creates a changelog fragment with the appropriate +//! category based on the bump type. +//! +//! Usage: rust-script rust/scripts/create-changelog-fragment.rs --bump-type [--description ] +//! +//! ```cargo +//! [dependencies] +//! chrono = "0.4" +//! ``` + +use chrono::Utc; +use std::env; +use std::fs; +use std::path::Path; +use std::process::exit; + +fn get_arg(name: &str) -> Option { + let args: Vec = env::args().collect(); + let flag = format!("--{}", name); + + if let Some(idx) = args.iter().position(|a| a == &flag) { + return args.get(idx + 1).cloned(); + } + + let env_name = name.to_uppercase().replace('-', "_"); + env::var(&env_name).ok().filter(|s| !s.is_empty()) +} + +fn get_rust_root() -> String { + if let Some(root) = get_arg("rust-root") { + return root; + } + + if let Ok(root) = env::var("RUST_ROOT") { + if !root.is_empty() { + return root; + } + } + + if Path::new("./Cargo.toml").exists() { + return ".".to_string(); + } + + if Path::new("./rust/Cargo.toml").exists() { + return "rust".to_string(); + } + + ".".to_string() +} + +fn get_changelog_dir(rust_root: &str) -> String { + if rust_root == "." { + "changelog.d".to_string() + } else { + format!("{}/changelog.d", rust_root) + } +} + +fn get_category(bump_type: &str) -> &'static str { + match bump_type { + "major" => "### Breaking Changes", + "minor" => "### Added", + "patch" => "### Fixed", + _ => "### Changed", + } +} + +fn generate_timestamp() -> String { + Utc::now().format("%Y%m%d%H%M%S").to_string() +} + +fn main() { + let bump_type = get_arg("bump-type").unwrap_or_else(|| "patch".to_string()); + let description = get_arg("description"); + + // Validate bump type + if !["major", "minor", "patch"].contains(&bump_type.as_str()) { + eprintln!( + "Invalid bump type: {}. Must be major, minor, or patch.", + bump_type + ); + exit(1); + } + + let rust_root = get_rust_root(); + let changelog_dir = get_changelog_dir(&rust_root); + let timestamp = generate_timestamp(); + let fragment_file = format!("{}/{}-manual-{}.md", changelog_dir, timestamp, bump_type); + + // Determine changelog category based on bump type + let category = get_category(&bump_type); + + // Create changelog fragment with frontmatter + let description_text = description.unwrap_or_else(|| format!("Manual {} release", bump_type)); + let fragment_content = format!( + "---\nbump: {}\n---\n\n{}\n\n- {}\n", + bump_type, category, description_text + ); + + // Ensure changelog directory exists + let dir_path = Path::new(&changelog_dir); + if !dir_path.exists() { + if let Err(e) = fs::create_dir_all(dir_path) { + eprintln!("Error creating directory {}: {}", changelog_dir, e); + exit(1); + } + } + + // Write the fragment file + if let Err(e) = fs::write(&fragment_file, &fragment_content) { + eprintln!("Error writing fragment file: {}", e); + exit(1); + } + + println!("Created changelog fragment: {}", fragment_file); + println!(); + println!("Content:"); + println!("{}", fragment_content); +} diff --git a/rust/scripts/create-github-release.rs b/rust/scripts/create-github-release.rs new file mode 100644 index 0000000..38a564c --- /dev/null +++ b/rust/scripts/create-github-release.rs @@ -0,0 +1,417 @@ +#!/usr/bin/env rust-script +//! Create GitHub Release from CHANGELOG.md +//! +//! Automatically includes crates.io and docs.rs badges in release notes +//! when the crate name can be detected from Cargo.toml. +//! +//! Usage: rust-script rust/scripts/create-github-release.rs --release-version --repository [--tag-prefix ] [--language ] [--release-label