@zaip-ai/cli 5.0.0 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/dist/services/adapters.d.ts +1 -1
  2. package/dist/services/adapters.js +1 -1
  3. package/dist/services/codex-native-tool-authority-template.d.ts.map +1 -1
  4. package/dist/services/codex-native-tool-authority-template.js +19 -12
  5. package/dist/services/codex-native-tool-authority-template.js.map +1 -1
  6. package/dist/services/codex-pre-tool-hook-template.js +6 -6
  7. package/dist/services/codex-pre-tool-host-context-template.d.ts.map +1 -1
  8. package/dist/services/codex-pre-tool-host-context-template.js +34 -3
  9. package/dist/services/codex-pre-tool-host-context-template.js.map +1 -1
  10. package/dist/services/codex-pre-tool-support-template.d.ts.map +1 -1
  11. package/dist/services/codex-pre-tool-support-template.js +24 -0
  12. package/dist/services/codex-pre-tool-support-template.js.map +1 -1
  13. package/dist/services/codex-windows-hook-command.d.ts.map +1 -1
  14. package/dist/services/codex-windows-hook-command.js +21 -2
  15. package/dist/services/codex-windows-hook-command.js.map +1 -1
  16. package/package.json +1 -1
  17. package/templates/.agents/README-ENG.md +19 -0
  18. package/templates/.agents/README.md +20 -0
  19. package/templates/.agents/config/agents/discovery.json +1 -1
  20. package/templates/.agents/dashboard/.zaip-managed.json +98 -58
  21. package/templates/.agents/dashboard/apps/frontend/dist/assets/{CostCalculationGuidePage-w6pjt4OM.js → CostCalculationGuidePage-uR-asJv_.js} +1 -1
  22. package/templates/.agents/dashboard/apps/frontend/dist/assets/{DashboardHelpDialog-DhlntQcR.js → DashboardHelpDialog-CDUKVlrH.js} +23 -3
  23. package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-BHoZT2an.js → PricingSettingsDialog-Czs55K79.js} +1 -1
  24. package/templates/.agents/dashboard/apps/frontend/dist/assets/{ProjectSettingsPage-IcncIZ9Y.js → ProjectSettingsPage-DhpaKwjC.js} +1 -1
  25. package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-C6rORjpr.js → TraceabilityWorkspace-DPxfH469.js} +1 -1
  26. package/templates/.agents/dashboard/apps/frontend/dist/assets/{cost-monitor-uPnOBShc.js → cost-monitor-B0Jwz_rk.js} +4 -4
  27. package/templates/.agents/dashboard/apps/frontend/dist/assets/{dashboard-localization-DWXjEIgc.js → dashboard-localization-BE_Zqtym.js} +19 -0
  28. package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-Hc9fp_gs.js → icons-vendor-CjGGux6h.js} +1 -1
  29. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-D5HmMZ27.js +2 -0
  30. package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-C9ta_O10.js → react-vendor-B9jZSAKf.js} +1 -1
  31. package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-IcefoTOv.js → traceability-DFpwb0TN.js} +1 -1
  32. package/templates/.agents/dashboard/apps/frontend/dist/index.html +5 -5
  33. package/templates/.agents/dashboard/apps/frontend/package.json +2 -2
  34. package/templates/.agents/dashboard/apps/frontend/src/AppDashboardContent.tsx +3 -0
  35. package/templates/.agents/dashboard/apps/frontend/src/AppOverlays.tsx +16 -7
  36. package/templates/.agents/dashboard/apps/frontend/src/__tests__/app-composition-support.ts +1 -0
  37. package/templates/.agents/dashboard/apps/frontend/src/cost-period-refresh.test.ts +1 -1
  38. package/templates/.agents/dashboard/apps/frontend/src/operations-period-render.test.ts +2 -0
  39. package/templates/.agents/dashboard/apps/frontend/src/use-app-trace-documents.navigation.test.tsx +125 -0
  40. package/templates/.agents/dashboard/apps/frontend/src/use-app-trace-documents.ts +67 -9
  41. package/templates/.agents/dashboard/apps/frontend/src/use-dashboard-app-model.tsx +15 -15
  42. package/templates/.agents/dashboard/apps/frontend/src/use-dashboard-locale.ts +18 -0
  43. package/templates/.agents/dashboard/modules/cost-monitor/package.json +1 -1
  44. package/templates/.agents/dashboard/modules/operations/package.json +1 -1
  45. package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.tsx +4 -39
  46. package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverviewTopPanel.navigation.test.tsx +150 -0
  47. package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverviewTopPanel.tsx +7 -3
  48. package/templates/.agents/dashboard/modules/operations/src/react/OperationsPage.tsx +4 -7
  49. package/templates/.agents/dashboard/modules/operations/src/react/OperationsPageOverview.tsx +3 -0
  50. package/templates/.agents/dashboard/modules/operations/src/react/operations-overview-contract.ts +51 -0
  51. package/templates/.agents/dashboard/modules/operations/src/react/operations-overview-period-filter.test.ts +5 -1
  52. package/templates/.agents/dashboard/modules/operations/src/react/operations-page-contract.ts +1 -0
  53. package/templates/.agents/dashboard/modules/operations/src/react/use-operations-default-range.ts +16 -0
  54. package/templates/.agents/dashboard/modules/traceability/package.json +1 -1
  55. package/templates/.agents/dashboard/packages/branding/package.json +1 -1
  56. package/templates/.agents/dashboard/packages/contracts/package.json +1 -1
  57. package/templates/.agents/dashboard/packages/data-export/package.json +1 -1
  58. package/templates/.agents/dashboard/packages/local-runtime/dashboard-build-fingerprint.mjs +87 -0
  59. package/templates/.agents/dashboard/packages/local-runtime/dashboard-build-fingerprint.test.mjs +48 -0
  60. package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +160 -160
  61. package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +110 -110
  62. package/templates/.agents/dashboard/packages/local-runtime/package.json +1 -1
  63. package/templates/.agents/dashboard/packages/local-runtime/scripts/build-frontend.mjs +29 -0
  64. package/templates/.agents/dashboard/packages/local-runtime/scripts/build-sqlite-runtime.mjs +5 -0
  65. package/templates/.agents/dashboard/packages/local-runtime/server.mjs +163 -163
  66. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-build.mjs +12 -5
  67. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-paths.mjs +8 -0
  68. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.test.mjs +1 -1
  69. package/templates/.agents/dashboard/packages/ui/package.json +1 -1
  70. package/templates/.agents/dashboard/tests/e2e/package.json +1 -1
  71. package/templates/.agents/dashboard/tests/e2e/qualify-top-five-trace.mjs +53 -0
  72. package/templates/.agents/dashboard/tests/e2e/verify-top-five-served.mjs +78 -0
  73. package/templates/.agents/design/.zaip-managed.json +14 -6
  74. package/templates/.agents/design/apps/catalog/dist/assets/index-BGxXxXTo.js +72 -0
  75. package/templates/.agents/design/apps/catalog/dist/index.html +1 -1
  76. package/templates/.agents/design/apps/catalog/package.json +1 -1
  77. package/templates/.agents/design/apps/catalog/src/components/TopEntitiesSpecimen.tsx +45 -0
  78. package/templates/.agents/design/apps/catalog/src/pages/ComponentsPage.tsx +3 -1
  79. package/templates/.agents/design/apps/catalog/src/stories/Components.stories.tsx +2 -0
  80. package/templates/.agents/design/packages/local-runtime/package.json +1 -1
  81. package/templates/.agents/requirements/autonomous-assurance.md +1 -1
  82. package/templates/.agents/requirements/cloud-hostinger-autonomy.md +1 -1
  83. package/templates/.agents/requirements/comparative-audit.md +1 -1
  84. package/templates/.agents/requirements/context-engine.md +1 -1
  85. package/templates/.agents/requirements/cost-observability.md +1 -1
  86. package/templates/.agents/requirements/dashboard-launch.md +1 -1
  87. package/templates/.agents/requirements/data-export.md +1 -1
  88. package/templates/.agents/requirements/design-system.md +1 -1
  89. package/templates/.agents/requirements/execution-engine.md +1 -1
  90. package/templates/.agents/requirements/kanban-dashboard.md +1 -1
  91. package/templates/.agents/requirements/model-orchestration.md +1 -1
  92. package/templates/.agents/requirements/public-distribution.md +1 -1
  93. package/templates/.agents/requirements/software-architecture.md +1 -1
  94. package/templates/.agents/requirements/strategic-improvements.md +1 -1
  95. package/templates/.agents/requirements/work-lifecycle.md +1 -1
  96. package/templates/.agents/requirements/zaip-strategic-95.md +1 -1
  97. package/templates/.agents/runtime/VERSION +1 -1
  98. package/templates/.agents/runtime/bin/zaip.mjs +118 -56
  99. package/templates/.agents/runtime/checksums.sha256 +6 -6
  100. package/templates/.agents/runtime/manifest.json +1 -1
  101. package/templates/.agents/runtime/pnpm-lock.sha256 +1 -1
  102. package/templates/.agents/runtime/provenance.json +5 -5
  103. package/templates/.agents/runtime/sbom.cdx.json +1 -1
  104. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract-cli.test.mjs +53 -0
  105. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract.test.mjs +1 -32
  106. package/templates/.agents/zaip-aios/VERSION +1 -1
  107. package/templates/.agents/zaip-aios/guides/10-seguranca.md +2 -2
  108. package/templates/template-manifest.json +149 -97
  109. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-BqeOEZW5.js +0 -2
@@ -3,6 +3,7 @@ import { createHash } from "node:crypto";
3
3
  import { readdir, stat } from "node:fs/promises";
4
4
  import { join, resolve } from "node:path";
5
5
  import process from "node:process";
6
+ import { dashboardReleaseFrozen, inspectBuildFingerprint } from "./dashboard-build-fingerprint.mjs";
6
7
  import { formatLauncherError } from "./start-dashboard-logging.mjs";
7
8
  import {
8
9
  dashboardBuildTargets,
@@ -55,7 +56,7 @@ export async function runSqliteBuild(target) {
55
56
  const frontend = target === "frontend";
56
57
  const command = process.execPath;
57
58
  const args = frontend
58
- ? [resolve(workspaceRoot, "node_modules/vite/bin/vite.js"), "build"]
59
+ ? [resolve(packageRoot, "scripts/build-frontend.mjs")]
59
60
  : [
60
61
  resolve(
61
62
  workspaceRoot,
@@ -110,6 +111,7 @@ export async function refreshDashboardBuildTargets({
110
111
  forceRebuild = process.env.ZAIP_DASHBOARD_FORCE_REBUILD === "1",
111
112
  inspectTarget = inspectDashboardBuildTarget,
112
113
  runBuild = runSqliteBuild,
114
+ frozen = undefined,
113
115
  onProgress = () => {},
114
116
  } = {}) {
115
117
  const builtTargets = [];
@@ -121,10 +123,11 @@ export async function refreshDashboardBuildTargets({
121
123
  "Conferindo somente as dependências que geram este artefato.",
122
124
  );
123
125
  const state = await inspectTarget(target);
124
- const needsBuild =
125
- forceRebuild ||
126
- state.missingArtifacts.length > 0 ||
127
- state.artifactsModifiedAt < state.sourcesModifiedAt;
126
+ const contentFresh =
127
+ inspectTarget === inspectDashboardBuildTarget
128
+ ? await inspectBuildFingerprint(name, target)
129
+ : state.artifactsModifiedAt >= state.sourcesModifiedAt;
130
+ const needsBuild = forceRebuild || state.missingArtifacts.length > 0 || !contentFresh;
128
131
  if (!needsBuild) {
129
132
  buildProgress(
130
133
  onProgress,
@@ -134,6 +137,10 @@ export async function refreshDashboardBuildTargets({
134
137
  );
135
138
  continue;
136
139
  }
140
+ if (frozen ?? (await dashboardReleaseFrozen()))
141
+ throw new Error(
142
+ `Dashboard ${name} needs an explicit build, but the release is frozen. Reopen the release before changing candidate artifacts.`,
143
+ );
137
144
  const reason = forceRebuild
138
145
  ? "A atualização foi solicitada explicitamente."
139
146
  : state.missingArtifacts.length > 0
@@ -36,6 +36,7 @@ export const maxPortHistory = 50;
36
36
  export const dashboardBuildTargets = {
37
37
  frontend: {
38
38
  artifacts: [resolve(frontendRoot, "index.html")],
39
+ outputRoots: [frontendRoot],
39
40
  sourceRoots: [
40
41
  resolve(workspaceRoot, ".agents/dashboard/apps/frontend/src"),
41
42
  resolve(workspaceRoot, ".agents/dashboard/apps/frontend/public"),
@@ -54,6 +55,11 @@ export const dashboardBuildTargets = {
54
55
  resolve(workspaceRoot, "tsconfig.base.json"),
55
56
  resolve(workspaceRoot, "pnpm-lock.yaml"),
56
57
  resolve(workspaceRoot, "README.md"),
58
+ resolve(workspaceRoot, "README-ENG.md"),
59
+ resolve(workspaceRoot, ".agents/zaip-aios/guides"),
60
+ resolve(packageRoot, "scripts/build-frontend.mjs"),
61
+ resolve(packageRoot, "dashboard-build-fingerprint.mjs"),
62
+ resolve(packageRoot, "start-dashboard-paths.mjs"),
57
63
  ],
58
64
  excludedSourcePaths: ["/server/"],
59
65
  },
@@ -67,6 +73,8 @@ export const dashboardBuildTargets = {
67
73
  sourceRoots: [
68
74
  resolve(packageRoot, "src"),
69
75
  resolve(packageRoot, "scripts"),
76
+ resolve(packageRoot, "dashboard-build-fingerprint.mjs"),
77
+ resolve(packageRoot, "start-dashboard-paths.mjs"),
70
78
  resolve(packageRoot, "package.json"),
71
79
  resolve(packageRoot, "tsconfig.json"),
72
80
  resolve(workspaceRoot, ".agents/dashboard/modules/operations/src"),
@@ -79,7 +79,6 @@ describe("dashboard executable session", () => {
79
79
  expect(source).toContain("const previousSessions = await previousDashboardSessions();");
80
80
  expect(source).toContain("await stopOwnedDashboard(previous);");
81
81
  expect(source).not.toContain("const reusable = await findReusableDashboardSession({");
82
- expect(source).toContain("const previousSessions = await previousDashboardSessions();");
83
82
  const excludedPorts = source.slice(
84
83
  source.indexOf("const excludedPorts = new Set(["),
85
84
  source.indexOf("const serverPath = await assertRuntimeReady();"),
@@ -198,6 +197,7 @@ describe("dashboard executable session", () => {
198
197
  const progress = [];
199
198
  const result = await refreshDashboardBuildTargets({
200
199
  targets,
200
+ frozen: false,
201
201
  forceRebuild,
202
202
  inspectTarget: async (target) => states[target.artifacts[0]],
203
203
  runBuild: async (target) => calls.push(target),
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zaip-ai/dashboard-ui",
3
- "version": "5.0.0",
3
+ "version": "5.2.0",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zaip-ai/dashboard-e2e",
3
- "version": "5.0.0",
3
+ "version": "5.2.0",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "scripts": {
@@ -0,0 +1,53 @@
1
+ import assert from "node:assert/strict";
2
+ import { spawnSync } from "node:child_process";
3
+ import { existsSync } from "node:fs";
4
+ import { dirname, join, resolve } from "node:path";
5
+
6
+ const root = resolve(import.meta.dirname, "../../../..");
7
+ assert.equal(resolve(process.cwd()), root);
8
+ const mode = process.argv[2];
9
+ assert.ok(["test", "check"].includes(mode));
10
+ function run(args) {
11
+ const result = spawnSync(process.execPath, args, {
12
+ cwd: root,
13
+ windowsHide: true,
14
+ encoding: "utf8",
15
+ timeout: 240_000,
16
+ maxBuffer: 8 * 1024 * 1024,
17
+ env: { ...process.env, CI: "true" },
18
+ });
19
+ process.stdout.write(result.stdout ?? "");
20
+ process.stderr.write(result.stderr ?? "");
21
+ assert.equal(result.status, 0, result.error?.message);
22
+ }
23
+ if (!existsSync(join(root, "node_modules/.modules.yaml"))) {
24
+ const branch = spawnSync("git", ["symbolic-ref", "-q", "HEAD"], {
25
+ cwd: root,
26
+ windowsHide: true,
27
+ encoding: "utf8",
28
+ timeout: 10000,
29
+ });
30
+ assert.equal(branch.status, 1, "Only prepare dependencies in detached candidate");
31
+ const manager = join(dirname(process.execPath), "node_modules/corepack/dist/pnpm.js");
32
+ assert.ok(existsSync(manager));
33
+ run([manager, "install", "--offline", "--frozen-lockfile", "--ignore-scripts"]);
34
+ }
35
+ if (mode === "test") {
36
+ run([
37
+ "node_modules/vitest/vitest.mjs",
38
+ "run",
39
+ "--maxWorkers=1",
40
+ ".agents/dashboard/modules/operations/src/react/OperationsOverviewTopPanel.navigation.test.tsx",
41
+ ".agents/dashboard/modules/operations/src/react/OperationsOverview.test.ts",
42
+ ".agents/dashboard/modules/operations/src/react/OperationsOverview.macro-metrics.test.ts",
43
+ ".agents/dashboard/apps/frontend/src/use-app-trace-documents.navigation.test.tsx",
44
+ ".agents/dashboard/apps/frontend/src/operations-period-render.test.ts",
45
+ ]);
46
+ } else {
47
+ for (const project of [
48
+ ".agents/dashboard/modules/operations/tsconfig.json",
49
+ ".agents/dashboard/apps/frontend/tsconfig.json",
50
+ ".agents/design/apps/catalog/tsconfig.json",
51
+ ])
52
+ run(["node_modules/typescript/bin/tsc", "--noEmit", "--project", project]);
53
+ }
@@ -0,0 +1,78 @@
1
+ import assert from "node:assert/strict";
2
+ import { mkdir, writeFile } from "node:fs/promises";
3
+ import { chromium, expect } from "@playwright/test";
4
+
5
+ const baseUrl = process.env.ZAIP_TOP_FIVE_URL ?? "http://127.0.0.1:4417";
6
+ assert.equal(new URL(baseUrl).hostname, "127.0.0.1", "Local dashboard only");
7
+ const output = ".local/top-five-served";
8
+ await mkdir(output, { recursive: true });
9
+ const browser = await chromium.launch({ headless: true });
10
+ try {
11
+ const page = await browser.newPage({ viewport: { width: 1440, height: 1000 } });
12
+ page.setDefaultTimeout(60_000);
13
+ const errors = [];
14
+ const responses = [];
15
+ page.on("pageerror", (error) => errors.push(error.message));
16
+ page.on("response", (response) => {
17
+ if (response.url().includes("/api/v2/operations") || response.url().includes("/trace"))
18
+ responses.push({ path: new URL(response.url()).pathname, status: response.status() });
19
+ });
20
+ await page.goto(baseUrl, { waitUntil: "domcontentloaded" });
21
+ await page.getByRole("heading", { name: "Top 5 tarefas", exact: true }).waitFor();
22
+ const bundles = await page
23
+ .locator('script[src],link[rel="modulepreload"]')
24
+ .evaluateAll((nodes) =>
25
+ nodes.map((node) => node.getAttribute("src") ?? node.getAttribute("href")),
26
+ );
27
+ const cases = [];
28
+ for (const [kind, buttonName, heading, index] of [
29
+ ["spec", /^SPECs/, "Top 5 SPECs", 0],
30
+ ["prd", /^PRDs/, "Top 5 PRDs", 0],
31
+ ["task", /^Tarefas/, "Top 5 tarefas", 0],
32
+ ["spec", /^SPECs/, "Top 5 SPECs", 1],
33
+ ]) {
34
+ await page.getByRole("button", { name: buttonName }).first().click();
35
+ const panel = page
36
+ .locator("article")
37
+ .filter({ has: page.getByRole("heading", { name: heading, exact: true }) });
38
+ await panel.waitFor();
39
+ const bar = panel.locator(".operations-run-bar").nth(index);
40
+ await expect(bar).toBeEnabled();
41
+ const accessibleName = await bar.getAttribute("aria-label");
42
+ const title = (await bar.getAttribute("title")).replace(/: [^:]+$/, "");
43
+ if (index === 1) {
44
+ await bar.focus();
45
+ await bar.press("Enter");
46
+ } else await bar.click();
47
+ const dialog = page.getByRole("dialog").last();
48
+ await dialog.waitFor();
49
+ await expect(dialog).toContainText(title);
50
+ const text = await dialog.innerText();
51
+ const id = text.match(new RegExp(`\\b${kind.toUpperCase()}-[A-Z0-9-]+`))?.[0];
52
+ assert.ok(id, `Selected ${kind} identity is visible`);
53
+ await page.screenshot({ path: `${output}/${kind}-${index}.png` });
54
+ cases.push({ kind, index, title, id, accessibleName, observedAt: new Date().toISOString() });
55
+ await dialog.getByRole("button", { name: "Fechar", exact: true }).click();
56
+ await expect(dialog).not.toBeVisible();
57
+ }
58
+ assert.deepEqual(errors, []);
59
+ assert.equal(
60
+ responses.some((response) => response.status >= 400),
61
+ false,
62
+ );
63
+ const report = {
64
+ result: "passed",
65
+ baseUrl,
66
+ viewport: "1440x1000",
67
+ browser: browser.version(),
68
+ candidate: process.argv[2] ?? null,
69
+ bundles,
70
+ cases,
71
+ responses,
72
+ errors,
73
+ };
74
+ await writeFile(`${output}/report.json`, JSON.stringify(report, null, 2));
75
+ console.log(JSON.stringify(report, null, 2));
76
+ } finally {
77
+ await browser.close();
78
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "5.0.0",
3
+ "version": "5.2.0",
4
4
  "files": [
5
5
  {
6
6
  "path": "DESIGN.md",
@@ -26,6 +26,10 @@
26
26
  "path": "apps/catalog/dist/assets/index-32GZO95T.js",
27
27
  "sha256": "12695d7255f03bf97d35c63efcff5b1ed52319ab36cbeacbf32de815a85cb03a"
28
28
  },
29
+ {
30
+ "path": "apps/catalog/dist/assets/index-BGxXxXTo.js",
31
+ "sha256": "e6b716d44fd773a3735d97d3bf3fd1959b2241696ff699e684ffd9889f941663"
32
+ },
29
33
  {
30
34
  "path": "apps/catalog/dist/assets/index-BP8IxOxt.js",
31
35
  "sha256": "972731afbaa1a1de2666477d46df0f7af55bfe698cb74bae919bac2718e1fbc8"
@@ -60,7 +64,7 @@
60
64
  },
61
65
  {
62
66
  "path": "apps/catalog/dist/index.html",
63
- "sha256": "9692409f65f5eff07c696c8cbf636266846c25d5173e3730f0a5aa152be76666"
67
+ "sha256": "4b3d44098eabcf0c06da564cefab001010523b9f5152d7d647caa6112224f432"
64
68
  },
65
69
  {
66
70
  "path": "apps/catalog/dist/logo_novo_azul.png",
@@ -276,7 +280,7 @@
276
280
  },
277
281
  {
278
282
  "path": "apps/catalog/package.json",
279
- "sha256": "dcd0c6a84e8c1cdc34fafca8ce9089ea55db196d82ac8ef9e8bb9234168dd3c2"
283
+ "sha256": "95d8f0cec831f1dd3fb8194385059f50dce761b24f08615dc4b98f89aab9e418"
280
284
  },
281
285
  {
282
286
  "path": "apps/catalog/public/logo_novo_azul.png",
@@ -322,6 +326,10 @@
322
326
  "path": "apps/catalog/src/components/StackVersionFieldSpecimen.tsx",
323
327
  "sha256": "b33c5f2d78c34f8b2484be09d50244b8d67f1ce38d958c06306ecd742895284b"
324
328
  },
329
+ {
330
+ "path": "apps/catalog/src/components/TopEntitiesSpecimen.tsx",
331
+ "sha256": "2c3855f3d7d7f2c8570d7dc4ebf457b1d83dbeacc991dc4d8a4fc010155dc6c5"
332
+ },
325
333
  {
326
334
  "path": "apps/catalog/src/components/WorkspaceStatusSpecimen.tsx",
327
335
  "sha256": "6275e010e85452df87079176f79f30e6778ab72d1c463541bf19ac5ec72efb76"
@@ -344,7 +352,7 @@
344
352
  },
345
353
  {
346
354
  "path": "apps/catalog/src/pages/ComponentsPage.tsx",
347
- "sha256": "7ac73f7f9f02035b90e9d179706c9beab0f836afb9002d1516d05d09d4f8b8c0"
355
+ "sha256": "73a60ec9c86e94ed1b8ebe9064d65e4bb6c20551a2f652ce639b35642f81b0dc"
348
356
  },
349
357
  {
350
358
  "path": "apps/catalog/src/pages/DesignSystemPage.tsx",
@@ -360,7 +368,7 @@
360
368
  },
361
369
  {
362
370
  "path": "apps/catalog/src/stories/Components.stories.tsx",
363
- "sha256": "bc3044d7c0826656dd49d81f4128a8c2a5c271192f31ec7428445923676af832"
371
+ "sha256": "2a854431eb13a393de6d9475bf3308db20f7ccbdcb84d3983694cfe09b962ab7"
364
372
  },
365
373
  {
366
374
  "path": "apps/catalog/src/stories/DashboardFilters.stories.tsx",
@@ -408,7 +416,7 @@
408
416
  },
409
417
  {
410
418
  "path": "packages/local-runtime/package.json",
411
- "sha256": "74dea06fa11afb30713fd1c286bc38833fe60ab782d5f9ed83ff380d9c032606"
419
+ "sha256": "9d3e41b71ec10b176050916e7a0a5bff74bc18832fb557af6b00da426ba65dd3"
412
420
  },
413
421
  {
414
422
  "path": "packages/local-runtime/runtime.mjs",