{
  "baseline": "v35.5.3",
  "baselineCommit": "9e603959c7180d073fddd6e388c96760c396eb56",
  "method": "Git line additions/removals against v35.5.3. Includes comments and blank lines. Excludes lockfiles, generated output, task notes and reused pma-rs extension source.",
  "roots": [
    "src",
    "test",
    "example/BitwardenAvalonia",
    "example/BitwardenBrowserShared",
    "example/BitwardenWasm",
    "Makefile",
    ".gitignore"
  ],
  "totals": {
    "files": 66,
    "added": 6744,
    "removed": 31
  },
  "purposes": [
    {
      "label": "WASM, crypto & async HTTP",
      "files": 8,
      "added": 269,
      "removed": 10
    },
    {
      "label": "Bitwarden login & transport",
      "files": 4,
      "added": 237,
      "removed": 15
    },
    {
      "label": "Avalonia interface",
      "files": 9,
      "added": 741,
      "removed": 0
    },
    {
      "label": "Browser host & network bridge",
      "files": 6,
      "added": 499,
      "removed": 0
    },
    {
      "label": "Initial WASM probe",
      "files": 4,
      "added": 415,
      "removed": 0
    },
    {
      "label": "Tests",
      "files": 19,
      "added": 2544,
      "removed": 6
    },
    {
      "label": "Browser automation",
      "files": 3,
      "added": 1374,
      "removed": 0
    },
    {
      "label": "Site & build tooling",
      "files": 11,
      "added": 458,
      "removed": 0
    },
    {
      "label": "Documentation",
      "files": 2,
      "added": 207,
      "removed": 0
    }
  ],
  "types": [
    {
      "label": ".cs",
      "files": 33,
      "added": 3537,
      "removed": 29
    },
    {
      "label": ".mjs",
      "files": 9,
      "added": 2177,
      "removed": 0
    },
    {
      "label": ".js",
      "files": 6,
      "added": 319,
      "removed": 0
    },
    {
      "label": ".html",
      "files": 4,
      "added": 233,
      "removed": 0
    },
    {
      "label": ".md",
      "files": 2,
      "added": 207,
      "removed": 0
    },
    {
      "label": ".csproj",
      "files": 4,
      "added": 101,
      "removed": 2
    },
    {
      "label": ".axaml",
      "files": 2,
      "added": 92,
      "removed": 0
    },
    {
      "label": ".css",
      "files": 1,
      "added": 33,
      "removed": 0
    },
    {
      "label": "Makefile",
      "files": 1,
      "added": 15,
      "removed": 0
    },
    {
      "label": ".gitignore",
      "files": 1,
      "added": 9,
      "removed": 0
    },
    {
      "label": ".json",
      "files": 1,
      "added": 8,
      "removed": 0
    },
    {
      "label": "_headers",
      "files": 1,
      "added": 7,
      "removed": 0
    },
    {
      "label": ".jsonc",
      "files": 1,
      "added": 6,
      "removed": 0
    }
  ],
  "files": [
    {
      "path": ".gitignore",
      "purpose": "tooling",
      "type": ".gitignore",
      "added": 9,
      "removed": 0
    },
    {
      "path": "Makefile",
      "purpose": "tooling",
      "type": "Makefile",
      "added": 15,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/App.axaml",
      "purpose": "ui",
      "type": ".axaml",
      "added": 8,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/App.axaml.cs",
      "purpose": "ui",
      "type": ".cs",
      "added": 23,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/BitwardenAvalonia.csproj",
      "purpose": "wasm",
      "type": ".csproj",
      "added": 52,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/Entries.cs",
      "purpose": "ui",
      "type": ".cs",
      "added": 58,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/Errors.cs",
      "purpose": "ui",
      "type": ".cs",
      "added": 45,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/Host.cs",
      "purpose": "ui",
      "type": ".cs",
      "added": 21,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/MainView.axaml",
      "purpose": "ui",
      "type": ".axaml",
      "added": 84,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/MainView.axaml.cs",
      "purpose": "ui",
      "type": ".cs",
      "added": 461,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/Model.cs",
      "purpose": "ui",
      "type": ".cs",
      "added": 24,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/Program.cs",
      "purpose": "ui",
      "type": ".cs",
      "added": 17,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/README.md",
      "purpose": "docs",
      "type": ".md",
      "added": 116,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/app-host.test.mjs",
      "purpose": "tests",
      "type": ".mjs",
      "added": 118,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/code-report.mjs",
      "purpose": "tooling",
      "type": ".mjs",
      "added": 128,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/pages-bridge.json",
      "purpose": "tooling",
      "type": ".json",
      "added": 8,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/pages-build.mjs",
      "purpose": "tooling",
      "type": ".mjs",
      "added": 104,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/run.mjs",
      "purpose": "automation",
      "type": ".mjs",
      "added": 664,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wrangler.jsonc",
      "purpose": "tooling",
      "type": ".jsonc",
      "added": 6,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/_headers",
      "purpose": "tooling",
      "type": "_headers",
      "added": 7,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/app-host.js",
      "purpose": "host",
      "type": ".js",
      "added": 99,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/code/index.html",
      "purpose": "tooling",
      "type": ".html",
      "added": 55,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/code/report.js",
      "purpose": "tooling",
      "type": ".js",
      "added": 32,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/extension/index.html",
      "purpose": "tooling",
      "type": ".html",
      "added": 61,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/index.html",
      "purpose": "host",
      "type": ".html",
      "added": 104,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/info.css",
      "purpose": "tooling",
      "type": ".css",
      "added": 33,
      "removed": 0
    },
    {
      "path": "example/BitwardenAvalonia/wwwroot/main.js",
      "purpose": "host",
      "type": ".js",
      "added": 34,
      "removed": 0
    },
    {
      "path": "example/BitwardenBrowserShared/BridgeHttpHandler.cs",
      "purpose": "host",
      "type": ".cs",
      "added": 148,
      "removed": 0
    },
    {
      "path": "example/BitwardenBrowserShared/browser-crypto.js",
      "purpose": "host",
      "type": ".js",
      "added": 24,
      "removed": 0
    },
    {
      "path": "example/BitwardenBrowserShared/browser-crypto.test.mjs",
      "purpose": "tests",
      "type": ".mjs",
      "added": 50,
      "removed": 0
    },
    {
      "path": "example/BitwardenBrowserShared/extension-bridge.js",
      "purpose": "host",
      "type": ".js",
      "added": 90,
      "removed": 0
    },
    {
      "path": "example/BitwardenBrowserShared/extension-bridge.test.mjs",
      "purpose": "tests",
      "type": ".mjs",
      "added": 278,
      "removed": 0
    },
    {
      "path": "example/BitwardenBrowserShared/run-common.mjs",
      "purpose": "automation",
      "type": ".mjs",
      "added": 248,
      "removed": 0
    },
    {
      "path": "example/BitwardenBrowserShared/run-common.test.mjs",
      "purpose": "tests",
      "type": ".mjs",
      "added": 125,
      "removed": 0
    },
    {
      "path": "example/BitwardenWasm/BitwardenWasm.csproj",
      "purpose": "wasm",
      "type": ".csproj",
      "added": 45,
      "removed": 0
    },
    {
      "path": "example/BitwardenWasm/Program.Demo.cs",
      "purpose": "probe",
      "type": ".cs",
      "added": 181,
      "removed": 0
    },
    {
      "path": "example/BitwardenWasm/Program.cs",
      "purpose": "probe",
      "type": ".cs",
      "added": 181,
      "removed": 0
    },
    {
      "path": "example/BitwardenWasm/README.md",
      "purpose": "docs",
      "type": ".md",
      "added": 91,
      "removed": 0
    },
    {
      "path": "example/BitwardenWasm/run.mjs",
      "purpose": "automation",
      "type": ".mjs",
      "added": 462,
      "removed": 0
    },
    {
      "path": "example/BitwardenWasm/wwwroot/index.html",
      "purpose": "probe",
      "type": ".html",
      "added": 13,
      "removed": 0
    },
    {
      "path": "example/BitwardenWasm/wwwroot/main.js",
      "purpose": "probe",
      "type": ".js",
      "added": 40,
      "removed": 0
    },
    {
      "path": "src/Bitwarden/BrowserCrypto.cs",
      "purpose": "wasm",
      "type": ".cs",
      "added": 21,
      "removed": 0
    },
    {
      "path": "src/Bitwarden/Client.Password.cs",
      "purpose": "login",
      "type": ".cs",
      "added": 185,
      "removed": 0
    },
    {
      "path": "src/Bitwarden/Client.Sso.cs",
      "purpose": "login",
      "type": ".cs",
      "added": 2,
      "removed": 1
    },
    {
      "path": "src/Bitwarden/Client.cs",
      "purpose": "login",
      "type": ".cs",
      "added": 37,
      "removed": 14
    },
    {
      "path": "src/Bitwarden/ClientInfo.cs",
      "purpose": "wasm",
      "type": ".cs",
      "added": 14,
      "removed": 0
    },
    {
      "path": "src/Bitwarden/NewDeviceVerificationRequiredException.cs",
      "purpose": "login",
      "type": ".cs",
      "added": 13,
      "removed": 0
    },
    {
      "path": "src/Bitwarden/Util.cs",
      "purpose": "wasm",
      "type": ".cs",
      "added": 33,
      "removed": 0
    },
    {
      "path": "src/Common/Crypto.cs",
      "purpose": "wasm",
      "type": ".cs",
      "added": 84,
      "removed": 0
    },
    {
      "path": "src/Common/RestClient.cs",
      "purpose": "wasm",
      "type": ".cs",
      "added": 17,
      "removed": 9
    },
    {
      "path": "src/PasswordManagerAccess.csproj",
      "purpose": "wasm",
      "type": ".csproj",
      "added": 3,
      "removed": 1
    },
    {
      "path": "test/Bitwarden/ClientTest.Password.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 611,
      "removed": 0
    },
    {
      "path": "test/Bitwarden/ClientTest.Platform.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 58,
      "removed": 0
    },
    {
      "path": "test/Bitwarden/ClientTest.Transport.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 219,
      "removed": 0
    },
    {
      "path": "test/Bitwarden/ClientTest.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 1,
      "removed": 1
    },
    {
      "path": "test/Bitwarden/UtilTest.ArgonBrowser.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 88,
      "removed": 0
    },
    {
      "path": "test/Bitwarden/UtilTest.Async.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 54,
      "removed": 0
    },
    {
      "path": "test/Bitwarden/UtilTest.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 1,
      "removed": 1
    },
    {
      "path": "test/Common/CryptoTest.AesBrowser.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 159,
      "removed": 0
    },
    {
      "path": "test/Common/CryptoTest.RsaBrowser.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 249,
      "removed": 0
    },
    {
      "path": "test/Common/CryptoTest.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 1,
      "removed": 1
    },
    {
      "path": "test/Common/RestClientTest.Async.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 151,
      "removed": 0
    },
    {
      "path": "test/Common/RestClientTest.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 1,
      "removed": 1
    },
    {
      "path": "test/Common/RestTransportTest.Async.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 378,
      "removed": 0
    },
    {
      "path": "test/Common/RestTransportTest.cs",
      "purpose": "tests",
      "type": ".cs",
      "added": 1,
      "removed": 1
    },
    {
      "path": "test/PasswordManagerAccess.Test.csproj",
      "purpose": "tests",
      "type": ".csproj",
      "added": 1,
      "removed": 1
    }
  ]
}
