opencode-sonarqube 0.2.9 → 0.2.10
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 +42 -13
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -20099,15 +20099,47 @@ try {
|
|
|
20099
20099
|
appendFileSync4("/tmp/sonarqube-plugin-debug.log", `${new Date().toISOString()} [LOAD] Module loaded! id=${moduleLoadId} cwd=${process.cwd()} import.meta.url=${import.meta.url}
|
|
20100
20100
|
`);
|
|
20101
20101
|
} catch {}
|
|
20102
|
-
var
|
|
20103
|
-
var _lastInitializedDirectory = null;
|
|
20104
|
-
var allRegisteredDirectories = new Set;
|
|
20102
|
+
var SHARED_STATE_FILE = "/tmp/sonarqube-plugin-shared-state.json";
|
|
20105
20103
|
var globalSafeLog = (msg) => {
|
|
20106
20104
|
try {
|
|
20107
20105
|
appendFileSync4("/tmp/sonarqube-plugin-debug.log", `${new Date().toISOString()} [GLOBAL] ${msg}
|
|
20108
20106
|
`);
|
|
20109
20107
|
} catch {}
|
|
20110
20108
|
};
|
|
20109
|
+
var readSharedState = () => {
|
|
20110
|
+
try {
|
|
20111
|
+
const content = __require("fs").readFileSync(SHARED_STATE_FILE, "utf-8");
|
|
20112
|
+
return JSON.parse(content);
|
|
20113
|
+
} catch {
|
|
20114
|
+
return { sessionToDirectory: {}, registeredDirectories: [], lastUpdated: "" };
|
|
20115
|
+
}
|
|
20116
|
+
};
|
|
20117
|
+
var writeSharedState = (state) => {
|
|
20118
|
+
try {
|
|
20119
|
+
state.lastUpdated = new Date().toISOString();
|
|
20120
|
+
__require("fs").writeFileSync(SHARED_STATE_FILE, JSON.stringify(state, null, 2));
|
|
20121
|
+
} catch (e) {
|
|
20122
|
+
globalSafeLog(`Failed to write shared state: ${e}`);
|
|
20123
|
+
}
|
|
20124
|
+
};
|
|
20125
|
+
var mapSessionToDirectory = (sessionId, directory) => {
|
|
20126
|
+
const state = readSharedState();
|
|
20127
|
+
state.sessionToDirectory[sessionId] = directory;
|
|
20128
|
+
writeSharedState(state);
|
|
20129
|
+
globalSafeLog(`Mapped session ${sessionId} to ${directory}`);
|
|
20130
|
+
};
|
|
20131
|
+
var getDirectoryForSession = (sessionId) => {
|
|
20132
|
+
const state = readSharedState();
|
|
20133
|
+
return state.sessionToDirectory[sessionId];
|
|
20134
|
+
};
|
|
20135
|
+
var registerDirectory = (directory) => {
|
|
20136
|
+
const state = readSharedState();
|
|
20137
|
+
if (!state.registeredDirectories.includes(directory)) {
|
|
20138
|
+
state.registeredDirectories.push(directory);
|
|
20139
|
+
writeSharedState(state);
|
|
20140
|
+
}
|
|
20141
|
+
globalSafeLog(`Registered directory: ${directory}, total: ${state.registeredDirectories.length}`);
|
|
20142
|
+
};
|
|
20111
20143
|
var IGNORED_FILE_PATTERNS2 = [
|
|
20112
20144
|
/node_modules/,
|
|
20113
20145
|
/\.git/,
|
|
@@ -20175,9 +20207,7 @@ var SonarQubePlugin = async ({ client, directory, worktree }) => {
|
|
|
20175
20207
|
};
|
|
20176
20208
|
const effectiveDirectory = resolveValidDirectory();
|
|
20177
20209
|
safeLog(`FINAL effectiveDirectory=${effectiveDirectory}`);
|
|
20178
|
-
|
|
20179
|
-
_lastInitializedDirectory = effectiveDirectory;
|
|
20180
|
-
globalSafeLog(`Registered directory: ${effectiveDirectory}, total registered: ${allRegisteredDirectories.size}`);
|
|
20210
|
+
registerDirectory(effectiveDirectory);
|
|
20181
20211
|
try {
|
|
20182
20212
|
await client.app.log({
|
|
20183
20213
|
body: {
|
|
@@ -20345,9 +20375,7 @@ After fixing, I will re-run the analysis to verify.`;
|
|
|
20345
20375
|
if (payload?.id) {
|
|
20346
20376
|
currentSessionId = payload.id;
|
|
20347
20377
|
if (event.type === "session.created") {
|
|
20348
|
-
|
|
20349
|
-
globalSafeLog(`Session ${payload.id} mapped to directory: ${effectiveDirectory}`);
|
|
20350
|
-
globalSafeLog(`Total sessions tracked: ${sessionToDirectory.size}`);
|
|
20378
|
+
mapSessionToDirectory(payload.id, effectiveDirectory);
|
|
20351
20379
|
}
|
|
20352
20380
|
}
|
|
20353
20381
|
};
|
|
@@ -20603,10 +20631,11 @@ Git operation completed with changes. Consider running:
|
|
|
20603
20631
|
const inputAny = _input;
|
|
20604
20632
|
const sessionID = inputAny?.sessionID;
|
|
20605
20633
|
safeLog(` sessionID: "${sessionID}"`);
|
|
20606
|
-
|
|
20607
|
-
safeLog(`
|
|
20608
|
-
|
|
20609
|
-
|
|
20634
|
+
const sharedState = readSharedState();
|
|
20635
|
+
safeLog(` sharedState sessions: ${JSON.stringify(sharedState.sessionToDirectory)}`);
|
|
20636
|
+
safeLog(` sharedState directories: ${JSON.stringify(sharedState.registeredDirectories)}`);
|
|
20637
|
+
const sessionDir = sessionID ? getDirectoryForSession(sessionID) : undefined;
|
|
20638
|
+
safeLog(` sessionDir from shared state: "${sessionDir}"`);
|
|
20610
20639
|
safeLog(` effectiveDirectory (fallback): "${effectiveDirectory}"`);
|
|
20611
20640
|
const dir = sessionDir || effectiveDirectory;
|
|
20612
20641
|
safeLog(` FINAL dir used: "${dir}"`);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-sonarqube",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.10",
|
|
4
4
|
"description": "OpenCode Plugin for SonarQube integration - Enterprise-level code quality from the start",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"homepage": "https://github.com/mguttmann/opencode-sonarqube#readme",
|
|
39
39
|
"dependencies": {
|
|
40
40
|
"@opencode-ai/plugin": "^1.1.34",
|
|
41
|
-
"opencode-sonarqube": "0.2.
|
|
41
|
+
"opencode-sonarqube": "0.2.9",
|
|
42
42
|
"zod": "^3.24.0"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|