@tempo-ai/mcp 0.0.108-staging.2 → 0.0.108
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.
- package/dist/bin.js +1 -1
- package/dist/{call-Y6OFNGWK.js → call-VWBUQAPD.js} +2 -2
- package/dist/{chunk-ZREHCLUJ.js → chunk-TLB5CTFV.js} +4 -4
- package/dist/index.js +1 -1
- package/dist/{serve-PVYMDC76.js → serve-C7D3CKVT.js} +16 -21
- package/dist/{serve-PVYMDC76.js.map → serve-C7D3CKVT.js.map} +1 -1
- package/package.json +1 -1
- /package/dist/{call-Y6OFNGWK.js.map → call-VWBUQAPD.js.map} +0 -0
- /package/dist/{chunk-ZREHCLUJ.js.map → chunk-TLB5CTFV.js.map} +0 -0
package/dist/bin.js
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
9
9
|
import { InMemoryTransport } from "@modelcontextprotocol/sdk/inMemory.js";
|
|
10
10
|
async function connectAggregate(options) {
|
|
11
|
-
const { createTempoAggregate } = await import("./serve-
|
|
11
|
+
const { createTempoAggregate } = await import("./serve-C7D3CKVT.js");
|
|
12
12
|
const handle = await createTempoAggregate(options);
|
|
13
13
|
const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
|
|
14
14
|
const client = new Client({ name: "tempo-mcp-cli", version: "0" });
|
|
@@ -127,4 +127,4 @@ export {
|
|
|
127
127
|
runCall,
|
|
128
128
|
runTools
|
|
129
129
|
};
|
|
130
|
-
//# sourceMappingURL=call-
|
|
130
|
+
//# sourceMappingURL=call-VWBUQAPD.js.map
|
|
@@ -157,7 +157,7 @@ async function run(argv) {
|
|
|
157
157
|
process.stderr.write(USAGE);
|
|
158
158
|
return 1;
|
|
159
159
|
}
|
|
160
|
-
const { runServe } = await import("./serve-
|
|
160
|
+
const { runServe } = await import("./serve-C7D3CKVT.js");
|
|
161
161
|
return await runServe(options);
|
|
162
162
|
}
|
|
163
163
|
switch (subcommand) {
|
|
@@ -172,11 +172,11 @@ async function run(argv) {
|
|
|
172
172
|
return await runToken(rest);
|
|
173
173
|
}
|
|
174
174
|
case "tools": {
|
|
175
|
-
const { runTools } = await import("./call-
|
|
175
|
+
const { runTools } = await import("./call-VWBUQAPD.js");
|
|
176
176
|
return await runTools(rest);
|
|
177
177
|
}
|
|
178
178
|
case "call": {
|
|
179
|
-
const { runCall } = await import("./call-
|
|
179
|
+
const { runCall } = await import("./call-VWBUQAPD.js");
|
|
180
180
|
return await runCall(rest);
|
|
181
181
|
}
|
|
182
182
|
default:
|
|
@@ -195,4 +195,4 @@ async function run(argv) {
|
|
|
195
195
|
export {
|
|
196
196
|
run
|
|
197
197
|
};
|
|
198
|
-
//# sourceMappingURL=chunk-
|
|
198
|
+
//# sourceMappingURL=chunk-TLB5CTFV.js.map
|
package/dist/index.js
CHANGED
|
@@ -48572,6 +48572,8 @@ on:
|
|
|
48572
48572
|
|
|
48573
48573
|
permissions:
|
|
48574
48574
|
contents: read
|
|
48575
|
+
# Compatibility with older CLIs during rollout; the current CLI publishes
|
|
48576
|
+
# all statuses through the Tempo GitHub App instead of this token.
|
|
48575
48577
|
statuses: write
|
|
48576
48578
|
pull-requests: write
|
|
48577
48579
|
# GitHub OIDC is the only credential Tempo accepts. No secret is stored.
|
|
@@ -48649,14 +48651,6 @@ jobs:
|
|
|
48649
48651
|
# optimization, so a registry hiccup must not fail the run.
|
|
48650
48652
|
- run: npx --yes @tempo-ai/visual-review@latest claim || echo "::warning::capture claim announcement unavailable; capture claims after setup"
|
|
48651
48653
|
|
|
48652
|
-
- if: github.event_name == 'pull_request'
|
|
48653
|
-
run: |
|
|
48654
|
-
gh api "repos/\${{ github.repository }}/statuses/\${{ github.event.pull_request.head.sha }}" \\
|
|
48655
|
-
-f state=pending -f context=visual-review \\
|
|
48656
|
-
-f "description=capturing storyboards\u2026"
|
|
48657
|
-
env:
|
|
48658
|
-
GH_TOKEN: \${{ github.token }}
|
|
48659
|
-
|
|
48660
48654
|
- uses: pnpm/action-setup@v4
|
|
48661
48655
|
- uses: actions/setup-node@v4
|
|
48662
48656
|
with:
|
|
@@ -48695,16 +48689,13 @@ jobs:
|
|
|
48695
48689
|
run: npx --yes @tempo-ai/visual-review@latest claim --release || echo "::warning::capture claim release unavailable; the lease expires on its own"
|
|
48696
48690
|
|
|
48697
48691
|
- if: failure() && github.event_name == 'pull_request'
|
|
48698
|
-
run:
|
|
48699
|
-
gh api "repos/\${{ github.repository }}/statuses/\${{ github.event.pull_request.head.sha }}" \\
|
|
48700
|
-
-f state=failure -f context=visual-review \\
|
|
48701
|
-
-f "description=capture failed \u2014 see workflow logs"
|
|
48692
|
+
run: npx --yes @tempo-ai/visual-review@latest report --fallback-failure --sha \${{ github.event.pull_request.head.sha }}
|
|
48702
48693
|
env:
|
|
48703
48694
|
GH_TOKEN: \${{ github.token }}
|
|
48704
48695
|
|
|
48705
|
-
# Polls the run until Tempo has compared it, then posts the
|
|
48706
|
-
#
|
|
48707
|
-
#
|
|
48696
|
+
# Polls the run until Tempo has compared it, then posts the sticky PR
|
|
48697
|
+
# comment. Tempo's GitHub App owns every status, including declarations,
|
|
48698
|
+
# failures, and portal approvals \u2014 no CI re-run needed for an approval.
|
|
48708
48699
|
report:
|
|
48709
48700
|
needs: capture
|
|
48710
48701
|
if: github.event_name == 'pull_request'
|
|
@@ -48874,6 +48865,9 @@ ${hostDirComment(tempoDir)}${tempoDir === "." ? "" : ` - run: cd ${tempoDir
|
|
|
48874
48865
|
}
|
|
48875
48866
|
function analyzeExistingWorkflow(workflow, options) {
|
|
48876
48867
|
const body = workflow.split("\n").filter((line) => !/^\s*#/.test(line)).join("\n");
|
|
48868
|
+
const hasClaimStart = /@tempo-ai\/visual-review@[^\s"']+[ \t]+claim(?=[ \t]*(?:$|[|&;#'"]))/m.test(
|
|
48869
|
+
body.replace(/\\\r?\n[ \t]*/g, " ")
|
|
48870
|
+
);
|
|
48877
48871
|
const drift = [];
|
|
48878
48872
|
const push = (item) => drift.push(item);
|
|
48879
48873
|
if (!/id-token:\s*write/.test(body)) {
|
|
@@ -48892,7 +48886,7 @@ function analyzeExistingWorkflow(workflow, options) {
|
|
|
48892
48886
|
push({
|
|
48893
48887
|
code: "missing_permissions",
|
|
48894
48888
|
message: `The workflow does not grant ${missingPermissions.join(", ")}.`,
|
|
48895
|
-
fix: "Under `permissions:` grant `contents: read` (checkout), `statuses: write` (
|
|
48889
|
+
fix: "Under `permissions:` grant `contents: read` (checkout), `statuses: write` (compatibility with older CLI releases) and `pull-requests: write` (the sticky report comment). Current releases publish statuses through the Tempo GitHub App."
|
|
48896
48890
|
});
|
|
48897
48891
|
}
|
|
48898
48892
|
if (!workflowHasPullRequestTrigger(body)) {
|
|
@@ -48935,7 +48929,7 @@ function analyzeExistingWorkflow(workflow, options) {
|
|
|
48935
48929
|
fix: "Add `npx --yes @tempo-ai/visual-review@latest capture --parallel 2` (with `TEMPO_DEVSERVER_PROTECTED_ROOTS: ${{ github.workspace }}`) after the install and browser steps \u2014 without it nothing is captured or compared."
|
|
48936
48930
|
});
|
|
48937
48931
|
}
|
|
48938
|
-
if (
|
|
48932
|
+
if (!hasClaimStart) {
|
|
48939
48933
|
push({
|
|
48940
48934
|
code: "missing_claim_step",
|
|
48941
48935
|
message: "No `claim` step runs before dependency setup.",
|
|
@@ -48964,11 +48958,12 @@ function analyzeExistingWorkflow(workflow, options) {
|
|
|
48964
48958
|
fix: "Gate capture on `!contains(github.event.pull_request.body, '<!-- tempo-no-visual-change -->')` and add the `no-visual-change` job that posts success."
|
|
48965
48959
|
});
|
|
48966
48960
|
}
|
|
48967
|
-
|
|
48961
|
+
const hasLegacyPendingStatus = /state=pending/.test(body) && /context=visual-review/.test(body);
|
|
48962
|
+
if (!hasClaimStart && !hasLegacyPendingStatus) {
|
|
48968
48963
|
push({
|
|
48969
48964
|
code: "missing_pending_status",
|
|
48970
48965
|
message: "The workflow never posts the `visual-review` status as pending.",
|
|
48971
|
-
fix: "
|
|
48966
|
+
fix: "Add `npx --yes @tempo-ai/visual-review@latest claim` after checkout and before dependency setup; it posts pending on the PR head through the Tempo GitHub App, so every visual-review status has the same publisher."
|
|
48972
48967
|
});
|
|
48973
48968
|
}
|
|
48974
48969
|
return drift;
|
|
@@ -51339,7 +51334,7 @@ function buildBackends(runtime, toolsets, workspace) {
|
|
|
51339
51334
|
}
|
|
51340
51335
|
|
|
51341
51336
|
// src/version.ts
|
|
51342
|
-
var CLI_VERSION = "0.0.108
|
|
51337
|
+
var CLI_VERSION = "0.0.108";
|
|
51343
51338
|
|
|
51344
51339
|
// src/canvas-hooks.ts
|
|
51345
51340
|
var import_pngjs4 = __toESM(require_png(), 1);
|
|
@@ -52276,4 +52271,4 @@ export {
|
|
|
52276
52271
|
runServe,
|
|
52277
52272
|
scopeParamsFor
|
|
52278
52273
|
};
|
|
52279
|
-
//# sourceMappingURL=serve-
|
|
52274
|
+
//# sourceMappingURL=serve-C7D3CKVT.js.map
|