)]}'
{
  "commit": "e646bb3250122bb7f7340d180338bd005df52a78",
  "tree": "40400c6d1db281a1378eae4b8b07ba5897f2ede8",
  "parents": [
    "93dcd8119a0cbf77d0bb9c6dca62d963271a1d5f"
  ],
  "author": {
    "name": "Steve Golton",
    "email": "stevegolton@google.com",
    "time": "Wed Jan 14 08:07:16 2026 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Jan 14 08:07:16 2026 +0000"
  },
  "message": "ui: QueryPage: Database explorer + editor tabs (#4356)\n\nAdd editor tabs + new database explorer in the side panel\n\nFeatures:\n- Editor tabs with separate results list per tab \n- Database explorer in side panel\n  - Accordion view\n  - Fuzzy search by table name\n  - List of columns and types (+ type icons)\n  - Run query button which runs that query in a new editor tab\n\n\u003cimg width\u003d\"1098\" height\u003d\"758\" alt\u003d\"image\"\nsrc\u003d\"https://github.com/user-attachments/assets/e66fe021-d55a-4ab1-b07b-fbf880477ecc\"\n/\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9fd635d7d10b12a30fbc8f10ec52881050ad043d",
      "old_mode": 33188,
      "old_path": "test/data/ui-screenshots/load_and_tracks.test.ts/info-and-stats/into-and-stats.png.sha256",
      "new_id": "d5f70964c41aad4703b7679ddb34bb22718af569",
      "new_mode": 33188,
      "new_path": "test/data/ui-screenshots/load_and_tracks.test.ts/info-and-stats/into-and-stats.png.sha256"
    },
    {
      "type": "modify",
      "old_id": "ab392a40523b2f5fa61b03545bb9670f1282a1d6",
      "old_mode": 33188,
      "old_path": "test/data/ui-screenshots/queries.test.ts/query-page/query-limit-1.png.sha256",
      "new_id": "4167bef246798b9f1e48e9b949851ef5a1e71bc6",
      "new_mode": 33188,
      "new_path": "test/data/ui-screenshots/queries.test.ts/query-page/query-limit-1.png.sha256"
    },
    {
      "type": "modify",
      "old_id": "b6a63918a7fee0863fe4ad37cb6a1d8ef5d52e47",
      "old_mode": 33188,
      "old_path": "test/data/ui-screenshots/queries.test.ts/query-page/query-limit-2.png.sha256",
      "new_id": "22c856a2348a8ceb4a5972469d697f87edf981f6",
      "new_mode": 33188,
      "new_path": "test/data/ui-screenshots/queries.test.ts/query-page/query-limit-2.png.sha256"
    },
    {
      "type": "modify",
      "old_id": "613bb46a0ba85e7463a85c4073d0dd8c8bbb5e14",
      "old_mode": 33188,
      "old_path": "test/data/ui-screenshots/queries.test.ts/query-page/query-limit-3.png.sha256",
      "new_id": "aaba54253b54639b415c580601793ccf2fbf15e1",
      "new_mode": 33188,
      "new_path": "test/data/ui-screenshots/queries.test.ts/query-page/query-limit-3.png.sha256"
    },
    {
      "type": "modify",
      "old_id": "d341c83d18fadd9e5b3d77ae5948e4ff915f2fc3",
      "old_mode": 33188,
      "old_path": "ui/src/assets/perfetto.scss",
      "new_id": "c95b649bc515b5a462415db28f8d7a127dade1df",
      "new_mode": 33188,
      "new_path": "ui/src/assets/perfetto.scss"
    },
    {
      "type": "modify",
      "old_id": "f93a0a01ee84071e30ddd0bff1f6db61ba1e050a",
      "old_mode": 33188,
      "old_path": "ui/src/assets/theme_provider.scss",
      "new_id": "c2ad233a9edb35f698f588f483fb69a8ed304da2",
      "new_mode": 33188,
      "new_path": "ui/src/assets/theme_provider.scss"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4fb61a0741c83d453193caca805dd57c5678e88f",
      "new_mode": 33188,
      "new_path": "ui/src/assets/widgets/accordion.scss"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "11528b3650a19f98cc8823c873f9513f50eaac1b",
      "new_mode": 33188,
      "new_path": "ui/src/assets/widgets/tab_strip.scss"
    },
    {
      "type": "modify",
      "old_id": "29ef45c50625290f7781b5516e9a5544c6bd2e13",
      "old_mode": 33188,
      "old_path": "ui/src/assets/widgets/tabs.scss",
      "new_id": "bc8fdbfb7eb09166f34bc604e0600f64a2e86bd9",
      "new_mode": 33188,
      "new_path": "ui/src/assets/widgets/tabs.scss"
    },
    {
      "type": "modify",
      "old_id": "2547dc23c2283ef97c97be9f97f8450dd286efc4",
      "old_mode": 33188,
      "old_path": "ui/src/components/details/sql_table_tab.ts",
      "new_id": "81f410efd945517fbd89eee560c53b21b119aa0e",
      "new_mode": 33188,
      "new_path": "ui/src/components/details/sql_table_tab.ts"
    },
    {
      "type": "modify",
      "old_id": "18d114a7c26277d80eaa5f20c90f31b301918a09",
      "old_mode": 33188,
      "old_path": "ui/src/components/widgets/datagrid/datagrid.ts",
      "new_id": "c1e6004949ca226c089dbaea01cafb5e940409db",
      "new_mode": 33188,
      "new_path": "ui/src/components/widgets/datagrid/datagrid.ts"
    },
    {
      "type": "modify",
      "old_id": "b6306a4bf86cf779e74f32c42566eb7709c3f114",
      "old_mode": 33188,
      "old_path": "ui/src/core_plugins/dev.perfetto.MultiTraceOpen/multi_trace_modal.ts",
      "new_id": "ab06fc174f11e73c83a98a3610d71a1c7d23648b",
      "new_mode": 33188,
      "new_path": "ui/src/core_plugins/dev.perfetto.MultiTraceOpen/multi_trace_modal.ts"
    },
    {
      "type": "modify",
      "old_id": "f64bb0c1cbb0c14e81c0299941ade7dc27bb5d76",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.ExplorePage/query_builder/node_explorer.ts",
      "new_id": "4e37486d85a70d92754c3ad49812b6ff8d849bee",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.ExplorePage/query_builder/node_explorer.ts"
    },
    {
      "type": "modify",
      "old_id": "789c05a9b0c1e2a8e3bb4e6e0152dd3d32674cfe",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.PprofProfiles/pprof_page.ts",
      "new_id": "9af8be4dcf34075b683266618cb4ea5047433f6a",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.PprofProfiles/pprof_page.ts"
    },
    {
      "type": "modify",
      "old_id": "156bd1052e81095b7401b495d12e1efd2b2f08fd",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.QueryPage/index.ts",
      "new_id": "0209956b8241b426282651fad4a38305800342c5",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.QueryPage/index.ts"
    },
    {
      "type": "modify",
      "old_id": "a5557a4796585d2fa50a5fe8177d79f102d6c549",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.QueryPage/query_page.scss",
      "new_id": "67a39ad4bcc612858b9eac6cf2ed0c41e140b8f9",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.QueryPage/query_page.scss"
    },
    {
      "type": "modify",
      "old_id": "b106fe1bbb79e76c9a775192ad8141fd5785cb10",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.QueryPage/query_page.ts",
      "new_id": "910c1febab5567d1b05200e1bc95668fc25ac44c",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.QueryPage/query_page.ts"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b8e763e78cec270d0fe405cd7cdf31ea85bfb41c",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.QueryPage/table_list.ts"
    },
    {
      "type": "modify",
      "old_id": "b07e20e47a960e771ee00f53294d964ff395b5d7",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.SqlModules/index.ts",
      "new_id": "863cac521136b35dee1f0629f1ed50932b6b0d80",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.SqlModules/index.ts"
    },
    {
      "type": "modify",
      "old_id": "52898118908634276aca815a8c73edc9ae4e3961",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.TraceInfoPage/trace_info_page.ts",
      "new_id": "9a2e775bc1bb9856214420b8064e71a1be32d0d1",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.TraceInfoPage/trace_info_page.ts"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0a969a21e5062fe5fda937eb078bf04a4c7f1197",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.WidgetsPage/demos/accordion_demo.ts"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "24c628e234e2a0839fd8c66504ed848ca87ee6bd",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.WidgetsPage/demos/tabs_demo.ts"
    },
    {
      "type": "modify",
      "old_id": "aae8c77335a21f9ed3e8c5350a0fe125617df82f",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.WidgetsPage/demos/tabstrip_demo.ts",
      "new_id": "4fa06c049ea41b98e43a43432a28e5900c2e4c4a",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.WidgetsPage/demos/tabstrip_demo.ts"
    },
    {
      "type": "modify",
      "old_id": "399eb568142cdd4d2de5374005d68249fa9fedab",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.WidgetsPage/widgets_page.ts",
      "new_id": "17bc15fc68131bf3b9e7ca6d46aa389398a11481",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.WidgetsPage/widgets_page.ts"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f02fa1f68b721fac885f04548d8dcd868ac1ba17",
      "new_mode": 33188,
      "new_path": "ui/src/widgets/accordion.ts"
    },
    {
      "type": "modify",
      "old_id": "79e9a8d35708f2f467bd2f943b68827e5c3bd11b",
      "old_mode": 33188,
      "old_path": "ui/src/widgets/copy_to_clipboard_button.ts",
      "new_id": "ec674ca7877401a7639ac4858d94460f1803be97",
      "new_mode": 33188,
      "new_path": "ui/src/widgets/copy_to_clipboard_button.ts"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "54a3970cf285279a6db43f902cb1a353174090f2",
      "new_mode": 33188,
      "new_path": "ui/src/widgets/tab_strip.ts"
    },
    {
      "type": "modify",
      "old_id": "5c2f4881cfaf4edf7ba8d32702b539c2699e12ca",
      "old_mode": 33188,
      "old_path": "ui/src/widgets/tabs.ts",
      "new_id": "fba7bdd87689243894ae24d9b10c4eaab541b026",
      "new_mode": 33188,
      "new_path": "ui/src/widgets/tabs.ts"
    }
  ]
}
