@taiga-ai/mcp-server 0.36.0-dev.920 → 0.36.0-dev.921
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/index.js +22 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -26346,8 +26346,19 @@ function isFixableFinding(finding) {
|
|
|
26346
26346
|
return typeof finding.baseMove === "boolean" ? finding.baseMove : baseImageMoveRemoves(finding.data);
|
|
26347
26347
|
}
|
|
26348
26348
|
if (finding.kind === "vulnerable_dependency" && isMaliciousPackageFinding(finding)) return true;
|
|
26349
|
+
if (isPinBlocked(finding)) return false;
|
|
26349
26350
|
return isCodeRemediationKind(finding.kind) || !!finding.recommendedVersion;
|
|
26350
26351
|
}
|
|
26352
|
+
/**
|
|
26353
|
+
* Whether a Fix cannot work: another package's pin caps this finding's fix, and
|
|
26354
|
+
* the last fix ended still vulnerable against it (`opentelemetry-api` under
|
|
26355
|
+
* `aws-opentelemetry-distro`'s `==1.44.0`). Another would spend a run to meet
|
|
26356
|
+
* it again. Blocked with no such fix, a person's Fix still runs (AC-17): they
|
|
26357
|
+
* may know a way round. The gate lifts the hold when the pin moves.
|
|
26358
|
+
*/
|
|
26359
|
+
function isPinBlocked(finding) {
|
|
26360
|
+
return finding.autoFixHeld?.reason === "blocked_by_dependency" && finding.autoFixHeld.fixFailed === true;
|
|
26361
|
+
}
|
|
26351
26362
|
function baseImageMoveRemoves(data) {
|
|
26352
26363
|
const baseImage = typeof data === "object" && data !== null ? data.baseImage : null;
|
|
26353
26364
|
const bases = typeof baseImage === "object" && baseImage !== null ? baseImage.bases : null;
|
|
@@ -28781,7 +28792,7 @@ function withFixability(row) {
|
|
|
28781
28792
|
return {
|
|
28782
28793
|
...row,
|
|
28783
28794
|
fixable: false,
|
|
28784
|
-
fixNote: reason === "not_shipped" ? "No longer applies: the package is only a build for platforms the repository does not deploy to. Nothing to do." : reason === "license_approved" ? "No longer applies: its license is on the organization's approved list. Nothing to do." : reason === "license_undecided" ? "No longer applies: its license can no longer be judged against the list (some of what it can stand for is approved). Nothing to do." : reason === "superseded" ? "Replaced by the repository's finding of its license, which lists every package under it. Nothing to do here." : "Resolved: the sweep no longer reports it. Nothing to do."
|
|
28795
|
+
fixNote: reason === "not_shipped" ? "No longer applies: the package is only a build for platforms the repository does not deploy to. Nothing to do." : reason === "license_approved" ? "No longer applies: its license is on the organization's approved list. Nothing to do." : reason === "license_undecided" ? "No longer applies: its license can no longer be judged against the list (some of what it can stand for is approved). Nothing to do." : reason === "superseded" ? "Replaced by the repository's finding of its license, which lists every package under it. Nothing to do here." : reason === "license_not_judged" ? "No longer applies: an OS package's license is judged only when it restricts use. Its packages keep it. Nothing to do." : "Resolved: the sweep no longer reports it. Nothing to do."
|
|
28785
28796
|
};
|
|
28786
28797
|
}
|
|
28787
28798
|
if (row["kind"] === "license_violation" && row["replaceable"] === true) return {
|
|
@@ -28820,6 +28831,16 @@ function withFixability(row) {
|
|
|
28820
28831
|
fixable: true,
|
|
28821
28832
|
fixNote: "A malicious package: taiga_fix_finding removes it (or replaces it), with every advisory on that version."
|
|
28822
28833
|
} : row;
|
|
28834
|
+
const held = row["autoFixHeld"];
|
|
28835
|
+
const inBase = row["baseImageFix"] != null || typeof row["baseMove"] === "boolean";
|
|
28836
|
+
if (row["status"] === "open" && !inBase && held && isPinBlocked({ autoFixHeld: held })) {
|
|
28837
|
+
const what = held.blockingPackage ?? "another dependency";
|
|
28838
|
+
return {
|
|
28839
|
+
...row,
|
|
28840
|
+
fixable: false,
|
|
28841
|
+
fixNote: `Waiting on ${what}${held.blockingConstraint ? `, which requires ${held.blockingConstraint}` : ""}. taiga_fix_finding refuses it until that moves.`
|
|
28842
|
+
};
|
|
28843
|
+
}
|
|
28823
28844
|
const base = row["baseImageFix"];
|
|
28824
28845
|
if (base && base.way !== "move" && isAgentRemediable({ remediableBy: remediableByOf(row) })) {
|
|
28825
28846
|
if (base.way === "upgrade") return row["status"] === "open" ? {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ai/mcp-server",
|
|
3
|
-
"version": "0.36.0-dev.
|
|
3
|
+
"version": "0.36.0-dev.921",
|
|
4
4
|
"description": "Taiga for AI coding assistants: read products, policies, initiatives and runs, and operate the line, over MCP",
|
|
5
5
|
"mcpName": "ga.tai/mcp-server",
|
|
6
6
|
"license": "UNLICENSED",
|